optimum-rbln 0.7.4a2__py3-none-any.whl → 0.7.4a3__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/__version__.py +1 -1
- optimum/rbln/modeling.py +8 -1
- optimum/rbln/ops/__init__.py +3 -7
- optimum/rbln/ops/attn.py +271 -207
- optimum/rbln/ops/flash_attn.py +161 -67
- optimum/rbln/ops/kv_cache_update.py +4 -40
- optimum/rbln/transformers/models/bart/__init__.py +1 -0
- optimum/rbln/transformers/models/decoderonly/__init__.py +10 -0
- optimum/rbln/transformers/models/decoderonly/decoderonly_architecture.py +80 -94
- optimum/rbln/transformers/models/seq2seq/modeling_seq2seq.py +17 -13
- optimum/rbln/transformers/models/seq2seq/seq2seq_architecture.py +12 -21
- optimum/rbln/transformers/models/t5/__init__.py +1 -0
- optimum/rbln/transformers/models/t5/modeling_t5.py +3 -37
- optimum/rbln/transformers/models/t5/t5_architecture.py +3 -4
- optimum/rbln/transformers/models/time_series_transformers/__init__.py +1 -0
- optimum/rbln/transformers/models/time_series_transformers/time_series_transformers_architecture.py +12 -22
- optimum/rbln/transformers/models/whisper/__init__.py +1 -0
- optimum/rbln/transformers/models/whisper/modeling_whisper.py +0 -1
- optimum/rbln/transformers/models/whisper/whisper_architecture.py +20 -32
- {optimum_rbln-0.7.4a2.dist-info → optimum_rbln-0.7.4a3.dist-info}/METADATA +1 -1
- {optimum_rbln-0.7.4a2.dist-info → optimum_rbln-0.7.4a3.dist-info}/RECORD +23 -23
- {optimum_rbln-0.7.4a2.dist-info → optimum_rbln-0.7.4a3.dist-info}/WHEEL +0 -0
- {optimum_rbln-0.7.4a2.dist-info → optimum_rbln-0.7.4a3.dist-info}/licenses/LICENSE +0 -0
@@ -36,50 +36,19 @@ from .t5_architecture import T5Wrapper
|
|
36
36
|
logger = get_logger()
|
37
37
|
|
38
38
|
if TYPE_CHECKING:
|
39
|
-
from rebel import Runtime
|
40
39
|
from transformers import AutoFeatureExtractor, AutoProcessor, AutoTokenizer, PreTrainedModel
|
41
40
|
|
42
41
|
|
43
42
|
class RBLNRuntimeModel(RBLNPytorchRuntime):
|
44
|
-
def __init__(
|
45
|
-
self,
|
46
|
-
runtime: "Runtime",
|
47
|
-
max_seq_len: int,
|
48
|
-
**kwargs: Any,
|
49
|
-
) -> None:
|
50
|
-
super().__init__(runtime, **kwargs)
|
51
|
-
self.max_seq_len = max_seq_len
|
52
|
-
|
53
|
-
def _prepare_inputs(
|
54
|
-
self,
|
55
|
-
input_ids: torch.LongTensor,
|
56
|
-
attention_mask: torch.LongTensor,
|
57
|
-
):
|
58
|
-
input_len = input_ids.shape[-1]
|
59
|
-
pad_len = None
|
60
|
-
if input_len > self.max_seq_len:
|
61
|
-
raise ValueError(f"Error input_len({input_len}) exceed max_seq_len({self.max_seq_len}).")
|
62
|
-
elif input_len < self.max_seq_len and input_len > 0:
|
63
|
-
pad_len = self.max_seq_len - input_len
|
64
|
-
logger.warning(
|
65
|
-
f"Warning: The input was padded with {pad_len} tokens to meet the compiled model's requirements. "
|
66
|
-
"For optimal performance, consider recompiling with a shorter 'rbln_max_seq_len'."
|
67
|
-
)
|
68
|
-
input_ids = torch.nn.functional.pad(input_ids, (0, pad_len))
|
69
|
-
attention_mask = torch.nn.functional.pad(attention_mask, (0, pad_len), value=0)
|
70
|
-
|
71
|
-
return input_ids, attention_mask, pad_len
|
72
|
-
|
73
43
|
def forward(
|
74
44
|
self,
|
75
45
|
input_ids: torch.LongTensor,
|
76
|
-
attention_mask: torch.
|
46
|
+
attention_mask: torch.FloatTensor,
|
77
47
|
head_mask: torch.FloatTensor,
|
78
48
|
inputs_embeds: torch.FloatTensor,
|
79
49
|
**kwargs,
|
80
50
|
):
|
81
|
-
|
82
|
-
logits = super().forward(
|
51
|
+
return super().forward(
|
83
52
|
input_ids,
|
84
53
|
attention_mask,
|
85
54
|
head_mask,
|
@@ -87,8 +56,6 @@ class RBLNRuntimeModel(RBLNPytorchRuntime):
|
|
87
56
|
**kwargs,
|
88
57
|
)
|
89
58
|
|
90
|
-
return logits[:, :-pad_len, :] if pad_len is not None else logits
|
91
|
-
|
92
59
|
|
93
60
|
class T5EncoderWrapper(torch.nn.Module):
|
94
61
|
def __init__(self, model: "T5EncoderModel") -> None:
|
@@ -105,8 +72,7 @@ class RBLNT5EncoderModel(RBLNModel):
|
|
105
72
|
rbln_model_input_names = ["input_ids", "attention_mask"]
|
106
73
|
|
107
74
|
def __post_init__(self, **kwargs):
|
108
|
-
|
109
|
-
self.model = RBLNRuntimeModel(runtime=self.model[0], max_seq_len=max_seq_len)
|
75
|
+
self.model = RBLNRuntimeModel(runtime=self.model[0])
|
110
76
|
|
111
77
|
@classmethod
|
112
78
|
def wrap_model_if_needed(self, model: "PreTrainedModel", rbln_config: "RBLNConfig"):
|
@@ -18,7 +18,6 @@ import torch
|
|
18
18
|
from torch import nn
|
19
19
|
from transformers.utils import logging
|
20
20
|
|
21
|
-
from ....ops import register_rbln_custom_paged_add_softmax_attention
|
22
21
|
from ..seq2seq.seq2seq_architecture import (
|
23
22
|
Seq2SeqDecoder,
|
24
23
|
Seq2SeqDecoderLayer,
|
@@ -55,7 +54,6 @@ class T5EncoderWrapper(Seq2SeqEncoderWrapper):
|
|
55
54
|
|
56
55
|
class T5DecoderWrapper(Seq2SeqDecoderWrapper):
|
57
56
|
def __post_init__(self, model, dec_max_seq_len: int = None):
|
58
|
-
register_rbln_custom_paged_add_softmax_attention()
|
59
57
|
self.num_layers = self.config.num_layers
|
60
58
|
self.conditional_generation = self.convert_to_rbln_conditional_generation(model, dec_max_seq_len)
|
61
59
|
|
@@ -78,11 +76,12 @@ class T5DecoderWrapper(Seq2SeqDecoderWrapper):
|
|
78
76
|
encoder_attention_mask,
|
79
77
|
cache_position,
|
80
78
|
block_tables,
|
81
|
-
|
82
|
-
*self_kv_cache,
|
79
|
+
*kv_cache,
|
83
80
|
) -> Tuple[torch.FloatTensor, Tuple[torch.FloatTensor]]:
|
84
81
|
self_past_key_values = ()
|
85
82
|
cross_past_key_values = ()
|
83
|
+
self_kv_cache = kv_cache[self.num_layers * 2 :]
|
84
|
+
cross_kv_cache = kv_cache[: self.num_layers * 2]
|
86
85
|
|
87
86
|
for i in range(0, self.num_layers * 2, 2):
|
88
87
|
self_past_key_values = self_past_key_values + ((self_kv_cache[i], self_kv_cache[i + 1]),)
|
optimum/rbln/transformers/models/time_series_transformers/time_series_transformers_architecture.py
CHANGED
@@ -25,25 +25,16 @@ from typing import Optional, Tuple, Union
|
|
25
25
|
|
26
26
|
import torch
|
27
27
|
from torch import nn
|
28
|
-
from transformers.modeling_attn_mask_utils import
|
29
|
-
|
30
|
-
)
|
31
|
-
from transformers.modeling_outputs import (
|
32
|
-
BaseModelOutput,
|
33
|
-
Seq2SeqLMOutput,
|
34
|
-
)
|
28
|
+
from transformers.modeling_attn_mask_utils import _prepare_4d_causal_attention_mask
|
29
|
+
from transformers.modeling_outputs import BaseModelOutput, Seq2SeqLMOutput
|
35
30
|
from transformers.utils import logging
|
36
31
|
|
37
|
-
from ....ops import register_rbln_custom_cache_update, register_rbln_custom_paged_add_softmax_attention
|
38
|
-
|
39
32
|
|
40
33
|
logger = logging.get_logger(__name__)
|
41
34
|
|
42
35
|
|
43
36
|
class TimeSeriesTransformersWrapper:
|
44
37
|
def __init__(self, model, num_parallel_samples):
|
45
|
-
register_rbln_custom_cache_update()
|
46
|
-
register_rbln_custom_paged_add_softmax_attention()
|
47
38
|
self.encoder = TimeSeriesTransformersEncoderWrapper(model)
|
48
39
|
self.decoder = TimeSeriesTransformersDecoderWrapper(model, num_parallel_samples)
|
49
40
|
|
@@ -181,7 +172,6 @@ class TimeSeriesTransformersDecoder(nn.Module):
|
|
181
172
|
hidden_states = decoder_layer(
|
182
173
|
hidden_states,
|
183
174
|
attention_mask=attention_mask,
|
184
|
-
# encoder_attention_mask=encoder_attention_mask,
|
185
175
|
self_past_key_value=self_past_key_value,
|
186
176
|
cross_past_key_value=cross_past_key_value,
|
187
177
|
cache_position=cache_position,
|
@@ -285,16 +275,16 @@ class TimeSeriesTransformersSelfAttention(TimeSeriesTransformersAttention):
|
|
285
275
|
|
286
276
|
block_size = past_key_value[0].shape[-2]
|
287
277
|
attn_output = torch.ops.rbln_custom_ops.paged_add_softmax_attn_decode(
|
288
|
-
query_states,
|
289
|
-
key_states,
|
290
|
-
value_states,
|
291
|
-
attention_mask.unsqueeze(2),
|
292
|
-
past_key_value[0].view(1, bsz * self.num_heads, 1, -1, self.head_dim),
|
293
|
-
past_key_value[1].view(1, bsz * self.num_heads, 1, -1, self.head_dim),
|
294
|
-
cache_position.expand(bsz, 1),
|
295
|
-
torch.tensor(1.0, dtype=torch.float32), # scale
|
296
|
-
block_tables,
|
297
|
-
block_size,
|
278
|
+
q=query_states,
|
279
|
+
k=key_states,
|
280
|
+
v=value_states,
|
281
|
+
mask=attention_mask.unsqueeze(2),
|
282
|
+
kcache=past_key_value[0].view(1, bsz * self.num_heads, 1, -1, self.head_dim),
|
283
|
+
vcache=past_key_value[1].view(1, bsz * self.num_heads, 1, -1, self.head_dim),
|
284
|
+
seq=cache_position.expand(bsz, 1),
|
285
|
+
scale=torch.tensor(1.0, dtype=torch.float32), # scale
|
286
|
+
block_table=block_tables,
|
287
|
+
block_size=block_size,
|
298
288
|
)
|
299
289
|
|
300
290
|
attn_output = attn_output.view(bsz, self.num_heads, tgt_len, self.head_dim)
|
@@ -140,7 +140,6 @@ class RBLNWhisperForConditionalGeneration(RBLNModel, RBLNWhisperGenerationMixin)
|
|
140
140
|
# input_stride = self.model.encoder.conv1.stride[0] * self.model.encoder.conv2.stride[0]
|
141
141
|
self.model = WhisperModel(self.config)
|
142
142
|
self.pad_token_id = self.config.pad_token_id
|
143
|
-
self.generation_config.forced_decoder_ids = None
|
144
143
|
|
145
144
|
def can_generate(self):
|
146
145
|
return True
|
@@ -16,25 +16,15 @@ from typing import Optional, Tuple, Union
|
|
16
16
|
|
17
17
|
import torch
|
18
18
|
from torch import nn
|
19
|
-
from transformers.modeling_outputs import
|
20
|
-
BaseModelOutput,
|
21
|
-
Seq2SeqLMOutput,
|
22
|
-
)
|
19
|
+
from transformers.modeling_outputs import BaseModelOutput, Seq2SeqLMOutput
|
23
20
|
from transformers.utils import logging
|
24
21
|
|
25
|
-
from ....ops import (
|
26
|
-
register_rbln_custom_cache_update,
|
27
|
-
register_rbln_custom_paged_attention,
|
28
|
-
register_rbln_custom_paged_causal_attention,
|
29
|
-
)
|
30
|
-
|
31
22
|
|
32
23
|
logger = logging.get_logger(__name__)
|
33
24
|
|
34
25
|
|
35
26
|
class WhisperWrapper:
|
36
27
|
def __init__(self, model, use_attention_mask, rbln_token_timestamps):
|
37
|
-
register_rbln_custom_cache_update()
|
38
28
|
self.encoder = WhisperEncoderWrapper(model)
|
39
29
|
self.decoder = WhisperDecoderWrapper(
|
40
30
|
model, use_attention_mask=use_attention_mask, output_attentions=rbln_token_timestamps
|
@@ -80,9 +70,11 @@ class WhisperEncoderWrapper(torch.nn.Module):
|
|
80
70
|
|
81
71
|
# 3. update cross_attention's past_key_value to the device-dram for optimization.
|
82
72
|
batch_axis = torch.tensor(1, dtype=torch.int16)
|
83
|
-
|
73
|
+
cross_key_values = torch.ops.rbln_custom_ops.rbln_cache_update(
|
74
|
+
cross_key_values, cross_kv, b_idx[0], batch_axis
|
75
|
+
)
|
84
76
|
|
85
|
-
return
|
77
|
+
return cross_key_values
|
86
78
|
|
87
79
|
|
88
80
|
class WhisperDecoderWrapper(torch.nn.Module):
|
@@ -100,11 +92,6 @@ class WhisperDecoderWrapper(torch.nn.Module):
|
|
100
92
|
It is inspired by the BART architecture, but it is designed to be flexible and can be overridden
|
101
93
|
by subclasses to modify or add custom attributes as necessary.
|
102
94
|
"""
|
103
|
-
if self.use_attention_mask:
|
104
|
-
register_rbln_custom_paged_attention()
|
105
|
-
else:
|
106
|
-
register_rbln_custom_paged_causal_attention()
|
107
|
-
|
108
95
|
self.num_layers = self.config.decoder_layers
|
109
96
|
self.decoder = self.convert_to_rbln_conditional_generation(model)
|
110
97
|
|
@@ -310,22 +297,23 @@ class WhisperSelfAttention(WhisperAttention):
|
|
310
297
|
value_states = self._shape(self.v_proj(hidden_states), -1, bsz)
|
311
298
|
block_size = past_key_value[0].shape[-2]
|
312
299
|
|
313
|
-
args =
|
314
|
-
query_states,
|
315
|
-
key_states,
|
316
|
-
value_states,
|
317
|
-
past_key_value[0].view(bsz, self.num_heads, 1, -1, self.head_dim),
|
318
|
-
past_key_value[1].view(bsz, self.num_heads, 1, -1, self.head_dim),
|
319
|
-
cache_position,
|
320
|
-
torch.tensor(1.0, dtype=torch.float32),
|
321
|
-
block_tables,
|
322
|
-
block_size,
|
323
|
-
|
300
|
+
args = {
|
301
|
+
"q": query_states,
|
302
|
+
"k": key_states,
|
303
|
+
"v": value_states,
|
304
|
+
"kcache": past_key_value[0].view(bsz, self.num_heads, 1, -1, self.head_dim),
|
305
|
+
"vcache": past_key_value[1].view(bsz, self.num_heads, 1, -1, self.head_dim),
|
306
|
+
"seq": cache_position.expand(bsz, 1),
|
307
|
+
"scale": torch.tensor(1.0, dtype=torch.float32),
|
308
|
+
"block_table": block_tables,
|
309
|
+
"block_size": block_size,
|
310
|
+
}
|
311
|
+
|
324
312
|
if attention_mask is not None:
|
325
|
-
args
|
326
|
-
attn_output = torch.ops.rbln_custom_ops.paged_attn_decode(
|
313
|
+
args["mask"] = attention_mask.unsqueeze(2)
|
314
|
+
attn_output = torch.ops.rbln_custom_ops.paged_attn_decode(**args)
|
327
315
|
else:
|
328
|
-
attn_output = torch.ops.rbln_custom_ops.paged_causal_attn_decode(
|
316
|
+
attn_output = torch.ops.rbln_custom_ops.paged_causal_attn_decode(**args)
|
329
317
|
|
330
318
|
attn_output = attn_output.view(bsz, self.num_heads, tgt_len, self.head_dim)
|
331
319
|
attn_output = attn_output.transpose(1, 2)
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: optimum-rbln
|
3
|
-
Version: 0.7.
|
3
|
+
Version: 0.7.4a3
|
4
4
|
Summary: Optimum RBLN is the interface between the Hugging Face 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
|
@@ -1,6 +1,6 @@
|
|
1
1
|
optimum/rbln/__init__.py,sha256=qW45z47BiNLTDtRFEhVEzr4THNFX0ygqCbdNKqI0biI,6992
|
2
|
-
optimum/rbln/__version__.py,sha256=
|
3
|
-
optimum/rbln/modeling.py,sha256=
|
2
|
+
optimum/rbln/__version__.py,sha256=nalKM3MAIzqBEgJ0zLy3uyayE-SPYE3s6kSX_TtadoM,513
|
3
|
+
optimum/rbln/modeling.py,sha256=0Hh75PVNDchAx9xd5dDSwrhV9PkT1lDuiJy-Wm2hchA,8797
|
4
4
|
optimum/rbln/modeling_base.py,sha256=dNCL-BhrWCpuOVkZaj8-MW567Tf4lLo3p3Z3ldjWJfU,21779
|
5
5
|
optimum/rbln/modeling_config.py,sha256=7104bxmrvKW4Q6XTruQayiIGl8GHDFmPkJ3cknMIInE,11335
|
6
6
|
optimum/rbln/diffusers/__init__.py,sha256=Hq87CbtiCy85YmK2SB-OmUyfv77oe3j4bsTenTRnu6w,3623
|
@@ -41,10 +41,10 @@ optimum/rbln/diffusers/pipelines/stable_diffusion_xl/__init__.py,sha256=9iIMZYvp
|
|
41
41
|
optimum/rbln/diffusers/pipelines/stable_diffusion_xl/pipeline_stable_diffusion_xl.py,sha256=OvB5bxX6HUiqJeIc3uukuEmUXYEx1pTqGNOtdG2l1m8,902
|
42
42
|
optimum/rbln/diffusers/pipelines/stable_diffusion_xl/pipeline_stable_diffusion_xl_img2img.py,sha256=3aB1Rw-OgKytQOHwOaShbEvq_XVHPOGvsGm8pstEmKU,930
|
43
43
|
optimum/rbln/diffusers/pipelines/stable_diffusion_xl/pipeline_stable_diffusion_xl_inpaint.py,sha256=MzVP1wscaO1sUIiBIPJqG6zuGyez9VUbA42-JSIm-mk,930
|
44
|
-
optimum/rbln/ops/__init__.py,sha256=
|
45
|
-
optimum/rbln/ops/attn.py,sha256=
|
46
|
-
optimum/rbln/ops/flash_attn.py,sha256=
|
47
|
-
optimum/rbln/ops/kv_cache_update.py,sha256=
|
44
|
+
optimum/rbln/ops/__init__.py,sha256=rSz6mfC0aGbNYjMaNSsOZSPYxPRenW8DWbNpAkjTfAc,703
|
45
|
+
optimum/rbln/ops/attn.py,sha256=x02yFLk7FcONFqfow0ROmVy9fmxo5Pw0SPCiDY3AZNg,9012
|
46
|
+
optimum/rbln/ops/flash_attn.py,sha256=NmCqUdMTzgJ4sbYGj8IWXJEsLWvbuCMponR01w5DK6w,4121
|
47
|
+
optimum/rbln/ops/kv_cache_update.py,sha256=HjnHBR-oFrJQibsVnkYb0P5_-wEma8jl0mkjkylwakU,1270
|
48
48
|
optimum/rbln/ops/linear.py,sha256=1_7Hg-9wXxhu97fqPobotLQx17k7VPeSSL91_9Z7EDg,1018
|
49
49
|
optimum/rbln/transformers/__init__.py,sha256=rW2wEgNpkcBwrrib2tui5sEpw04s1YUDHB50m2L7Os8,4353
|
50
50
|
optimum/rbln/transformers/modeling_alias.py,sha256=yx7FnZQWAnrWzivaO5hI7T6i-fyLzt2tMIXG2oDNbPo,1657
|
@@ -54,15 +54,15 @@ optimum/rbln/transformers/models/__init__.py,sha256=Qyt9E61FDpnyAXTmRKDbv7CTtn-m
|
|
54
54
|
optimum/rbln/transformers/models/auto/__init__.py,sha256=GvGbb3ZpMv-h6euXeZ42jSizoOfrL2O1uvpAnfKxYEo,1034
|
55
55
|
optimum/rbln/transformers/models/auto/auto_factory.py,sha256=IK9jFrJ3EEzYQa9_aKpcp2TO68M5YGkA-HcfBVpA2QU,7027
|
56
56
|
optimum/rbln/transformers/models/auto/modeling_auto.py,sha256=Un9qoqdy3dO8JBza_bTJF_6_fRVNM9QisihSgTRFI-o,3933
|
57
|
-
optimum/rbln/transformers/models/bart/__init__.py,sha256=
|
57
|
+
optimum/rbln/transformers/models/bart/__init__.py,sha256=MqOlNX0QJvvLzTkTPd3SF-lq4PLeztXGfLHyJVMN6uU,738
|
58
58
|
optimum/rbln/transformers/models/bart/bart_architecture.py,sha256=Oo-Cdne7igKEex8wwP-gztKJHgs5GLHQjK1oc3IZIDE,5801
|
59
59
|
optimum/rbln/transformers/models/bart/modeling_bart.py,sha256=naFpsOSjNRG8s5QPjeAsYCk2oJCxnn0Au0aYnMKZOBY,5679
|
60
60
|
optimum/rbln/transformers/models/bert/__init__.py,sha256=YVV7k_laU6yJBawZrgjIWjRmIF-Y4oQQHqyf8lsraQs,691
|
61
61
|
optimum/rbln/transformers/models/bert/modeling_bert.py,sha256=p3utRqf3dv9_RkHwaMCa1EfXttNJkqCJUIZo3CeZ9YY,4674
|
62
62
|
optimum/rbln/transformers/models/clip/__init__.py,sha256=H9vuBwrmFO0-CqZhXUrKF-uQL6igCqMlqrT1X_ELaAI,754
|
63
63
|
optimum/rbln/transformers/models/clip/modeling_clip.py,sha256=NiSm7bHs4SReHDUr53BBWSX0Y8bkKOeUSpsBDrp8YDw,6628
|
64
|
-
optimum/rbln/transformers/models/decoderonly/__init__.py,sha256=
|
65
|
-
optimum/rbln/transformers/models/decoderonly/decoderonly_architecture.py,sha256=
|
64
|
+
optimum/rbln/transformers/models/decoderonly/__init__.py,sha256=vFJvOsmUuvxLkhZELb5JKok-I1Bh_xCn1vb3pjMw1Ug,929
|
65
|
+
optimum/rbln/transformers/models/decoderonly/decoderonly_architecture.py,sha256=gIkXCtjbcUbd4KcB_MFoPdhXM4MdrZNeKXnxK5OrT4c,41255
|
66
66
|
optimum/rbln/transformers/models/decoderonly/modeling_decoderonly.py,sha256=qNnWSe3p2LDwNJ6utrilsqid-rQ8YLloqYkSOZamvhs,39918
|
67
67
|
optimum/rbln/transformers/models/dpt/__init__.py,sha256=gP1tkR3XMNlHq1GT87ugIVvb2o_1eAUg1JaniXjy1Lw,651
|
68
68
|
optimum/rbln/transformers/models/dpt/modeling_dpt.py,sha256=ZsS2SOiqcA4azULB-WFEMQZbgIoOyVUKqVKqrw_tWzA,3430
|
@@ -93,20 +93,20 @@ optimum/rbln/transformers/models/qwen2/__init__.py,sha256=RAMWc21W_2I6DH9xBjeNxP
|
|
93
93
|
optimum/rbln/transformers/models/qwen2/modeling_qwen2.py,sha256=9-aFDvjMzPNUyGOz0qo33RE18bUFGYZ3Wt_68zb5uJY,1530
|
94
94
|
optimum/rbln/transformers/models/qwen2/qwen2_architecture.py,sha256=XlNAMYAcDLohnSAhIFGKOPuCB5XLgzYs5ABWdeQSaZs,720
|
95
95
|
optimum/rbln/transformers/models/seq2seq/__init__.py,sha256=EmEMV4rOYqKyruX85d0fR73-b8N6BSD6CPcbpYdBuVk,651
|
96
|
-
optimum/rbln/transformers/models/seq2seq/modeling_seq2seq.py,sha256=
|
97
|
-
optimum/rbln/transformers/models/seq2seq/seq2seq_architecture.py,sha256=
|
98
|
-
optimum/rbln/transformers/models/t5/__init__.py,sha256=
|
99
|
-
optimum/rbln/transformers/models/t5/modeling_t5.py,sha256
|
100
|
-
optimum/rbln/transformers/models/t5/t5_architecture.py,sha256=
|
101
|
-
optimum/rbln/transformers/models/time_series_transformers/__init__.py,sha256=
|
96
|
+
optimum/rbln/transformers/models/seq2seq/modeling_seq2seq.py,sha256=PQQ9dZyFToNGKYp1GeKXYHKaLuAVyeZwgdCfylmWY6Y,17837
|
97
|
+
optimum/rbln/transformers/models/seq2seq/seq2seq_architecture.py,sha256=w5pMnWbJhgYmpl5NT_vJEzcb4RfEbHfalJ371IL3wp8,18685
|
98
|
+
optimum/rbln/transformers/models/t5/__init__.py,sha256=r6RJKPbbAoz_jCWC_yTyC9jBGYYze-vauPt1ahWax0E,725
|
99
|
+
optimum/rbln/transformers/models/t5/modeling_t5.py,sha256=-fG-h0wwsfjZ3par0QHbXKA7hbvw_lPJOIf8iXQDOfM,8082
|
100
|
+
optimum/rbln/transformers/models/t5/t5_architecture.py,sha256=YdFOr8LfBhEXuPsLZDfYjmUSI-a3Otrzye1bOf8NUyw,9678
|
101
|
+
optimum/rbln/transformers/models/time_series_transformers/__init__.py,sha256=KIeTMfC-8Q4-QdTdzAybVrpPf0nVI7AuGOGAxq8C59M,1148
|
102
102
|
optimum/rbln/transformers/models/time_series_transformers/modeling_time_series_transformers.py,sha256=1Ippt0Rmt2TxJ5X4-4tlALQOkKmOfMaTrbOLWIUIKWw,16614
|
103
|
-
optimum/rbln/transformers/models/time_series_transformers/time_series_transformers_architecture.py,sha256=
|
103
|
+
optimum/rbln/transformers/models/time_series_transformers/time_series_transformers_architecture.py,sha256=XJDjQGbWXUq4ZimNojlcbm3mTDpxUMCl6tkFSzfYFl4,13769
|
104
104
|
optimum/rbln/transformers/models/wav2vec2/__init__.py,sha256=YpgA0K-vyg9veh0eL_jxauosbRpb_kpGKHvvQLBspKM,649
|
105
105
|
optimum/rbln/transformers/models/wav2vec2/modeling_wav2vec2.py,sha256=JYJmV52j6cBwim4RanVJryfKnV80V96ol0A-oR6o7cg,3856
|
106
|
-
optimum/rbln/transformers/models/whisper/__init__.py,sha256=
|
106
|
+
optimum/rbln/transformers/models/whisper/__init__.py,sha256=Do4rVonghYiIa9zgHh4A0XtF-GQNy6UmCetO_KmIUuc,715
|
107
107
|
optimum/rbln/transformers/models/whisper/generation_whisper.py,sha256=GIHTca3b1VtW81kp7BzKQ7f77c2t9OsEsbZetripgDo,4582
|
108
|
-
optimum/rbln/transformers/models/whisper/modeling_whisper.py,sha256=
|
109
|
-
optimum/rbln/transformers/models/whisper/whisper_architecture.py,sha256=
|
108
|
+
optimum/rbln/transformers/models/whisper/modeling_whisper.py,sha256=HB7BF-SG_QIqeid-PN8Tn9qVTeiv897RUOyYzapa8zA,18127
|
109
|
+
optimum/rbln/transformers/models/whisper/whisper_architecture.py,sha256=zEwfn8DDTbt2TN7lHKMZG9JXZc5WdW9Cp8mH4OVfo3s,13949
|
110
110
|
optimum/rbln/transformers/models/xlm_roberta/__init__.py,sha256=fC7iNcdxBZ_6eOF2snStmf8r2M3c8O_-XcXnQEaHQCE,653
|
111
111
|
optimum/rbln/transformers/models/xlm_roberta/modeling_xlm_roberta.py,sha256=8YNLz0bc5ze-QuU8rN-QhUfGzlSUs3iMJiWTxO3o6AM,4366
|
112
112
|
optimum/rbln/transformers/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
@@ -120,7 +120,7 @@ optimum/rbln/utils/model_utils.py,sha256=DfD_Z2qvZHqcddXqnzTM1AN8khanj3-DXK2lJvV
|
|
120
120
|
optimum/rbln/utils/runtime_utils.py,sha256=5-DYniyP59nx-mrrbi7AqA77L85b4Cm5oLpaxidSyss,3699
|
121
121
|
optimum/rbln/utils/save_utils.py,sha256=hG5uOtYmecSXZuGTvCXsTM-SiyZpr5q3InUGCCq_jzQ,3619
|
122
122
|
optimum/rbln/utils/submodule.py,sha256=oZoGrItB8WqY4i-K9WJPlLlcLohc1YGB9OHB8_XZw3A,4071
|
123
|
-
optimum_rbln-0.7.
|
124
|
-
optimum_rbln-0.7.
|
125
|
-
optimum_rbln-0.7.
|
126
|
-
optimum_rbln-0.7.
|
123
|
+
optimum_rbln-0.7.4a3.dist-info/METADATA,sha256=vWeZ1sK6mCZShFnCI2Qe6qY5dCmXzArApl5NQWERCNA,5300
|
124
|
+
optimum_rbln-0.7.4a3.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
125
|
+
optimum_rbln-0.7.4a3.dist-info/licenses/LICENSE,sha256=QwcOLU5TJoTeUhuIXzhdCEEDDvorGiC6-3YTOl4TecE,11356
|
126
|
+
optimum_rbln-0.7.4a3.dist-info/RECORD,,
|
File without changes
|
File without changes
|