@dataclass(frozen=True)classImageAsset:name:ImageAssetNamedefget_path(self,ext:str)->Path:""" Return s3 path for given image. """returnget_vllm_public_assets(filename=f"{self.name}.{ext}",s3_prefix=VLM_IMAGES_DIR)@propertydefpil_image(self)->Image.Image:returnself.pil_image_ext(ext="jpg")defpil_image_ext(self,ext:str)->Image.Image:image_path=self.get_path(ext=ext)returnImage.open(image_path)@propertydefimage_embeds(self)->torch.Tensor:""" Image embeddings, only used for testing purposes with llava 1.5. """image_path=self.get_path("pt")returntorch.load(image_path,map_location="cpu",weights_only=True)defread_bytes(self,ext:str)->bytes:p=Path(self.get_path(ext))returnp.read_bytes()
defget_path(self,ext:str)->Path:""" Return s3 path for given image. """returnget_vllm_public_assets(filename=f"{self.name}.{ext}",s3_prefix=VLM_IMAGES_DIR)