ViT produces different embeddings each time?

I’m trying to obtain ViT Image embeddings but I get completely different embeddings for the same image during multiple inferences? Shouldn’t the image embedding be constant for inference of the same image?

device = torch.device('cuda')

processor = ViTImageProcessor.from_pretrained('google/vit-base-patch16-224')
model = ViTModel.from_pretrained('google/vit-base-patch16-224')

vit_vectors = []

for file_path in file_paths:

    image =

    inputs = processor(images=image, return_tensors="pt")
    outputs = model(**inputs)

    _ = outputs.pooler_output.cpu().detach().numpy().copy()[0]