VDBBench/multimodal-embedding-1M
Multimodal Embedding 1M Benchmark Dataset A vector search benchmark dataset containing 1M base vectors and 10K query vectors with pre-computed ground truth, generated from multimodal (image + text) inputs. Dataset Description Each embedding is produced by encoding an image-text pair into a single 4096-dimensional vector using Qwen3-VL-Embedding-8B, a state-of-the-art multimodal embedding model. Source data: pixparse/cc3m-wds (Conceptual Captions 3M in WebDataset… See the full description on the dataset page: https://huggingface.co/datasets/VDBBench/multimodal-embedding-1M.
Multimodal Embedding 1M Benchmark Dataset
A vector search benchmark dataset containing 1M base vectors and 10K query vectors with pre-computed ground truth, generated from multimodal (image + text) inputs.
Dataset Description
Each embedding is produced by encoding an image-text pair into a single 4096-dimensional vector using Qwen3-VL-Embedding-8B, a state-of-the-art multimodal embedding model.
- Source data: pixparse/cc3m-wds (Conceptual Captions 3M in WebDataset format)
- Embedding model: Qwen3-VL-Embedding-8B via vLLM (runner="pooling", dtype=bfloat16)
- Input format: Each sample consists of an image and its corresponding caption, embedded together as a multimodal input
- Normalization: L2 normalized
Files
Key Properties
Usage
from datasets import load_dataset
# Load base and query splits
ds = load_dataset("WenxingZhu/multimodal-embedding-1M")
train = ds["train"] # 1M base vectors
test = ds["test"] # 10K query vectors
# Load ground truth
import pyarrow.parquet as pq
gt = pq.read_table("neighbors.parquet").to_pandas()
# Access embeddings
import numpy as np
base_emb = np.array(train["emb"]) # (1000000, 4096)
query_emb = np.array(test["emb"]) # (10000, 4096)
neighbors = np.array(gt["neighbors"].tolist()) # (10000, 100)Generation Details
- Hardware: 4x NVIDIA A100-80GB (DGX)
- Inference: vLLM v0.17.1, pooling mode, batch size 16
- Throughput: ~25 samples/sec per GPU
- Total time: ~2.75 hours for 1M embeddings
- Prompt template: System message "Represent the user's input." + User message with image and text content
License
This dataset is released under the Apache 2.0 license. The source images and captions are from Conceptual Captions 3M.
