Skip to content

vllm.model_executor.models.module_mapping

MultiModelKeys dataclass

Source code in vllm/model_executor/models/module_mapping.py
@dataclass
class MultiModelKeys:
    language_model: list[str] = field(default_factory=list)
    connector: list[str] = field(default_factory=list)
    # vision tower and audio tower
    tower_model: list[str] = field(default_factory=list)
    generator: list[str] = field(default_factory=list)

    @staticmethod
    def from_string_field(
        language_model: str | list[str] = None,
        connector: str | list[str] = None,
        tower_model: str | list[str] = None,
        generator: str | list[str] = None,
        **kwargs,
    ) -> "MultiModelKeys":
        def to_list(value):
            if value is None:
                return []
            return [value] if isinstance(value, str) else list(value)

        return MultiModelKeys(
            language_model=to_list(language_model),
            connector=to_list(connector),
            tower_model=to_list(tower_model),
            generator=to_list(generator),
            **kwargs,
        )

connector class-attribute instance-attribute

connector: list[str] = field(default_factory=list)

generator class-attribute instance-attribute

generator: list[str] = field(default_factory=list)

language_model class-attribute instance-attribute

language_model: list[str] = field(default_factory=list)

tower_model class-attribute instance-attribute

tower_model: list[str] = field(default_factory=list)

__init__

__init__(
    language_model: list[str] = list(),
    connector: list[str] = list(),
    tower_model: list[str] = list(),
    generator: list[str] = list(),
) -> None

from_string_field staticmethod

from_string_field(
    language_model: str | list[str] = None,
    connector: str | list[str] = None,
    tower_model: str | list[str] = None,
    generator: str | list[str] = None,
    **kwargs,
) -> MultiModelKeys
Source code in vllm/model_executor/models/module_mapping.py
@staticmethod
def from_string_field(
    language_model: str | list[str] = None,
    connector: str | list[str] = None,
    tower_model: str | list[str] = None,
    generator: str | list[str] = None,
    **kwargs,
) -> "MultiModelKeys":
    def to_list(value):
        if value is None:
            return []
        return [value] if isinstance(value, str) else list(value)

    return MultiModelKeys(
        language_model=to_list(language_model),
        connector=to_list(connector),
        tower_model=to_list(tower_model),
        generator=to_list(generator),
        **kwargs,
    )