From a656ff1708789f86a4ad73b600c70bfc21e124c0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Xavier=20Dupr=C3=A9?= Date: Fri, 28 Nov 2025 17:57:55 +0100 Subject: [PATCH 1/2] Fix access rope_parameters for transformers>=5 --- .../_patch_transformers_rotary_embedding.py | 20 ++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) diff --git a/onnx_diagnostic/torch_export_patches/patches/_patch_transformers_rotary_embedding.py b/onnx_diagnostic/torch_export_patches/patches/_patch_transformers_rotary_embedding.py index 94f7272d..cb55b3b2 100644 --- a/onnx_diagnostic/torch_export_patches/patches/_patch_transformers_rotary_embedding.py +++ b/onnx_diagnostic/torch_export_patches/patches/_patch_transformers_rotary_embedding.py @@ -48,16 +48,26 @@ def patched__compute_dynamic_ntk_parameters( max_position_embeddings = rope_kwargs["max_position_embeddings"] factor = rope_kwargs["factor"] elif config is not None: - base = config.rope_theta - partial_rotary_factor = ( - config.partial_rotary_factor if hasattr(config, "partial_rotary_factor") else 1.0 - ) + if hasattr(config, "rope_theta"): + # transformers<5 + base = config.rope_theta + partial_rotary_factor = ( + config.partial_rotary_factor + if hasattr(config, "partial_rotary_factor") + else 1.0 + ) + factor = config.rope_scaling["factor"] + else: + print("-----") + print(config) + base = config.rope_parameters["rope_theta"] + partial_rotary_factor = config.rope_parameters["partial_rotary_factor"] + factor = config.rope_parameters["factor"] head_dim = getattr( config, "head_dim", config.hidden_size // config.num_attention_heads ) dim = int(head_dim * partial_rotary_factor) max_position_embeddings = config.max_position_embeddings - factor = config.rope_scaling["factor"] attention_factor = 1.0 # Unused in this type of RoPE From efcc2c36b9f2624df84e18863f2c862f07c4ca26 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Xavier=20Dupr=C3=A9?= Date: Fri, 28 Nov 2025 17:59:08 +0100 Subject: [PATCH 2/2] doc --- CHANGELOGS.rst | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOGS.rst b/CHANGELOGS.rst index 85f20dbf..aa065ad3 100644 --- a/CHANGELOGS.rst +++ b/CHANGELOGS.rst @@ -4,6 +4,7 @@ Change Logs 0.8.3 +++++ +* :pr:`330`: fixes access rope_parameters for ``transformers>=5`` * :pr:`326`: use ConcatFromSequence in LoopMHA with the loop * :pr:`325`: adds plug for LoopMHA, extends the unit tests to measure the discrepancies * :pr:`324`: supports FunctionProto with arguments in OnnxruntimeEvaluator