optimum-rbln 0.7.4a1__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/decoderonly/modeling_decoderonly.py +39 -20
- 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/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 +22 -34
- {optimum_rbln-0.7.4a1.dist-info → optimum_rbln-0.7.4a3.dist-info}/METADATA +1 -1
- {optimum_rbln-0.7.4a1.dist-info → optimum_rbln-0.7.4a3.dist-info}/RECORD +23 -23
- {optimum_rbln-0.7.4a1.dist-info → optimum_rbln-0.7.4a3.dist-info}/WHEEL +0 -0
- {optimum_rbln-0.7.4a1.dist-info → optimum_rbln-0.7.4a3.dist-info}/licenses/LICENSE +0 -0
@@ -18,12 +18,6 @@ import torch
|
|
18
18
|
from torch import nn
|
19
19
|
from transformers.utils import logging
|
20
20
|
|
21
|
-
from ....ops import (
|
22
|
-
register_rbln_custom_cache_update,
|
23
|
-
register_rbln_custom_paged_attention,
|
24
|
-
register_rbln_custom_paged_causal_attention,
|
25
|
-
)
|
26
|
-
|
27
21
|
|
28
22
|
logger = logging.get_logger(__name__)
|
29
23
|
|
@@ -59,7 +53,6 @@ class Seq2SeqEncoderWrapper(nn.Module):
|
|
59
53
|
|
60
54
|
def __init__(self, model: nn.Module, enc_max_seq_len: int):
|
61
55
|
super().__init__()
|
62
|
-
register_rbln_custom_cache_update()
|
63
56
|
self.config = model.config
|
64
57
|
self.encoder = model.get_encoder()
|
65
58
|
self.encoder_max_length = enc_max_seq_len
|
@@ -90,8 +83,8 @@ class Seq2SeqEncoderWrapper(nn.Module):
|
|
90
83
|
self,
|
91
84
|
input_ids: torch.Tensor,
|
92
85
|
attention_mask: torch.Tensor,
|
93
|
-
cross_key_values: torch.Tensor,
|
94
86
|
b_idx: torch.Tensor,
|
87
|
+
*cross_key_values: Tuple[torch.Tensor],
|
95
88
|
) -> Tuple[torch.Tensor]:
|
96
89
|
# 1. get encoder last_hidden_states
|
97
90
|
encoder_outputs = self.encoder(input_ids=input_ids, attention_mask=attention_mask)
|
@@ -110,13 +103,15 @@ class Seq2SeqEncoderWrapper(nn.Module):
|
|
110
103
|
cross_kv.append(past_k)
|
111
104
|
cross_kv.append(past_v)
|
112
105
|
|
113
|
-
cross_kv = torch.stack(cross_kv, dim=0)
|
114
|
-
|
115
106
|
# 3. update the cross_attention's past_key_value direct to the device-dram for optimization.
|
116
|
-
batch_axis = torch.tensor(
|
117
|
-
|
107
|
+
batch_axis = torch.tensor(0, dtype=torch.int16)
|
108
|
+
cross_key_values = list(cross_key_values)
|
109
|
+
for i in range(self.n_layer * 2):
|
110
|
+
cross_key_values[i] = torch.ops.rbln_custom_ops.rbln_cache_update(
|
111
|
+
cross_key_values[i], cross_kv[i], b_idx[0], batch_axis
|
112
|
+
)
|
118
113
|
|
119
|
-
return
|
114
|
+
return cross_key_values
|
120
115
|
|
121
116
|
|
122
117
|
class Seq2SeqDecoderWrapper(nn.Module):
|
@@ -146,11 +141,6 @@ class Seq2SeqDecoderWrapper(nn.Module):
|
|
146
141
|
It is inspired by the BART architecture, but it is designed to be flexible and can be overridden
|
147
142
|
by subclasses to modify or add custom attributes as necessary.
|
148
143
|
"""
|
149
|
-
if self.use_attention_mask:
|
150
|
-
register_rbln_custom_paged_attention()
|
151
|
-
else:
|
152
|
-
register_rbln_custom_paged_causal_attention()
|
153
|
-
|
154
144
|
self.num_layers = self.config.decoder_layers
|
155
145
|
self.conditional_generation = self.convert_to_rbln_conditional_generation(model)
|
156
146
|
|
@@ -176,16 +166,17 @@ class Seq2SeqDecoderWrapper(nn.Module):
|
|
176
166
|
encoder_attention_mask,
|
177
167
|
cache_position,
|
178
168
|
block_tables,
|
179
|
-
|
180
|
-
*self_kv_cache,
|
169
|
+
*kv_cache,
|
181
170
|
) = args
|
182
171
|
|
183
172
|
else:
|
184
173
|
attention_mask = None
|
185
|
-
(input_ids, encoder_attention_mask, cache_position, block_tables,
|
174
|
+
(input_ids, encoder_attention_mask, cache_position, block_tables, *kv_cache) = args
|
186
175
|
|
187
176
|
self_past_key_values = ()
|
188
177
|
cross_past_key_values = ()
|
178
|
+
self_kv_cache = kv_cache[self.num_layers * 2 :]
|
179
|
+
cross_kv_cache = kv_cache[: self.num_layers * 2]
|
189
180
|
for i in range(0, self.num_layers * 2, 2):
|
190
181
|
self_past_key_values = self_past_key_values + ((self_kv_cache[i], self_kv_cache[i + 1]),)
|
191
182
|
cross_past_key_values = cross_past_key_values + ((cross_kv_cache[i], cross_kv_cache[i + 1]),)
|
@@ -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
|
|
@@ -190,11 +177,11 @@ class WhisperDecoder(nn.Module):
|
|
190
177
|
all_hiddens = []
|
191
178
|
for i in range(inputs_embeds.shape[0]):
|
192
179
|
position_id = cache_position[i]
|
193
|
-
position = self.embed_positions
|
180
|
+
position = self.embed_positions.weight[position_id]
|
194
181
|
batch_hidden = position + inputs_embeds[i]
|
195
182
|
all_hiddens.append(batch_hidden)
|
196
183
|
|
197
|
-
hidden_states = torch.
|
184
|
+
hidden_states = torch.cat(all_hiddens, dim=0).unsqueeze(1)
|
198
185
|
|
199
186
|
# prepare attn mask (normal attention - masked)
|
200
187
|
if attention_mask is not None:
|
@@ -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,16 +54,16 @@ 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=
|
66
|
-
optimum/rbln/transformers/models/decoderonly/modeling_decoderonly.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
|
+
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
|
69
69
|
optimum/rbln/transformers/models/exaone/__init__.py,sha256=zYH_5tVa8-juEdsOIky7I33WSC3Zuhoq1upI0OHYeVw,859
|
@@ -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=
|
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
99
|
optimum/rbln/transformers/models/t5/modeling_t5.py,sha256=-fG-h0wwsfjZ3par0QHbXKA7hbvw_lPJOIf8iXQDOfM,8082
|
100
|
-
optimum/rbln/transformers/models/t5/t5_architecture.py,sha256=
|
101
|
-
optimum/rbln/transformers/models/time_series_transformers/__init__.py,sha256=
|
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
|