fix: cast URL image columns to HF Image() type in VLM conversion

This commit is contained in:
Roland Tannous 2026-03-04 06:42:37 +00:00
commit 34fb9ec973

View file

@ -254,8 +254,15 @@ def convert_to_vlm_format(
list: List of dicts with 'messages' field
"""
from PIL import Image
from datasets import Image as datasets_Image
from .vlm_processing import generate_smart_vlm_instruction
# Cast string image columns (URLs or local paths) to HF Image() type
# so HuggingFace handles downloading, decoding, and caching transparently.
sample_value = next(iter(dataset))[image_column]
if isinstance(sample_value, str):
dataset = dataset.cast_column(image_column, datasets_Image())
# Generate smart instruction if not provided
if instruction is None:
instruction_info = generate_smart_vlm_instruction(