optimum-rbln 0.7.3.post2__py3-none-any.whl → 0.7.4__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.
- optimum/rbln/__init__.py +173 -35
- optimum/rbln/__version__.py +2 -2
- optimum/rbln/configuration_utils.py +816 -0
- optimum/rbln/diffusers/__init__.py +56 -0
- optimum/rbln/diffusers/configurations/__init__.py +30 -0
- optimum/rbln/diffusers/configurations/models/__init__.py +6 -0
- optimum/rbln/diffusers/configurations/models/configuration_autoencoder_kl.py +66 -0
- optimum/rbln/diffusers/configurations/models/configuration_controlnet.py +62 -0
- optimum/rbln/diffusers/configurations/models/configuration_prior_transformer.py +52 -0
- optimum/rbln/diffusers/configurations/models/configuration_transformer_sd3.py +56 -0
- optimum/rbln/diffusers/configurations/models/configuration_unet_2d_condition.py +74 -0
- optimum/rbln/diffusers/configurations/models/configuration_vq_model.py +67 -0
- optimum/rbln/diffusers/configurations/pipelines/__init__.py +30 -0
- optimum/rbln/diffusers/configurations/pipelines/configuration_controlnet.py +236 -0
- optimum/rbln/diffusers/configurations/pipelines/configuration_kandinsky2_2.py +289 -0
- optimum/rbln/diffusers/configurations/pipelines/configuration_stable_diffusion.py +118 -0
- optimum/rbln/diffusers/configurations/pipelines/configuration_stable_diffusion_3.py +143 -0
- optimum/rbln/diffusers/configurations/pipelines/configuration_stable_diffusion_xl.py +124 -0
- optimum/rbln/diffusers/modeling_diffusers.py +111 -137
- optimum/rbln/diffusers/models/autoencoders/autoencoder_kl.py +109 -128
- optimum/rbln/diffusers/models/autoencoders/vae.py +4 -6
- optimum/rbln/diffusers/models/autoencoders/vq_model.py +84 -85
- optimum/rbln/diffusers/models/controlnet.py +56 -71
- optimum/rbln/diffusers/models/transformers/prior_transformer.py +40 -77
- optimum/rbln/diffusers/models/transformers/transformer_sd3.py +44 -69
- optimum/rbln/diffusers/models/unets/unet_2d_condition.py +111 -114
- optimum/rbln/diffusers/pipelines/controlnet/multicontrolnet.py +3 -4
- optimum/rbln/diffusers/pipelines/controlnet/pipeline_controlnet.py +2 -0
- optimum/rbln/diffusers/pipelines/controlnet/pipeline_controlnet_img2img.py +2 -0
- optimum/rbln/diffusers/pipelines/controlnet/pipeline_controlnet_sd_xl.py +2 -0
- optimum/rbln/diffusers/pipelines/controlnet/pipeline_controlnet_sd_xl_img2img.py +2 -0
- optimum/rbln/diffusers/pipelines/kandinsky2_2/pipeline_kandinsky2_2.py +2 -0
- optimum/rbln/diffusers/pipelines/kandinsky2_2/pipeline_kandinsky2_2_combined.py +2 -0
- optimum/rbln/diffusers/pipelines/kandinsky2_2/pipeline_kandinsky2_2_img2img.py +2 -0
- optimum/rbln/diffusers/pipelines/kandinsky2_2/pipeline_kandinsky2_2_inpaint.py +2 -0
- optimum/rbln/diffusers/pipelines/kandinsky2_2/pipeline_kandinsky2_2_prior.py +2 -0
- optimum/rbln/diffusers/pipelines/stable_diffusion/pipeline_stable_diffusion.py +4 -1
- optimum/rbln/diffusers/pipelines/stable_diffusion/pipeline_stable_diffusion_img2img.py +2 -0
- optimum/rbln/diffusers/pipelines/stable_diffusion/pipeline_stable_diffusion_inpaint.py +2 -0
- optimum/rbln/diffusers/pipelines/stable_diffusion_3/pipeline_stable_diffusion_3.py +2 -0
- optimum/rbln/diffusers/pipelines/stable_diffusion_3/pipeline_stable_diffusion_3_img2img.py +2 -0
- optimum/rbln/diffusers/pipelines/stable_diffusion_3/pipeline_stable_diffusion_3_inpaint.py +2 -0
- optimum/rbln/diffusers/pipelines/stable_diffusion_xl/pipeline_stable_diffusion_xl.py +2 -0
- optimum/rbln/diffusers/pipelines/stable_diffusion_xl/pipeline_stable_diffusion_xl_img2img.py +2 -0
- optimum/rbln/diffusers/pipelines/stable_diffusion_xl/pipeline_stable_diffusion_xl_inpaint.py +2 -0
- optimum/rbln/modeling.py +66 -40
- optimum/rbln/modeling_base.py +111 -86
- optimum/rbln/ops/__init__.py +4 -7
- optimum/rbln/ops/attn.py +271 -205
- optimum/rbln/ops/flash_attn.py +161 -67
- optimum/rbln/ops/kv_cache_update.py +4 -40
- optimum/rbln/ops/linear.py +25 -0
- optimum/rbln/transformers/__init__.py +97 -8
- optimum/rbln/transformers/configuration_alias.py +49 -0
- optimum/rbln/transformers/configuration_generic.py +142 -0
- optimum/rbln/transformers/modeling_generic.py +193 -280
- optimum/rbln/transformers/models/__init__.py +120 -32
- optimum/rbln/transformers/models/auto/auto_factory.py +6 -6
- optimum/rbln/transformers/models/bart/__init__.py +2 -0
- optimum/rbln/transformers/models/bart/configuration_bart.py +24 -0
- optimum/rbln/transformers/models/bart/modeling_bart.py +12 -85
- optimum/rbln/transformers/models/bert/__init__.py +1 -0
- optimum/rbln/transformers/models/bert/configuration_bert.py +31 -0
- optimum/rbln/transformers/models/bert/modeling_bert.py +7 -80
- optimum/rbln/transformers/models/clip/__init__.py +6 -0
- optimum/rbln/transformers/models/clip/configuration_clip.py +79 -0
- optimum/rbln/transformers/models/clip/modeling_clip.py +72 -75
- optimum/rbln/transformers/models/decoderonly/__init__.py +11 -0
- optimum/rbln/transformers/models/decoderonly/configuration_decoderonly.py +90 -0
- optimum/rbln/transformers/models/decoderonly/decoderonly_architecture.py +197 -178
- optimum/rbln/transformers/models/decoderonly/modeling_decoderonly.py +343 -249
- optimum/rbln/transformers/models/dpt/__init__.py +1 -0
- optimum/rbln/transformers/models/dpt/configuration_dpt.py +19 -0
- optimum/rbln/transformers/models/dpt/modeling_dpt.py +3 -76
- optimum/rbln/transformers/models/exaone/__init__.py +1 -0
- optimum/rbln/transformers/models/exaone/configuration_exaone.py +19 -0
- optimum/rbln/transformers/models/gemma/__init__.py +1 -0
- optimum/rbln/transformers/models/gemma/configuration_gemma.py +19 -0
- optimum/rbln/transformers/models/gpt2/__init__.py +1 -0
- optimum/rbln/transformers/models/gpt2/configuration_gpt2.py +19 -0
- optimum/rbln/transformers/models/idefics3/__init__.py +16 -0
- optimum/rbln/transformers/models/idefics3/configuration_idefics3.py +51 -0
- optimum/rbln/transformers/models/idefics3/modeling_idefics3.py +459 -0
- optimum/rbln/transformers/models/llama/__init__.py +1 -0
- optimum/rbln/transformers/models/llama/configuration_llama.py +19 -0
- optimum/rbln/transformers/models/llava_next/__init__.py +1 -0
- optimum/rbln/transformers/models/llava_next/configuration_llava_next.py +46 -0
- optimum/rbln/transformers/models/llava_next/modeling_llava_next.py +18 -23
- optimum/rbln/transformers/models/midm/__init__.py +1 -0
- optimum/rbln/transformers/models/midm/configuration_midm.py +19 -0
- optimum/rbln/transformers/models/mistral/__init__.py +1 -0
- optimum/rbln/transformers/models/mistral/configuration_mistral.py +19 -0
- optimum/rbln/transformers/models/phi/__init__.py +1 -0
- optimum/rbln/transformers/models/phi/configuration_phi.py +19 -0
- optimum/rbln/transformers/models/qwen2/__init__.py +1 -0
- optimum/rbln/transformers/models/qwen2/configuration_qwen2.py +19 -0
- optimum/rbln/transformers/models/qwen2_5_vl/__init__.py +19 -0
- optimum/rbln/transformers/models/qwen2_5_vl/configuration_qwen2_5_vl.py +68 -0
- optimum/rbln/transformers/models/qwen2_5_vl/modeling_qwen2_5_vl.py +608 -0
- optimum/rbln/transformers/models/qwen2_5_vl/qwen2_5_vl_architecture.py +214 -0
- optimum/rbln/transformers/models/seq2seq/__init__.py +1 -0
- optimum/rbln/transformers/models/seq2seq/configuration_seq2seq2.py +66 -0
- optimum/rbln/transformers/models/seq2seq/modeling_seq2seq.py +99 -112
- optimum/rbln/transformers/models/seq2seq/seq2seq_architecture.py +12 -21
- optimum/rbln/transformers/models/t5/__init__.py +2 -0
- optimum/rbln/transformers/models/t5/configuration_t5.py +24 -0
- optimum/rbln/transformers/models/t5/modeling_t5.py +21 -356
- optimum/rbln/transformers/models/t5/t5_architecture.py +10 -5
- optimum/rbln/transformers/models/time_series_transformers/__init__.py +26 -0
- optimum/rbln/transformers/models/time_series_transformers/configuration_time_series_transformer.py +34 -0
- optimum/rbln/transformers/models/time_series_transformers/modeling_time_series_transformers.py +420 -0
- optimum/rbln/transformers/models/time_series_transformers/time_series_transformers_architecture.py +331 -0
- optimum/rbln/transformers/models/wav2vec2/__init__.py +1 -0
- optimum/rbln/transformers/models/wav2vec2/configuration_wav2vec.py +19 -0
- optimum/rbln/transformers/models/wav2vec2/modeling_wav2vec2.py +9 -72
- optimum/rbln/transformers/models/whisper/__init__.py +2 -0
- optimum/rbln/transformers/models/whisper/configuration_whisper.py +64 -0
- optimum/rbln/transformers/models/whisper/modeling_whisper.py +135 -100
- optimum/rbln/transformers/models/whisper/whisper_architecture.py +73 -40
- optimum/rbln/transformers/models/xlm_roberta/__init__.py +1 -0
- optimum/rbln/transformers/models/xlm_roberta/configuration_xlm_roberta.py +19 -0
- optimum/rbln/transformers/models/xlm_roberta/modeling_xlm_roberta.py +3 -83
- optimum/rbln/utils/hub.py +2 -2
- optimum/rbln/utils/import_utils.py +23 -6
- optimum/rbln/utils/model_utils.py +4 -4
- optimum/rbln/utils/runtime_utils.py +33 -2
- optimum/rbln/utils/submodule.py +36 -44
- {optimum_rbln-0.7.3.post2.dist-info → optimum_rbln-0.7.4.dist-info}/METADATA +6 -6
- optimum_rbln-0.7.4.dist-info/RECORD +169 -0
- optimum/rbln/modeling_config.py +0 -310
- optimum_rbln-0.7.3.post2.dist-info/RECORD +0 -122
- {optimum_rbln-0.7.3.post2.dist-info → optimum_rbln-0.7.4.dist-info}/WHEEL +0 -0
- {optimum_rbln-0.7.3.post2.dist-info → optimum_rbln-0.7.4.dist-info}/licenses/LICENSE +0 -0
@@ -12,89 +12,9 @@
|
|
12
12
|
# See the License for the specific language governing permissions and
|
13
13
|
# limitations under the License.
|
14
14
|
|
15
|
-
import inspect
|
16
|
-
from typing import TYPE_CHECKING, Optional, Union
|
17
15
|
|
18
|
-
from
|
16
|
+
from ...modeling_generic import RBLNTransformerEncoderForFeatureExtraction
|
19
17
|
|
20
|
-
from ....modeling import RBLNModel
|
21
|
-
from ....modeling_config import RBLNCompileConfig, RBLNConfig
|
22
|
-
from ....utils.logging import get_logger
|
23
18
|
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
if TYPE_CHECKING:
|
28
|
-
from transformers import AutoFeatureExtractor, AutoProcessor, AutoTokenizer
|
29
|
-
|
30
|
-
|
31
|
-
class RBLNXLMRobertaModel(RBLNModel):
|
32
|
-
@classmethod
|
33
|
-
def _get_rbln_config(
|
34
|
-
cls,
|
35
|
-
preprocessors: Optional[Union["AutoFeatureExtractor", "AutoProcessor", "AutoTokenizer"]],
|
36
|
-
model_config: Optional["PretrainedConfig"] = None,
|
37
|
-
rbln_kwargs={},
|
38
|
-
) -> RBLNConfig:
|
39
|
-
rbln_max_seq_len = rbln_kwargs.get("max_seq_len", None)
|
40
|
-
rbln_model_input_names = rbln_kwargs.get("model_input_names", None)
|
41
|
-
rbln_batch_size = rbln_kwargs.get("batch_size", None)
|
42
|
-
|
43
|
-
max_position_embeddings = getattr(model_config, "n_positions", None) or getattr(
|
44
|
-
model_config, "max_position_embeddings", None
|
45
|
-
)
|
46
|
-
|
47
|
-
if rbln_max_seq_len is None:
|
48
|
-
rbln_max_seq_len = max_position_embeddings
|
49
|
-
if rbln_max_seq_len is None:
|
50
|
-
for tokenizer in preprocessors:
|
51
|
-
if hasattr(tokenizer, "model_max_length"):
|
52
|
-
rbln_max_seq_len = tokenizer.model_max_length
|
53
|
-
break
|
54
|
-
if rbln_max_seq_len is None:
|
55
|
-
raise ValueError("`rbln_max_seq_len` should be specified!")
|
56
|
-
|
57
|
-
if max_position_embeddings is not None and rbln_max_seq_len > max_position_embeddings:
|
58
|
-
raise ValueError("`rbln_enc_max_seq_len` should be less or equal than max_position_embeddings!")
|
59
|
-
|
60
|
-
signature_params = inspect.signature(cls.get_hf_class().forward).parameters.keys()
|
61
|
-
|
62
|
-
if rbln_model_input_names is None:
|
63
|
-
for tokenizer in preprocessors:
|
64
|
-
if hasattr(tokenizer, "model_input_names"):
|
65
|
-
rbln_model_input_names = [name for name in signature_params if name in tokenizer.model_input_names]
|
66
|
-
|
67
|
-
invalid_params = set(rbln_model_input_names) - set(signature_params)
|
68
|
-
if invalid_params:
|
69
|
-
raise ValueError(f"Invalid model input names: {invalid_params}")
|
70
|
-
break
|
71
|
-
if rbln_model_input_names is None and hasattr(cls, "rbln_model_input_names"):
|
72
|
-
rbln_model_input_names = cls.rbln_model_input_names
|
73
|
-
elif rbln_model_input_names is None and hasattr(cls, "rbln_model_input_names") is False:
|
74
|
-
raise ValueError(
|
75
|
-
"Specify the model input names obtained by the tokenizer via `rbln_model_input_names`, "
|
76
|
-
f"and be sure to make the order of the inputs same as XLMRobertaModel forward() arguments like ({list(signature_params)})"
|
77
|
-
)
|
78
|
-
else:
|
79
|
-
invalid_params = set(rbln_model_input_names) - set(signature_params)
|
80
|
-
if invalid_params:
|
81
|
-
raise ValueError(f"Invalid model input names: {invalid_params}")
|
82
|
-
rbln_model_input_names = [name for name in signature_params if name in rbln_model_input_names]
|
83
|
-
|
84
|
-
if rbln_batch_size is None:
|
85
|
-
rbln_batch_size = 1
|
86
|
-
|
87
|
-
input_info = [
|
88
|
-
(model_input_name, [rbln_batch_size, rbln_max_seq_len], "int64")
|
89
|
-
for model_input_name in rbln_model_input_names
|
90
|
-
]
|
91
|
-
|
92
|
-
rbln_compile_config = RBLNCompileConfig(input_info=input_info)
|
93
|
-
|
94
|
-
rbln_config = RBLNConfig(
|
95
|
-
rbln_cls=cls.__name__,
|
96
|
-
compile_cfgs=[rbln_compile_config],
|
97
|
-
rbln_kwargs=rbln_kwargs,
|
98
|
-
)
|
99
|
-
rbln_config.model_cfg.update({"max_seq_len": rbln_max_seq_len})
|
100
|
-
return rbln_config
|
19
|
+
class RBLNXLMRobertaModel(RBLNTransformerEncoderForFeatureExtraction):
|
20
|
+
pass
|
optimum/rbln/utils/hub.py
CHANGED
@@ -63,7 +63,7 @@ def pull_compiled_model_from_hub(
|
|
63
63
|
force_download: bool,
|
64
64
|
local_files_only: bool,
|
65
65
|
) -> Path:
|
66
|
-
"""Pull model files from the
|
66
|
+
"""Pull model files from the HuggingFace Hub."""
|
67
67
|
huggingface_token = _get_huggingface_token(use_auth_token)
|
68
68
|
repo_files = list(
|
69
69
|
map(
|
@@ -119,4 +119,4 @@ def _get_huggingface_token(use_auth_token: Union[bool, str]) -> str:
|
|
119
119
|
elif use_auth_token:
|
120
120
|
return HfFolder.get_token()
|
121
121
|
else:
|
122
|
-
raise ValueError("`use_auth_token` must be provided to interact with the
|
122
|
+
raise ValueError("`use_auth_token` must be provided to interact with the HuggingFace Hub.")
|
@@ -144,10 +144,27 @@ def check_version_compats() -> None:
|
|
144
144
|
except importlib.metadata.PackageNotFoundError:
|
145
145
|
warnings.warn(f"optimum-rbln requires {compat.package_name} to be installed.", ImportWarning)
|
146
146
|
continue
|
147
|
+
# For versions 0.7.2 and above, don't show warning for rebel-compiler if base versions match
|
147
148
|
|
148
|
-
if
|
149
|
-
|
150
|
-
|
151
|
-
|
152
|
-
|
153
|
-
|
149
|
+
if compat.package_name == "rebel-compiler":
|
150
|
+
# For optimum-rbln versions 0.7.2 and above, suppress the warning if the base versions of
|
151
|
+
# optimum-rbln and rebel-compiler match (e.g., 0.7.x with 0.7.y).
|
152
|
+
if (
|
153
|
+
Version(my_version) >= Version("0.7.2")
|
154
|
+
and Version(my_version).base_version == Version(dep_version).base_version
|
155
|
+
):
|
156
|
+
continue
|
157
|
+
else:
|
158
|
+
warnings.warn(
|
159
|
+
f"Version mismatch detected: optimum-rbln v{my_version} and {compat.package_name} v{dep_version} have different base versions. "
|
160
|
+
f"For optimal performance and compatibility, please ensure both packages share the same major and minor version numbers. "
|
161
|
+
"Please refer to our SDK release notes at https://docs.rbln.ai/about_atom/release_note.html",
|
162
|
+
ImportWarning,
|
163
|
+
)
|
164
|
+
else:
|
165
|
+
if not Version(compat.min_version) <= Version(dep_version) < Version(compat.max_version):
|
166
|
+
warnings.warn(
|
167
|
+
f"optimum-rbln v{my_version} is compatible to {compat.package_name} v{compat.min_version} to v{compat.max_version}. (you are currently using v{dep_version})\n"
|
168
|
+
"Please refer to our SDK release notes at https://docs.rbln.ai/about_atom/release_note.html",
|
169
|
+
ImportWarning,
|
170
|
+
)
|
@@ -18,10 +18,10 @@ RBLN_PREFIX = "RBLN"
|
|
18
18
|
|
19
19
|
def convert_hf_to_rbln_model_name(hf_model_name: str):
|
20
20
|
"""
|
21
|
-
Convert
|
21
|
+
Convert HuggingFace model name to RBLN model name.
|
22
22
|
|
23
23
|
Args:
|
24
|
-
hf_model_name (str): The
|
24
|
+
hf_model_name (str): The HuggingFace model name.
|
25
25
|
|
26
26
|
Returns:
|
27
27
|
str: The corresponding RBLN model name.
|
@@ -31,13 +31,13 @@ def convert_hf_to_rbln_model_name(hf_model_name: str):
|
|
31
31
|
|
32
32
|
def convert_rbln_to_hf_model_name(rbln_model_name: str):
|
33
33
|
"""
|
34
|
-
Convert RBLN model name to
|
34
|
+
Convert RBLN model name to HuggingFace model name.
|
35
35
|
|
36
36
|
Args:
|
37
37
|
rbln_model_name (str): The RBLN model name.
|
38
38
|
|
39
39
|
Returns:
|
40
|
-
str: The corresponding
|
40
|
+
str: The corresponding HuggingFace model name.
|
41
41
|
"""
|
42
42
|
|
43
43
|
return rbln_model_name.removeprefix(RBLN_PREFIX)
|
@@ -45,23 +45,54 @@ class RBLNPytorchRuntime:
|
|
45
45
|
|
46
46
|
|
47
47
|
class UnavailableRuntime:
|
48
|
+
"""
|
49
|
+
A placeholder class used when model runtimes are not created.
|
50
|
+
|
51
|
+
This class is returned by RBLNBaseModel._from_compiled_models when rbln_config.create_runtimes=False.
|
52
|
+
It provides proper error messages when users attempt to use a model that was loaded without
|
53
|
+
runtime creation.
|
54
|
+
|
55
|
+
Usage:
|
56
|
+
1. When compiling models on machines without NPU hardware
|
57
|
+
2. When preparing models for later deployment
|
58
|
+
3. When only model compilation is needed, not inference
|
59
|
+
|
60
|
+
To use a model with runtimes, either:
|
61
|
+
- Load the model with from_pretrained(..., rbln_create_runtimes=True)
|
62
|
+
- Or set rbln_config={"create_runtimes": True} during loading
|
63
|
+
"""
|
64
|
+
|
48
65
|
def __call__(self, *args: Any, **kwargs: Any) -> Any:
|
66
|
+
"""Raises a RuntimeError when the model is called without runtimes."""
|
49
67
|
raise self.forward(*args, **kwargs)
|
50
68
|
|
51
69
|
def __len__(self) -> int:
|
70
|
+
"""Returns 0 since no runtimes are available."""
|
52
71
|
return 0
|
53
72
|
|
54
73
|
def __getitem__(self, idx: int) -> Any:
|
74
|
+
"""Returns self for any index, allowing iteration to work with appropriate errors."""
|
55
75
|
return self
|
56
76
|
|
57
77
|
def __iter__(self):
|
78
|
+
"""Returns an iterator with self as the only item."""
|
58
79
|
return iter([self])
|
59
80
|
|
60
81
|
def forward(self, *args: List["torch.Tensor"], **kwargs: Dict[str, "torch.Tensor"]):
|
61
|
-
|
82
|
+
"""Raises a detailed RuntimeError explaining why inference cannot be performed."""
|
83
|
+
raise RuntimeError(
|
84
|
+
"Cannot perform inference: RBLN runtime is not available.\n\n"
|
85
|
+
"This model was loaded with create_runtimes=False. To use this model for inference:\n"
|
86
|
+
"1. Load the model with runtime creation enabled:\n"
|
87
|
+
" model = RBLNModel.from_pretrained(..., rbln_create_runtimes=True)\n"
|
88
|
+
"2. Ensure your NPU hardware is properly configured (check with 'rbln-stat' command)\n"
|
89
|
+
"3. If you're on a machine without NPU hardware, you need to transfer the model files\n"
|
90
|
+
" to a compatible system with NPU support."
|
91
|
+
)
|
62
92
|
|
63
93
|
def __repr__(self) -> str:
|
64
|
-
|
94
|
+
"""Returns a detailed string representation of the UnavailableRuntime."""
|
95
|
+
return "<UnavailableRuntime: Model loaded without runtime creation (create_runtimes=False)>"
|
65
96
|
|
66
97
|
|
67
98
|
class ContextRblnConfig:
|
optimum/rbln/utils/submodule.py
CHANGED
@@ -13,10 +13,9 @@
|
|
13
13
|
# limitations under the License.
|
14
14
|
|
15
15
|
import importlib
|
16
|
-
from
|
17
|
-
from typing import TYPE_CHECKING, Any, Dict, List
|
16
|
+
from typing import TYPE_CHECKING, Any, Dict, List, Type
|
18
17
|
|
19
|
-
from ..
|
18
|
+
from ..configuration_utils import RBLNModelConfig
|
20
19
|
|
21
20
|
|
22
21
|
if TYPE_CHECKING:
|
@@ -35,37 +34,40 @@ class SubModulesMixin:
|
|
35
34
|
|
36
35
|
_rbln_submodules: List[Dict[str, Any]] = []
|
37
36
|
|
38
|
-
def __init__(
|
39
|
-
self,
|
40
|
-
*,
|
41
|
-
rbln_submodules: List["RBLNBaseModel"] = [],
|
42
|
-
**kwargs,
|
43
|
-
) -> None:
|
37
|
+
def __init__(self, *, rbln_submodules: List["RBLNBaseModel"] = [], **kwargs) -> None:
|
44
38
|
for submodule_meta, submodule in zip(self._rbln_submodules, rbln_submodules):
|
45
39
|
setattr(self, submodule_meta["name"], submodule)
|
46
40
|
|
47
41
|
@classmethod
|
48
42
|
def _export_submodules_from_model(
|
49
|
-
cls,
|
50
|
-
model: "PreTrainedModel",
|
51
|
-
model_save_dir: str,
|
52
|
-
rbln_kwargs: Dict[str, Any],
|
53
|
-
**kwargs,
|
43
|
+
cls, model: "PreTrainedModel", model_save_dir: str, rbln_config: RBLNModelConfig, **kwargs
|
54
44
|
) -> List["RBLNBaseModel"]:
|
55
45
|
rbln_submodules = []
|
46
|
+
submodule_prefix = getattr(cls, "_rbln_submodule_prefix", None)
|
47
|
+
|
56
48
|
for submodule in cls._rbln_submodules:
|
57
49
|
submodule_name = submodule["name"]
|
58
|
-
|
50
|
+
if submodule_prefix is not None:
|
51
|
+
torch_submodule: PreTrainedModel = getattr(model, submodule_prefix)
|
52
|
+
torch_submodule = getattr(torch_submodule, submodule_name)
|
53
|
+
else:
|
54
|
+
torch_submodule: PreTrainedModel = getattr(model, submodule_name)
|
55
|
+
|
59
56
|
cls_name = torch_submodule.__class__.__name__
|
60
|
-
submodule_cls: "RBLNBaseModel" = getattr(importlib.import_module("optimum.rbln"), f"RBLN{cls_name}")
|
57
|
+
submodule_cls: Type["RBLNBaseModel"] = getattr(importlib.import_module("optimum.rbln"), f"RBLN{cls_name}")
|
58
|
+
submodule_rbln_config = getattr(rbln_config, submodule_name) or {}
|
61
59
|
|
62
|
-
if
|
63
|
-
|
60
|
+
if isinstance(submodule_rbln_config, dict):
|
61
|
+
submodule_rbln_config_class = submodule_cls.get_rbln_config_class()
|
62
|
+
submodule_rbln_config = submodule_rbln_config_class(**submodule_rbln_config)
|
63
|
+
setattr(rbln_config, submodule_name, submodule_rbln_config)
|
64
64
|
|
65
65
|
rbln_submodule = submodule_cls.from_model(
|
66
66
|
model=torch_submodule,
|
67
|
+
config=torch_submodule.config,
|
67
68
|
subfolder=submodule_name,
|
68
69
|
model_save_dir=model_save_dir,
|
70
|
+
rbln_config=submodule_rbln_config,
|
69
71
|
**kwargs,
|
70
72
|
)
|
71
73
|
|
@@ -74,55 +76,45 @@ class SubModulesMixin:
|
|
74
76
|
return rbln_submodules
|
75
77
|
|
76
78
|
@classmethod
|
77
|
-
def _load_submodules_from_compiled_models(
|
78
|
-
cls,
|
79
|
-
model_save_dir: str,
|
80
|
-
rbln_kwargs: Dict[str, Any],
|
81
|
-
**kwargs,
|
82
|
-
):
|
79
|
+
def _load_submodules_from_compiled_models(cls, model_save_dir: str, rbln_config: RBLNModelConfig, **kwargs):
|
83
80
|
rbln_submodules = []
|
81
|
+
|
84
82
|
for submodule in cls._rbln_submodules:
|
85
83
|
submodule_name = submodule["name"]
|
86
84
|
|
87
|
-
if submodule_name in rbln_kwargs:
|
88
|
-
kwargs["rbln_config"] = rbln_kwargs[submodule_name]
|
89
|
-
|
90
85
|
# Get cls name for call the constructor of the rbln class
|
91
|
-
submodule_rbln_config =
|
92
|
-
|
93
|
-
|
86
|
+
submodule_rbln_config = getattr(rbln_config, submodule_name)
|
87
|
+
|
88
|
+
# RBLNModelConfig -> RBLNModel
|
89
|
+
submodule_cls: "RBLNBaseModel" = getattr(
|
90
|
+
importlib.import_module("optimum.rbln"), submodule_rbln_config.rbln_model_cls_name
|
91
|
+
)
|
94
92
|
|
95
93
|
rbln_submodule = submodule_cls._from_pretrained(
|
96
94
|
model_id=model_save_dir,
|
97
95
|
config=None,
|
98
96
|
subfolder=submodule_name,
|
97
|
+
rbln_config=submodule_rbln_config,
|
99
98
|
**kwargs,
|
100
99
|
)
|
100
|
+
|
101
|
+
# update submodule's rbln_config since it is updated in the from_pretrained method
|
102
|
+
setattr(rbln_config, submodule_name, rbln_submodule.rbln_config)
|
101
103
|
rbln_submodules.append(rbln_submodule)
|
104
|
+
|
102
105
|
return rbln_submodules
|
103
106
|
|
104
107
|
@classmethod
|
105
|
-
def _load_submodules(
|
106
|
-
cls,
|
107
|
-
model_save_dir,
|
108
|
-
rbln_kwargs,
|
109
|
-
model=None,
|
110
|
-
**kwargs,
|
111
|
-
):
|
108
|
+
def _load_submodules(cls, model_save_dir, rbln_config: RBLNModelConfig, model=None, **kwargs):
|
112
109
|
# Two ways :
|
113
110
|
# 1. Compile from pytorch object
|
114
111
|
# 2. Load from compiled file
|
115
112
|
if model is not None:
|
116
113
|
return cls._export_submodules_from_model(
|
117
|
-
model=model,
|
118
|
-
model_save_dir=model_save_dir,
|
119
|
-
rbln_kwargs=rbln_kwargs,
|
120
|
-
**kwargs,
|
114
|
+
model=model, model_save_dir=model_save_dir, rbln_config=rbln_config, **kwargs
|
121
115
|
)
|
122
116
|
|
123
117
|
else:
|
124
118
|
return cls._load_submodules_from_compiled_models(
|
125
|
-
model_save_dir=model_save_dir,
|
126
|
-
rbln_kwargs=rbln_kwargs,
|
127
|
-
**kwargs,
|
119
|
+
model_save_dir=model_save_dir, rbln_config=rbln_config, **kwargs
|
128
120
|
)
|
@@ -1,7 +1,7 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: optimum-rbln
|
3
|
-
Version: 0.7.
|
4
|
-
Summary: Optimum RBLN is the interface between the
|
3
|
+
Version: 0.7.4
|
4
|
+
Summary: Optimum RBLN is the interface between the HuggingFace Transformers and Diffusers libraries and RBLN accelerators. It provides a set of tools enabling easy model loading and inference on single and multiple rbln device settings for different downstream tasks.
|
5
5
|
Project-URL: Homepage, https://rebellions.ai
|
6
6
|
Project-URL: Documentation, https://docs.rbln.ai
|
7
7
|
Project-URL: Repository, https://github.com/rebellions-sw/optimum-rbln
|
@@ -25,10 +25,10 @@ Requires-Python: <3.13,>=3.9
|
|
25
25
|
Requires-Dist: accelerate>=1.0.1
|
26
26
|
Requires-Dist: diffusers<=0.31.0
|
27
27
|
Requires-Dist: packaging>=24.1
|
28
|
-
Requires-Dist: torch
|
29
|
-
Requires-Dist: torchaudio<=2.
|
30
|
-
Requires-Dist: torchvision<=0.
|
31
|
-
Requires-Dist: transformers==4.
|
28
|
+
Requires-Dist: torch==2.6.0
|
29
|
+
Requires-Dist: torchaudio<=2.6.0
|
30
|
+
Requires-Dist: torchvision<=0.21.0
|
31
|
+
Requires-Dist: transformers==4.50.3
|
32
32
|
Description-Content-Type: text/markdown
|
33
33
|
|
34
34
|
|
@@ -0,0 +1,169 @@
|
|
1
|
+
optimum/rbln/__init__.py,sha256=c2whRR6XkelNLlH1MwAKYMoaBEhmGxSQFrhfKS1JC-I,13186
|
2
|
+
optimum/rbln/__version__.py,sha256=RpToADPpCu_eTIOQjRWWz4zHrylYp11UTglHfgOe1ko,511
|
3
|
+
optimum/rbln/configuration_utils.py,sha256=rOXG9_ptYwzLlDIebd-CoiT3i6xaZl5IVPplLIrUyoE,31106
|
4
|
+
optimum/rbln/modeling.py,sha256=qDXB69Oq0jx9hfONebDiSNe2_DgKYhnAGLTbGAtwYVw,9677
|
5
|
+
optimum/rbln/modeling_base.py,sha256=iQKw2IORu1cN6sOK0xeBVrhatt-ZPeinT_v6l2FnGRw,24173
|
6
|
+
optimum/rbln/diffusers/__init__.py,sha256=XL6oKPHbPCV6IVCw3fu0-M9mD2KO_x6unx5kJdAtpVY,6180
|
7
|
+
optimum/rbln/diffusers/modeling_diffusers.py,sha256=bPyP5RMbOFLb2DfEAuLVp7hTuQWJvWid7El72wGmFrY,19535
|
8
|
+
optimum/rbln/diffusers/configurations/__init__.py,sha256=Sk_sQVTuTl01RVgYViWknQSLmulxKaISS0w-oPdNoBQ,1164
|
9
|
+
optimum/rbln/diffusers/configurations/models/__init__.py,sha256=P3vif5I4wYeol50jzHCZ1ttujuEFZSYJPzUdSF6_jsU,407
|
10
|
+
optimum/rbln/diffusers/configurations/models/configuration_autoencoder_kl.py,sha256=61QHgb_tVF6lxvy6vBxst2TjnebeKQy3rKHOOOc6e68,2952
|
11
|
+
optimum/rbln/diffusers/configurations/models/configuration_controlnet.py,sha256=qyhhrv-rgHl-IDIGf66rghMsfdMyW5xKjWGsEXs8wOc,2551
|
12
|
+
optimum/rbln/diffusers/configurations/models/configuration_prior_transformer.py,sha256=JA0ECp6UbXJNypJUEMaJPyY0k2pfVPCVcqp_BH2h0H0,1952
|
13
|
+
optimum/rbln/diffusers/configurations/models/configuration_transformer_sd3.py,sha256=nQ8Q2wZixKwiM7Xye4-_dJS2HDY94cyxglStYUzssxc,2306
|
14
|
+
optimum/rbln/diffusers/configurations/models/configuration_unet_2d_condition.py,sha256=c-1xAFgA1st8djLXkLeXtctcFp1MqZZYZp3Phqn1Wxo,3366
|
15
|
+
optimum/rbln/diffusers/configurations/models/configuration_vq_model.py,sha256=su4Ceok4Wx4m1hKp5YEM3zigrlTmj3NIs9X7aAKOeWg,2980
|
16
|
+
optimum/rbln/diffusers/configurations/pipelines/__init__.py,sha256=HJlu5lRZJWy4nYjBw3-ed93Pfb5QQmUbCJZKDW1bGH4,1160
|
17
|
+
optimum/rbln/diffusers/configurations/pipelines/configuration_controlnet.py,sha256=G9e2fxVmQ2JD-0iWrRe4jjCTtj9ZysI8oM_dWohtMO8,11044
|
18
|
+
optimum/rbln/diffusers/configurations/pipelines/configuration_kandinsky2_2.py,sha256=u26JzBCgGnc581up4y3XXyFX5lqAsKGF0IyDRGdYPp8,12746
|
19
|
+
optimum/rbln/diffusers/configurations/pipelines/configuration_stable_diffusion.py,sha256=cE5BHI2sy3PCz0kfhQic611feGwavb7wtpx04MPR6us,4992
|
20
|
+
optimum/rbln/diffusers/configurations/pipelines/configuration_stable_diffusion_3.py,sha256=54NTvVur7RADGgjGwO33s76dgKQ4zVNvmFl68rQFapw,6370
|
21
|
+
optimum/rbln/diffusers/configurations/pipelines/configuration_stable_diffusion_xl.py,sha256=H0hqsqpAfqb9gBIK5KsfUf9gX9cTnggK9Nt2aqfzeIM,5528
|
22
|
+
optimum/rbln/diffusers/models/__init__.py,sha256=mkCvJyH1KcwrsUvYSq_bVC79oOfyqtBSFDyPS1_48wA,1478
|
23
|
+
optimum/rbln/diffusers/models/controlnet.py,sha256=kzDbUckGlioor8t0kKBvwi-hzNaG15XluEzTa7xZs1Q,10292
|
24
|
+
optimum/rbln/diffusers/models/autoencoders/__init__.py,sha256=dg17ZTUsiqTcbIaEE4fqew9uRbao0diQ21PXvRKIqKg,679
|
25
|
+
optimum/rbln/diffusers/models/autoencoders/autoencoder_kl.py,sha256=qjReFNmuQEjnHjoI8f7ClAp_rRTA1vIk-3dwxJi6s7U,7905
|
26
|
+
optimum/rbln/diffusers/models/autoencoders/vae.py,sha256=_fyFco2697uT1zo_P_fGML-_zqZw2sUQp3tRRjA5pg4,4172
|
27
|
+
optimum/rbln/diffusers/models/autoencoders/vq_model.py,sha256=DC8Nee8_BabGhagJgpCUDhA-oaTpZMg-lCVzXJ6dNEw,6134
|
28
|
+
optimum/rbln/diffusers/models/transformers/__init__.py,sha256=V8rSR7WzHs-i8Cwb_MNxhY2NFbwPgxu24vGtkwl-6tk,706
|
29
|
+
optimum/rbln/diffusers/models/transformers/prior_transformer.py,sha256=d7CYmm88lozepqXjmrFr4qsQ-lRE_10wQRwnenMSflU,4989
|
30
|
+
optimum/rbln/diffusers/models/transformers/transformer_sd3.py,sha256=ywWiRAYQ0wfKMMZBrJ9C34GBwIu92F5QXSG8qi7Cr6s,6579
|
31
|
+
optimum/rbln/diffusers/models/unets/__init__.py,sha256=MaICuK9CWjgzejXy8y2NDrphuEq1rkzanF8u45k6O5I,655
|
32
|
+
optimum/rbln/diffusers/models/unets/unet_2d_condition.py,sha256=dyrez3vS0_YSxTVwcjlSijDJhe6XchdsLsCFv74HiFQ,15555
|
33
|
+
optimum/rbln/diffusers/pipelines/__init__.py,sha256=5KLZ5LrpMzBya2e_3_PvEoPwG24U8JMexfw_ygZREKc,3140
|
34
|
+
optimum/rbln/diffusers/pipelines/controlnet/__init__.py,sha256=n1Ef22TSeax-kENi_d8K6wGGHSNEo9QkUeygELHgcao,983
|
35
|
+
optimum/rbln/diffusers/pipelines/controlnet/multicontrolnet.py,sha256=Cv__E0Boc6TSOIv8TdXVE821zIiPG4MVI_lnaGSqquk,4102
|
36
|
+
optimum/rbln/diffusers/pipelines/controlnet/pipeline_controlnet.py,sha256=_yblap0kjOpk-cJ6LuD5vL4G7BEnJISy1EP-QiU0I5w,35330
|
37
|
+
optimum/rbln/diffusers/pipelines/controlnet/pipeline_controlnet_img2img.py,sha256=GtnjUPTicLI5IAMlFi8zm4c3BvvAhgD7_H1_3fOfnzw,33821
|
38
|
+
optimum/rbln/diffusers/pipelines/controlnet/pipeline_controlnet_sd_xl.py,sha256=M97KwwgMVZlebc2V98Ll0MIhQm00uzQaET-Dcl6CX7Q,44902
|
39
|
+
optimum/rbln/diffusers/pipelines/controlnet/pipeline_controlnet_sd_xl_img2img.py,sha256=QIn3pGtKZupsZZNXwNdRRpldvLIuSrd1GQ2GpziNMfI,46245
|
40
|
+
optimum/rbln/diffusers/pipelines/kandinsky2_2/__init__.py,sha256=I4YQq2HfA3xONbWsdJ870IEJPyLWeCDDG-UCJsu9YO8,1035
|
41
|
+
optimum/rbln/diffusers/pipelines/kandinsky2_2/pipeline_kandinsky2_2.py,sha256=fxE1NSinavs__ljMyKr_kz2xQzVftQyf0YInx9tt4og,1021
|
42
|
+
optimum/rbln/diffusers/pipelines/kandinsky2_2/pipeline_kandinsky2_2_combined.py,sha256=pUFs83YWKGN4tfgOW9qWBjUQc7wK3fvyEdXJqLdf_5Q,7153
|
43
|
+
optimum/rbln/diffusers/pipelines/kandinsky2_2/pipeline_kandinsky2_2_img2img.py,sha256=6AGh3OOzsGJ-f-yDyMp9TyGxrl7lfEqUt5JIlyI_aAU,1063
|
44
|
+
optimum/rbln/diffusers/pipelines/kandinsky2_2/pipeline_kandinsky2_2_inpaint.py,sha256=KzFeKxaltdGpllswtl3HT79jLpX1qLMjT7QN7wiMPDI,1063
|
45
|
+
optimum/rbln/diffusers/pipelines/kandinsky2_2/pipeline_kandinsky2_2_prior.py,sha256=HrYRkIuw0H4Q0BEpRAIQNkmQfJRTpkhy9Hj0gvrSUBQ,1001
|
46
|
+
optimum/rbln/diffusers/pipelines/stable_diffusion/__init__.py,sha256=gz6CbP4T6w8XH3PIGRIJXTmKFsChJIkwcAEAsiR5Ydg,830
|
47
|
+
optimum/rbln/diffusers/pipelines/stable_diffusion/pipeline_stable_diffusion.py,sha256=XxZd9_Est8QxSECm0q-2AkfnGn1Hz5Mr2AadtZtsefw,1000
|
48
|
+
optimum/rbln/diffusers/pipelines/stable_diffusion/pipeline_stable_diffusion_img2img.py,sha256=6VWT2ssqz00d_l9Wotep-YFbzK8Ykh1_AhTwTPY34GI,1041
|
49
|
+
optimum/rbln/diffusers/pipelines/stable_diffusion/pipeline_stable_diffusion_inpaint.py,sha256=M6rXEIcp5oORHZlDT41OL6CAlxLYaMFATcjyxjGTG64,1041
|
50
|
+
optimum/rbln/diffusers/pipelines/stable_diffusion_3/__init__.py,sha256=Hh-JePj7nBsm81ioqdt8gfpS_I0sEHBinsAOEdraUno,839
|
51
|
+
optimum/rbln/diffusers/pipelines/stable_diffusion_3/pipeline_stable_diffusion_3.py,sha256=bcgW4YO_BwK7TE3ovlOOZo_JDq2Ae0jCyS42F3ibHRM,1048
|
52
|
+
optimum/rbln/diffusers/pipelines/stable_diffusion_3/pipeline_stable_diffusion_3_img2img.py,sha256=SSf53dBcEeVNsYoIvmerbWmmahBQ9LT-0jyy7x1C8rA,1090
|
53
|
+
optimum/rbln/diffusers/pipelines/stable_diffusion_3/pipeline_stable_diffusion_3_inpaint.py,sha256=EBOoOAADiAvxRCRGGHQnue6UvULzh37a1snibD8Xsss,1090
|
54
|
+
optimum/rbln/diffusers/pipelines/stable_diffusion_xl/__init__.py,sha256=9iIMZYvpWEiLRrMEduhwVTE5IUix61OSLj7kd1e1FzY,845
|
55
|
+
optimum/rbln/diffusers/pipelines/stable_diffusion_xl/pipeline_stable_diffusion_xl.py,sha256=9GQIzBSgBae2kE9esGycg7WqNwO8TGF5c97rMx9934Y,1029
|
56
|
+
optimum/rbln/diffusers/pipelines/stable_diffusion_xl/pipeline_stable_diffusion_xl_img2img.py,sha256=BtzoyVd6Np5BPu3-OyXjbVMM8tl2ARF3HeFZab9NLXU,1071
|
57
|
+
optimum/rbln/diffusers/pipelines/stable_diffusion_xl/pipeline_stable_diffusion_xl_inpaint.py,sha256=7_ezUBCaH24e25VS19vrhJHBvmEOFnBpgfslpjL6aT4,1071
|
58
|
+
optimum/rbln/ops/__init__.py,sha256=rSz6mfC0aGbNYjMaNSsOZSPYxPRenW8DWbNpAkjTfAc,703
|
59
|
+
optimum/rbln/ops/attn.py,sha256=x02yFLk7FcONFqfow0ROmVy9fmxo5Pw0SPCiDY3AZNg,9012
|
60
|
+
optimum/rbln/ops/flash_attn.py,sha256=NmCqUdMTzgJ4sbYGj8IWXJEsLWvbuCMponR01w5DK6w,4121
|
61
|
+
optimum/rbln/ops/kv_cache_update.py,sha256=HjnHBR-oFrJQibsVnkYb0P5_-wEma8jl0mkjkylwakU,1270
|
62
|
+
optimum/rbln/ops/linear.py,sha256=1_7Hg-9wXxhu97fqPobotLQx17k7VPeSSL91_9Z7EDg,1018
|
63
|
+
optimum/rbln/transformers/__init__.py,sha256=P89UOclQWiLgNkH90GXdnwWD2492O2tusM-fZApfBNg,8084
|
64
|
+
optimum/rbln/transformers/configuration_alias.py,sha256=qFVfg6ohsR7a6b-CBgxjBUPDrk9MyiJwtO8AQah_RTU,1505
|
65
|
+
optimum/rbln/transformers/configuration_generic.py,sha256=XIiZ1-5p1CMHhG7Sr2qR4SLYKcYw9aph7eGlga3Opx0,5056
|
66
|
+
optimum/rbln/transformers/modeling_alias.py,sha256=yx7FnZQWAnrWzivaO5hI7T6i-fyLzt2tMIXG2oDNbPo,1657
|
67
|
+
optimum/rbln/transformers/modeling_generic.py,sha256=nT_lytAILkYtwBVJKxXg0dxmh0UpjGYO6zOdLoMs1uU,12891
|
68
|
+
optimum/rbln/transformers/modeling_rope_utils.py,sha256=3zwkhYUyTZhxCJUSmwCc88iiY1TppRWEY9ShwUqNB2k,14293
|
69
|
+
optimum/rbln/transformers/models/__init__.py,sha256=72eMPN5UYGJ9P5gnJ2yi25cGdX1jV7viTOKmsX2OqBg,7221
|
70
|
+
optimum/rbln/transformers/models/auto/__init__.py,sha256=GvGbb3ZpMv-h6euXeZ42jSizoOfrL2O1uvpAnfKxYEo,1034
|
71
|
+
optimum/rbln/transformers/models/auto/auto_factory.py,sha256=Uf5rCUoxec2qhIAwbAeZNZN4NIMFaLurSB1EdI79lwA,7044
|
72
|
+
optimum/rbln/transformers/models/auto/modeling_auto.py,sha256=Un9qoqdy3dO8JBza_bTJF_6_fRVNM9QisihSgTRFI-o,3933
|
73
|
+
optimum/rbln/transformers/models/bart/__init__.py,sha256=fVo-gZEmJ0yxkIxEX6ciuRAGgXNyuvaXE2s88bhbjAE,830
|
74
|
+
optimum/rbln/transformers/models/bart/bart_architecture.py,sha256=Oo-Cdne7igKEex8wwP-gztKJHgs5GLHQjK1oc3IZIDE,5801
|
75
|
+
optimum/rbln/transformers/models/bart/configuration_bart.py,sha256=iIuotDRU0IZteTNUY97jnsecIEYokaJ0BF5Sv_MJk00,909
|
76
|
+
optimum/rbln/transformers/models/bart/modeling_bart.py,sha256=q42gQ42Ldkfrw_rv0__7dFQEM8UYfKEMCYd6Z-vg9KQ,1918
|
77
|
+
optimum/rbln/transformers/models/bert/__init__.py,sha256=86FuGRBLw315_Roa9D5OUx6Ku2PM0DqSPZ-YSqbF-io,806
|
78
|
+
optimum/rbln/transformers/models/bert/configuration_bert.py,sha256=NIlBRn-zrnNirkEfJ4Uv2TZRIBL761PLJ9-cZaPyzpg,1017
|
79
|
+
optimum/rbln/transformers/models/bert/modeling_bert.py,sha256=XxsRhBhexZ2w3mRCvKl73pIyGdqcFR1RrOKG7h4EAyk,1223
|
80
|
+
optimum/rbln/transformers/models/clip/__init__.py,sha256=TLeXDqcFK6M6v9x7Xr64kBbqGu3hFHM7p754dQ8UVQc,938
|
81
|
+
optimum/rbln/transformers/models/clip/configuration_clip.py,sha256=wgfZeVvcVdSzrN9tcnt7DKJQ0NLR0REvW7MyUXyv2Bg,2976
|
82
|
+
optimum/rbln/transformers/models/clip/modeling_clip.py,sha256=UslcDN6otyQ_psou7F_YcdK5vCImEtgIdcbwmexSfOM,7256
|
83
|
+
optimum/rbln/transformers/models/decoderonly/__init__.py,sha256=vQYZDDdoddwA7yKc5zzrq2Zs9sax-0p8rNF_aYfF4bk,1006
|
84
|
+
optimum/rbln/transformers/models/decoderonly/configuration_decoderonly.py,sha256=b1W7zS0MUmeDd048bLp5AkZMrWd3LIhHaVy8NvlwdCw,4116
|
85
|
+
optimum/rbln/transformers/models/decoderonly/decoderonly_architecture.py,sha256=NG2tKC3gT57r34PYKgU0evZHctEHzJGRrk2FOjLyK7Q,41748
|
86
|
+
optimum/rbln/transformers/models/decoderonly/modeling_decoderonly.py,sha256=5o2m_xPVjfCovP_jcW8E17sSKkLqcVblr4mFLbv-VDU,42991
|
87
|
+
optimum/rbln/transformers/models/dpt/__init__.py,sha256=Nzep9mlzKyL1kV726IBqY8DnLp1DkH9JzFeknWSRhok,714
|
88
|
+
optimum/rbln/transformers/models/dpt/configuration_dpt.py,sha256=4fW6bzVhaAxym4wGV3F785rvUOoWPyw_gdEMqB08Leg,755
|
89
|
+
optimum/rbln/transformers/models/dpt/modeling_dpt.py,sha256=oKLX7MQZvfk1QB8wOtcdi7AmZH2fOIVbypa9A3RA9MI,733
|
90
|
+
optimum/rbln/transformers/models/exaone/__init__.py,sha256=eUL0mq3yGVzCQfjLlOtVF2MecIN3DQWm07EmXubGSTs,921
|
91
|
+
optimum/rbln/transformers/models/exaone/configuration_exaone.py,sha256=97r1wkO9cgwErePk2UX6n7WeVkOmWUeGgpK6qAGOUi4,774
|
92
|
+
optimum/rbln/transformers/models/exaone/exaone_architecture.py,sha256=ZM5vvz8KBipOiMVi8vqfvejkDSknW69xh4GrvJix-g0,3350
|
93
|
+
optimum/rbln/transformers/models/exaone/modeling_exaone.py,sha256=WjyH8PmsMljSea7kJn_Cq1FJ96OXwXAoU7hv2Q8zUnI,1747
|
94
|
+
optimum/rbln/transformers/models/gemma/__init__.py,sha256=VqPIlokw3kjn_ZoLXINCLXw3vaysQFo5oPGGy6bnt4Q,708
|
95
|
+
optimum/rbln/transformers/models/gemma/configuration_gemma.py,sha256=ek7PiMWx4LDAJ0mCedJ55o_TKTiOCSGD5V-1o1Fy4f8,773
|
96
|
+
optimum/rbln/transformers/models/gemma/gemma_architecture.py,sha256=bmCx405FVcffhgrQ53qMMZDbSlPxWOjucMHbvq19Gnw,2286
|
97
|
+
optimum/rbln/transformers/models/gemma/modeling_gemma.py,sha256=-U3w3cEOv3ps1S8aL7uOq6Kq2siCPZz7Z8MXhDQgQqo,1530
|
98
|
+
optimum/rbln/transformers/models/gpt2/__init__.py,sha256=socBMIBZSiLbrVN12rQ4nL9gFeT0axMgz6SWaCaD4Ac,704
|
99
|
+
optimum/rbln/transformers/models/gpt2/configuration_gpt2.py,sha256=vKvJD8P9Li4W9wdVoQcqMEr1MwEXojPBnF2NE85VXAo,772
|
100
|
+
optimum/rbln/transformers/models/gpt2/gpt2_architecture.py,sha256=1IxqHmB-GlH2Dv2Yk4z0rMxL9CpxMGHhSu_x8_4cxvs,3008
|
101
|
+
optimum/rbln/transformers/models/gpt2/modeling_gpt2.py,sha256=qBDanUk_O-HtOIVCA4IE3FYyCsnL9xIDK00vft-0caw,1490
|
102
|
+
optimum/rbln/transformers/models/idefics3/__init__.py,sha256=ulxE7HEfXsNJhd25J9Fvi6vggo9aZH9sLKJjWB6LlzQ,814
|
103
|
+
optimum/rbln/transformers/models/idefics3/configuration_idefics3.py,sha256=sM0pXsvkxcpDXagoKlqwKdBAcNdayB9KlWdYC9xlyDU,1889
|
104
|
+
optimum/rbln/transformers/models/idefics3/modeling_idefics3.py,sha256=Rr9BJDyoOqJFQ8dJV78QU4Tjjhhj3aqRk05JcDqFv6Y,17904
|
105
|
+
optimum/rbln/transformers/models/llama/__init__.py,sha256=knxvRkPx8x6-WOxqSq_PlaKYD-9F9Q8dh7r095Esey0,708
|
106
|
+
optimum/rbln/transformers/models/llama/configuration_llama.py,sha256=B9gr4pTn9yiv3-8DIk0P7_AQdIHEc7SuLaH9gZAmP8E,773
|
107
|
+
optimum/rbln/transformers/models/llama/llama_architecture.py,sha256=S7MCPfyjG5eUqgaS-QNBB0ApUD6wnb5fR0RHq7k7-pA,728
|
108
|
+
optimum/rbln/transformers/models/llama/modeling_llama.py,sha256=Z3iony7icoFhRQ11MAuFx9UF03uJCsvJQZ6bxHXlrgk,1530
|
109
|
+
optimum/rbln/transformers/models/llava_next/__init__.py,sha256=kDXKr7wMkp1XqE__DER2B8kQF_NYMxhzsQS5ytGg56I,752
|
110
|
+
optimum/rbln/transformers/models/llava_next/configuration_llava_next.py,sha256=QPreWZyohwRL23GOyvoAfKtk5UNg7IJ_Y_pNfUDe7cU,1838
|
111
|
+
optimum/rbln/transformers/models/llava_next/modeling_llava_next.py,sha256=xOXc1XUIK4oLSFvAq7Q0lxiOLlDFMbFdOcg5JvLnVkI,25979
|
112
|
+
optimum/rbln/transformers/models/midm/__init__.py,sha256=IC3FETwgYinbp3wDj7tp4zIHJhbqM-c6GfTRdYcMNj8,913
|
113
|
+
optimum/rbln/transformers/models/midm/configuration_midm.py,sha256=Kv5g5dIsBrhGcZ2_pFUOPNB80np4Xiw0wPH1IZm1PHI,772
|
114
|
+
optimum/rbln/transformers/models/midm/midm_architecture.py,sha256=357iviqQkzI0s_lU_teH1sVOChNRDUABe3GA0HuhZZY,5444
|
115
|
+
optimum/rbln/transformers/models/midm/modeling_midm.py,sha256=GG25BozEZriAL-OPFGpzOjyDtSFB-NfeiLJTDAqxe20,1734
|
116
|
+
optimum/rbln/transformers/models/mistral/__init__.py,sha256=9FE64bCYfSIyrBkRcwlqF8QyacSJFWvwEufHFi1ZIrM,716
|
117
|
+
optimum/rbln/transformers/models/mistral/configuration_mistral.py,sha256=zCHZnmjTXs7UKYIIRR2IYjccROm5ODXfonWploITNxg,775
|
118
|
+
optimum/rbln/transformers/models/mistral/mistral_architecture.py,sha256=_aU8TE_tdvfo0K7QpgTlz_d0qwk4O82dl9268lPL16E,733
|
119
|
+
optimum/rbln/transformers/models/mistral/modeling_mistral.py,sha256=7nrddoBIHf8S12LZWBUpotnvG3gND11vMQda9yYXJ-s,1560
|
120
|
+
optimum/rbln/transformers/models/phi/__init__.py,sha256=uqQb-sO1HXuaju2hfo7qJHk_IWhnptY-qFjNjK_uOc0,700
|
121
|
+
optimum/rbln/transformers/models/phi/configuration_phi.py,sha256=9Mk06ZNymGnC2P0eiU02oguH1KFKxL-LYtMJSNqpmmo,771
|
122
|
+
optimum/rbln/transformers/models/phi/modeling_phi.py,sha256=j-6Pqd5rR2JE8I1pnKFlCi4nW5Dv3wZjoPWxohissoo,1516
|
123
|
+
optimum/rbln/transformers/models/phi/phi_architecture.py,sha256=TueyqmjPXWmOPOxBm4dIFyd0X3iV1jgw0U6c26iCAPk,4090
|
124
|
+
optimum/rbln/transformers/models/qwen2/__init__.py,sha256=Tu4_AXy3ktTvxGwxED3kewiv62S75HgDWD6-TeC1DfA,708
|
125
|
+
optimum/rbln/transformers/models/qwen2/configuration_qwen2.py,sha256=sQBu4UjM8Ctiy696FLjKeck1t49MR31zWTCN_bMvBl4,773
|
126
|
+
optimum/rbln/transformers/models/qwen2/modeling_qwen2.py,sha256=9-aFDvjMzPNUyGOz0qo33RE18bUFGYZ3Wt_68zb5uJY,1530
|
127
|
+
optimum/rbln/transformers/models/qwen2/qwen2_architecture.py,sha256=XlNAMYAcDLohnSAhIFGKOPuCB5XLgzYs5ABWdeQSaZs,720
|
128
|
+
optimum/rbln/transformers/models/qwen2_5_vl/__init__.py,sha256=rAW3DKQUzGL6EMwa5r1iLu94yhpiZpk6zfoD7TtYXrc,865
|
129
|
+
optimum/rbln/transformers/models/qwen2_5_vl/configuration_qwen2_5_vl.py,sha256=dPcGNaLwJf61PIvVbyt-lvBflp_dvK0hubhNoA3len0,3123
|
130
|
+
optimum/rbln/transformers/models/qwen2_5_vl/modeling_qwen2_5_vl.py,sha256=sKsDAiMGWtbquTw6_PITK4ijL0aHBZqgs2nPObEiFN8,24951
|
131
|
+
optimum/rbln/transformers/models/qwen2_5_vl/qwen2_5_vl_architecture.py,sha256=YRy7Ylm-UQLovt5BmxhayJMKzF3rj0_HIc4tUXaiPO0,7474
|
132
|
+
optimum/rbln/transformers/models/seq2seq/__init__.py,sha256=6WKstWiS1kW0oFDn_jyrKMW5QEJAWkmsSRAaadNedDM,715
|
133
|
+
optimum/rbln/transformers/models/seq2seq/configuration_seq2seq2.py,sha256=vSNP1eILfL32cbiLOAD58Ocz6lk3hYFnhIRLDVqlSoI,2624
|
134
|
+
optimum/rbln/transformers/models/seq2seq/modeling_seq2seq.py,sha256=7MN6CNVyYg4JsULYXDfQ_KkDd3w-1TXuxndSrM-CX8w,16980
|
135
|
+
optimum/rbln/transformers/models/seq2seq/seq2seq_architecture.py,sha256=w5pMnWbJhgYmpl5NT_vJEzcb4RfEbHfalJ371IL3wp8,18685
|
136
|
+
optimum/rbln/transformers/models/t5/__init__.py,sha256=R1Q8Z1vaIdx4rDjeCmm_ZMSgewWaqaI0l93AHwewtew,818
|
137
|
+
optimum/rbln/transformers/models/t5/configuration_t5.py,sha256=cOa2NAAocNSSECTtLpOsVVLfn4-7l7K7jz3nf6CSNCs,912
|
138
|
+
optimum/rbln/transformers/models/t5/modeling_t5.py,sha256=cnN76IAw6QaJN8Oodfk5Y4Dte6m84Fy_CRgnqquzzTI,2990
|
139
|
+
optimum/rbln/transformers/models/t5/t5_architecture.py,sha256=YdFOr8LfBhEXuPsLZDfYjmUSI-a3Otrzye1bOf8NUyw,9678
|
140
|
+
optimum/rbln/transformers/models/time_series_transformers/__init__.py,sha256=rc3csSk4SxEbumZ9xkSWif01Cfi2vALyAHVHfh7t5Sc,1244
|
141
|
+
optimum/rbln/transformers/models/time_series_transformers/configuration_time_series_transformer.py,sha256=HUw47FcTeSHBPs02R6GWBWKcX4BrsAI7iPWs0iYhJl0,1363
|
142
|
+
optimum/rbln/transformers/models/time_series_transformers/modeling_time_series_transformers.py,sha256=Si3erSkVjzftFErM9d7MiL3dQnnPhqXR1wNvxhmJVxA,16514
|
143
|
+
optimum/rbln/transformers/models/time_series_transformers/time_series_transformers_architecture.py,sha256=XJDjQGbWXUq4ZimNojlcbm3mTDpxUMCl6tkFSzfYFl4,13769
|
144
|
+
optimum/rbln/transformers/models/wav2vec2/__init__.py,sha256=dzXqyf_uiI45hPJGbnF1v780Izi2TigsbAo3hxFmhy0,709
|
145
|
+
optimum/rbln/transformers/models/wav2vec2/configuration_wav2vec.py,sha256=hXsN_pc_gb_xcQdXXnvpp-o0dk5lNepXnt9O5HB-3g4,771
|
146
|
+
optimum/rbln/transformers/models/wav2vec2/modeling_wav2vec2.py,sha256=Sw44ZJVQpXfBiq34oyKxSY2SslCeF3QT_yBysWiTyHY,2060
|
147
|
+
optimum/rbln/transformers/models/whisper/__init__.py,sha256=ErquiUlYycSYPsDcq9IwwmbZXoYLn1MVZ8VikWY5gQo,792
|
148
|
+
optimum/rbln/transformers/models/whisper/configuration_whisper.py,sha256=-Su7pbkg3gkYTf-ECRJyxkpD3JtUJX4y5Mfml8tJJBI,2612
|
149
|
+
optimum/rbln/transformers/models/whisper/generation_whisper.py,sha256=GIHTca3b1VtW81kp7BzKQ7f77c2t9OsEsbZetripgDo,4582
|
150
|
+
optimum/rbln/transformers/models/whisper/modeling_whisper.py,sha256=7VcOjxV3ZAHBYFDLiSc6wVJ3PZLqzmbBAIkQ4JVfpNM,17538
|
151
|
+
optimum/rbln/transformers/models/whisper/whisper_architecture.py,sha256=zEwfn8DDTbt2TN7lHKMZG9JXZc5WdW9Cp8mH4OVfo3s,13949
|
152
|
+
optimum/rbln/transformers/models/xlm_roberta/__init__.py,sha256=mFeFTiF6xY_n1glUsvZ420uKKwkeVOS5Oag0L6E4Qs8,718
|
153
|
+
optimum/rbln/transformers/models/xlm_roberta/configuration_xlm_roberta.py,sha256=XBICzoxTaZ8DhBtr8qos2tDJar4jvCiKOZwXGImlTAw,779
|
154
|
+
optimum/rbln/transformers/models/xlm_roberta/modeling_xlm_roberta.py,sha256=rro7kH_BLDIlKSBRUfeuX-qQu6MeO5SzbVcf0AbFxEk,757
|
155
|
+
optimum/rbln/transformers/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
156
|
+
optimum/rbln/transformers/utils/rbln_quantization.py,sha256=gwBVHf97sQgPNmGa0wq87E8mPyrtXYhMnO4X4sKp3c8,7639
|
157
|
+
optimum/rbln/utils/__init__.py,sha256=ieDBT2VFTt2E0M4v_POLBpuGW9LxSydpb_DuPd6PQqc,712
|
158
|
+
optimum/rbln/utils/decorator_utils.py,sha256=xu-TrsNi33SRC2a7DBsyoo6-pEQxWKZPZSmM9QlDe2Y,3745
|
159
|
+
optimum/rbln/utils/hub.py,sha256=Z_R9Ic9VAew8bUmlaAlxZf5JGMDBivHvvFRI557pILY,4196
|
160
|
+
optimum/rbln/utils/import_utils.py,sha256=fpOERIIxXm-cDYGn1NN6c7aWDPQYVitPQW2MiyZ9NEY,5471
|
161
|
+
optimum/rbln/utils/logging.py,sha256=VKKBmlQSdg6iZCGmAXaWYiW67K84jyp1QJhLQSSjPPE,3453
|
162
|
+
optimum/rbln/utils/model_utils.py,sha256=V2kFpUe2aqVzLwbpztD8JOVFQqRHncvIWwJbgnUPr4E,1274
|
163
|
+
optimum/rbln/utils/runtime_utils.py,sha256=LoKNK3AQNV_BSScstIZWjICkJf265MnUgy360BOocVI,5454
|
164
|
+
optimum/rbln/utils/save_utils.py,sha256=hG5uOtYmecSXZuGTvCXsTM-SiyZpr5q3InUGCCq_jzQ,3619
|
165
|
+
optimum/rbln/utils/submodule.py,sha256=TtcH3OLctFd2Dosc-zNMGZ8xOXKKUfE91dLQ1v09E8Q,4636
|
166
|
+
optimum_rbln-0.7.4.dist-info/METADATA,sha256=3oBI_f7-aVgQPAK_8wliIDknmqHBiIlCaQ4iU9nHZAI,5297
|
167
|
+
optimum_rbln-0.7.4.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
168
|
+
optimum_rbln-0.7.4.dist-info/licenses/LICENSE,sha256=QwcOLU5TJoTeUhuIXzhdCEEDDvorGiC6-3YTOl4TecE,11356
|
169
|
+
optimum_rbln-0.7.4.dist-info/RECORD,,
|