since tensorflow work with tensors, do we need to convert the training, test and validation into npz ?
npz seems to be used witih numpy. TensorFlow is not numpy.
But the archive format of the data depends on who created it, not so much on the language used or the programming environment.
A tensor is how you can store data in memory, other choices include numpy array, python list, or pandas dataframe.
npz is how you can store data in a harddisk, other choices include formats like csv, tensorflow dataset, and many more.
You may save your data in harddisk in any way applicable, and then convert them to tensors after you read the data into memory. Therefore, we do not have to save data in npz. It is fine for us to give a tensorflow model a numpy array, a tensor, or a tensorflow dataset.