from datasets import load_dataset # Convert dataset to OAI messages def format_data(sample): return {"messages": [ { "role": "system", "content": [{"type": "text", "text": system_message}], }, { "role": "user", "content": [ { "type": "text", "text": prompt.format(product_name=sample["Product Name"], category=sample["Category"]), },{ "type": "image", "image": sample["image"], } ], }, { "role": "assistant", "content": [{"type": "text", "text": sample["description"]}], }, ], } # Load dataset from the hub dataset_id = "philschmid/amazon-product-descriptions-vlm" dataset = load_dataset("philschmid/amazon-product-descriptions-vlm", split="train") # Convert dataset to OAI messages # need to use list comprehension to keep Pil.Image type, .mape convert image to bytes dataset = [format_data(sample) for sample in dataset] print(dataset[345]["messages"])