Skip to content

Commit 4fa73b9

Browse files
feat: transformers to v5 (#151)
Signed-off-by: Peter Staar <taa@zurich.ibm.com>
1 parent 6303753 commit 4fa73b9

5 files changed

Lines changed: 115 additions & 50 deletions

File tree

docling_ibm_models/code_formula_model/code_formula_predictor.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -254,7 +254,7 @@ def predict(
254254
)
255255

256256
if self._device == "cpu":
257-
output_ids_list = self._model.generate(
257+
output_ids_list = self._model.generate( # type: ignore[misc]
258258
input_ids=prompt_ids,
259259
attention_mask=attention_mask,
260260
images=images_tensor,
@@ -267,7 +267,7 @@ def predict(
267267
)
268268
else:
269269
with torch.autocast(device_type=self._device, dtype=torch.bfloat16):
270-
output_ids_list = self._model.generate(
270+
output_ids_list = self._model.generate( # type: ignore[misc]
271271
prompt_ids,
272272
images=images_tensor,
273273
do_sample=do_sample,

docling_ibm_models/code_formula_model/models/sam_opt_image_processor.py

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,9 @@
11
from PIL import Image
22
from torchvision.transforms import functional as F
3-
from transformers import AutoImageProcessor
4-
from transformers.image_processing_utils import ImageProcessingMixin
3+
from transformers import AutoImageProcessor, BaseImageProcessor
54

65

7-
class SamOptImageProcessor(ImageProcessingMixin):
6+
class SamOptImageProcessor(BaseImageProcessor):
87

98
def __init__(self, size=(1024, 1024), mean=None, std=None, **kwargs):
109
super().__init__(**kwargs)

docling_ibm_models/tableformer_v2/model.py

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,13 @@
1818
import torch
1919
import torch.nn as nn
2020
from torchvision.models import efficientnet_v2_s
21-
from transformers import AutoConfig, AutoModel, PretrainedConfig, PreTrainedModel
21+
from transformers import (
22+
AutoConfig,
23+
AutoModel,
24+
GenerationMixin,
25+
PretrainedConfig,
26+
PreTrainedModel,
27+
)
2228
from transformers.modeling_outputs import ModelOutput
2329

2430
_log = logging.getLogger(__name__)
@@ -539,7 +545,7 @@ def __init__(
539545
# =============================================================================
540546

541547

542-
class TableFormerV2(PreTrainedModel):
548+
class TableFormerV2(PreTrainedModel, GenerationMixin):
543549
r"""
544550
TableFormerV2: CPU-optimized model for table structure recognition (inference only).
545551
@@ -591,6 +597,8 @@ def __init__(self, config: TableFormerV2Config):
591597

592598
self.data_cells = config.data_cells
593599

600+
self.post_init()
601+
594602
def _is_profiling_enabled(self) -> bool:
595603
r"""
596604
Check if profiling is enabled by checking if AggProfiler has cycles.
@@ -779,7 +787,7 @@ def forward(
779787
past_key_values=present_kv,
780788
)
781789

782-
def prepare_inputs_for_generation(
790+
def prepare_inputs_for_generation( # type: ignore[override]
783791
self,
784792
input_ids: torch.Tensor,
785793
past: Optional[Tuple] = None,
@@ -795,7 +803,7 @@ def prepare_inputs_for_generation(
795803
"use_cache": True,
796804
}
797805

798-
def generate(
806+
def generate( # type: ignore[override]
799807
self,
800808
images: torch.Tensor,
801809
tokenizer,

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ dependencies = [
3939
'safetensors[torch] (>=0.4.3,<1)',
4040
'pydantic (>=2.0.0,<3.0.0)',
4141
'docling-core (>=2.19.0,<3.0.0)',
42-
'transformers (>=4.42.0,<5.0.0)',
42+
'transformers (>=4.42.0,<6.0.0,!=5.0.*,!=5.1.*,!=5.2.*,!=5.3.*)',
4343
'numpy (>=1.24.4,<3.0.0)',
4444
"rtree>=1.0.0",
4545
'accelerate (>=1.2.1,<2.0.0)',

0 commit comments

Comments
 (0)