Update Wall-X to 1.1.0 (#104)
This commit is contained in:
@@ -0,0 +1,56 @@
|
||||
"""Qwen2.5 VLA adapter - variant-specific overrides on top of VLAdapter."""
|
||||
|
||||
from wall_x.model.registry import register_model
|
||||
from wall_x.trainer.adapters.vla_model_adapter import VLAdapter
|
||||
|
||||
|
||||
@register_model("qwen2_5")
|
||||
class Qwen2_5Adapter(VLAdapter):
|
||||
MODEL_TYPE = "qwen2_5"
|
||||
|
||||
@classmethod
|
||||
def model_class(cls):
|
||||
from wall_x.model.qact.qwen2_5 import Qwen2_5_VLMoEForAction
|
||||
|
||||
return Qwen2_5_VLMoEForAction
|
||||
|
||||
@classmethod
|
||||
def config_class(cls):
|
||||
from wall_x.model.qact.qwen2_5 import Qwen2_5_VLConfig
|
||||
|
||||
return Qwen2_5_VLConfig
|
||||
|
||||
@classmethod
|
||||
def inference_model_class(cls):
|
||||
return cls.model_class()
|
||||
|
||||
def get_transformer_layer_cls(self):
|
||||
layer_classes = set()
|
||||
try:
|
||||
from transformers.models.qwen2_vl.modeling_qwen2_vl import (
|
||||
Qwen2VLDecoderLayer,
|
||||
)
|
||||
|
||||
layer_classes.add(Qwen2VLDecoderLayer)
|
||||
except ImportError:
|
||||
pass
|
||||
try:
|
||||
from wall_x.model.qact.qwen2_5.modeling_qwen2_5_vl import (
|
||||
Qwen2_5_VLDecoderLayer,
|
||||
)
|
||||
|
||||
layer_classes.add(Qwen2_5_VLDecoderLayer)
|
||||
except ImportError:
|
||||
pass
|
||||
return layer_classes if layer_classes else None
|
||||
|
||||
@staticmethod
|
||||
def log_attention_implementation(logger, model):
|
||||
logger.info(
|
||||
f"*** model attention implementation: "
|
||||
f"{model.model._attn_implementation} ***"
|
||||
)
|
||||
logger.info(
|
||||
f"*** model.visual attention implementation: "
|
||||
f"{model.visual.config._attn_implementation} ***"
|
||||
)
|
||||
Reference in New Issue
Block a user