数据解析
模块内容
class vllm.multimodal.parse.ModalityDataItems(data: _T, modality: str)
表示 MultiModalDataItems
中某个模态的数据项。
abstract get_count() → int
获取数据项的数量。
abstract get(index: int) → _I
通过索引获取数据项。
get_all() → list[_I]
获取所有数据项。
abstract get_processor_data() → Mapping[str, object]
获取传递给 HF 处理器的数据。
abstract get_passthrough_data() → Mapping[str, object]
获取直接传递给模型的数据。
class vllm.multimodal.parse.ProcessorBatchItems(data: _T, modality: str)
数据项以列表形式排列的基类。
get_count() → int
获取数据项的数量。
get(index: int) → _T
通过索引获取数据项。
get_processor_data() → Mapping[str, object]
获取传递给 HF 处理器的数据。
get_passthrough_data() → Mapping[str, object]
获取直接传递给模型的数据。
class vllm.multimodal.parse.EmbeddingItems(data: _T, modality: str)
数据项表示为批处理嵌入张量或嵌入张量列表(每个数据项一个)的基类。
get_count() → int
获取数据项的数量。
get(index: int) → torch.Tensor
通过索引获取数据项。
get_processor_data() → Mapping[str, object]
获取传递给 HF 处理器的数据。
get_passthrough_data() → Mapping[str, object]
获取直接传递给模型的数据。
class vllm.multimodal.parse.DictEmbeddingItems(data: Mapping[str, torch.Tensor], modality: str, required_fields: set[str], fields_factory: Callable[[Mapping[str, torch.Tensor]], Mapping[str, MultiModalFieldConfig]])
数据项表示为张量字典的基类。
通常,字典键对应于 HF 处理器的输出。
get_count() → int
获取数据项的数量。
get(index: int) → Mapping[str, torch.Tensor]
通过索引获取数据项。
get_processor_data() → Mapping[str, object]
获取传递给 HF 处理器的数据。
get_passthrough_data() → Mapping[str, object]
获取直接传递给模型的数据。
class vllm.multimodal.parse.AudioProcessorItems(data: Sequence[list[float] | numpy.ndarray | torch.Tensor])
class vllm.multimodal.parse.AudioEmbeddingItems(data: torch.Tensor | list[torch.Tensor])
class vllm.multimodal.parse.ImageSize(width, height)
width: int
字段编号 0 的别名。
height: int
字段编号 1 的别名。
class vllm.multimodal.parse.ImageProcessorItems(data: Sequence[Image | numpy.ndarray | torch.Tensor])
class vllm.multimodal.parse.ImageEmbeddingItems(data: torch.Tensor | list[torch.Tensor])
class vllm.multimodal.parse.VideoProcessorItems(data: Sequence[list[PIL.Image.Image] | numpy.ndarray | torch.Tensor | list[numpy.ndarray] | list[torch.Tensor]])
class vllm.multimodal.parse.VideoEmbeddingItems(data: torch.Tensor | list[torch.Tensor])
class vllm.multimodal.parse.MultiModalDataItems(dict=None, /, **kwargs)
与 MultiModalDataDict
类似,但经过规范化,使得每个条目对应一个列表。
get_count(modality: str, *, strict: bool = True) → int
获取属于某个模态的数据项的数量。
如果 strict=False
,即使未找到模态,也返回 0
而不是抛出 KeyError
。
get_all_counts() → Mapping[str, int]
获取每个模态的数据项数量。
get_items(modality: str, typ: type[_D] | tuple[type[_D], ...]) → _D
获取属于某个模态的数据项,并要求它们属于特定类型。
class vllm.multimodal.parse.MultiModalDataParser(*, target_sr: float | None = None, audio_resample_method: Literal['librosa', 'scipy'] = 'librosa')
解析 MultiModalDataDict
到 MultiModalDataItems
中。
参数:
target_sr(float, 可选) – 启用自动重采样,将音频项调整为模型期望的采样率。