chunk_content: l.to(device)
  model.eval()
  model = model.merge_and_unload()
  
  import numpy as np
  num_products= len(dataset)
  d = 1024
  
  product_embeddings_array = np.zeros((num_products, d))
  for step, batch in enumerate(tqdm(dataloader)):
      with torch.no_grad():
          with torch.amp.autocast(dtype=torch.bfloat16, device_type="cuda"):
              product_embs = model(**{k:v.to(device) for k, v in batch.items()}).detach().float().cpu()
      start_index = step*bat