The type mismatch is raised in:
out = model(data.pixel_values.view(-1, 3), data.edge_index, data.batch)

and based on the code snippet I guess that data.pixel_values might be returning a ByteTensor (uint8) while float32 is expected. Call .float() on this tensor, if that’s the case. If not, check which tensor is the ByteTensor and cast it to a FloatTensor.