Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions docs/source/en/model_doc/qwen3_5.md
Original file line number Diff line number Diff line change
Expand Up @@ -66,6 +66,11 @@ TODO
[[autodoc]] Qwen3_5ForCausalLM
- forward

## Qwen3_5ForSequenceClassification

[[autodoc]] Qwen3_5ForSequenceClassification
- forward

## Qwen3_5ForConditionalGeneration

[[autodoc]] Qwen3_5ForConditionalGeneration
Expand Down
2 changes: 2 additions & 0 deletions src/transformers/models/auto/modeling_auto.py
Original file line number Diff line number Diff line change
Expand Up @@ -1253,6 +1253,8 @@ class _BaseModelWithGenerate(PreTrainedModel, GenerationMixin):
("qwen2", "Qwen2ForSequenceClassification"),
("qwen2_moe", "Qwen2MoeForSequenceClassification"),
("qwen3", "Qwen3ForSequenceClassification"),
("qwen3_5", "Qwen3_5ForSequenceClassification"),
("qwen3_5_text", "Qwen3_5ForSequenceClassification"),
("qwen3_moe", "Qwen3MoeForSequenceClassification"),
("qwen3_next", "Qwen3NextForSequenceClassification"),
("reformer", "ReformerForSequenceClassification"),
Expand Down
7 changes: 6 additions & 1 deletion src/transformers/models/qwen3_5/modeling_qwen3_5.py
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@
from ...integrations import use_kernelized_func
from ...masking_utils import create_causal_mask
from ...modeling_flash_attention_utils import FlashAttentionKwargs
from ...modeling_layers import GradientCheckpointingLayer
from ...modeling_layers import GenericForSequenceClassification, GradientCheckpointingLayer
from ...modeling_outputs import (
BaseModelOutputWithPast,
BaseModelOutputWithPooling,
Expand Down Expand Up @@ -1871,6 +1871,10 @@ def forward(
)


class Qwen3_5ForSequenceClassification(GenericForSequenceClassification, Qwen3_5PreTrainedModel):
config: Qwen3_5TextConfig


@dataclass
@auto_docstring(
custom_intro="""
Expand Down Expand Up @@ -2283,6 +2287,7 @@ def _expand_dict_for_generation(dict_to_expand):
"Qwen3_5TextModel",
"Qwen3_5Model",
"Qwen3_5ForCausalLM",
"Qwen3_5ForSequenceClassification",
"Qwen3_5ForConditionalGeneration",
"Qwen3_5PreTrainedModel",
]
7 changes: 6 additions & 1 deletion src/transformers/models/qwen3_5/modular_qwen3_5.py
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@
from ... import initialization as init
from ...cache_utils import Cache
from ...masking_utils import create_causal_mask
from ...modeling_layers import GradientCheckpointingLayer
from ...modeling_layers import GenericForSequenceClassification, GradientCheckpointingLayer
from ...modeling_outputs import BaseModelOutputWithPast, BaseModelOutputWithPooling
from ...modeling_rope_utils import RopeParameters
from ...modeling_utils import PreTrainedModel
Expand Down Expand Up @@ -807,6 +807,10 @@ def __init__(self, config):
self.model = Qwen3_5TextModel(config)


class Qwen3_5ForSequenceClassification(GenericForSequenceClassification, Qwen3_5PreTrainedModel):
config: Qwen3_5TextConfig


class Qwen3_5ForConditionalGeneration(Qwen3VLForConditionalGeneration):
def get_video_features(
self,
Expand All @@ -828,6 +832,7 @@ def get_image_features(
"Qwen3_5TextModel",
"Qwen3_5Model",
"Qwen3_5ForCausalLM",
"Qwen3_5ForSequenceClassification",
"Qwen3_5ForConditionalGeneration",
"Qwen3_5PreTrainedModel",
]
2 changes: 2 additions & 0 deletions tests/models/qwen3_5/test_modeling_qwen3_5.py
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,7 @@
Qwen3_5Config,
Qwen3_5ForCausalLM,
Qwen3_5ForConditionalGeneration,
Qwen3_5ForSequenceClassification,
Qwen3_5Model,
Qwen3_5TextConfig,
Qwen3_5TextModel,
Expand All @@ -49,6 +50,7 @@ class Qwen3_5TextModelTester(CausalLMModelTester):
if is_torch_available():
base_model_class = Qwen3_5TextModel
causal_lm_class = Qwen3_5ForCausalLM
sequence_classification_class = Qwen3_5ForSequenceClassification

def __init__(self, parent):
super().__init__(parent=parent)
Expand Down