Based on my understanding, the calculation of fid should make use of feature vector(dim=2048) from the max pool layers of InceptionNet.
However, the FID() metric in fid.py is initiliased as below:
if num_features is None and feature_extractor is None:
    num_features = 1000
    feature_extractor = InceptionModel(return_features=False, device=device)
The InceptionModel return prediction probabilities(dim=1000) if return_features is set to False by specification. update() then make use of this this  feature_extractor to get the probabilities instead of feature vectors.
I think feature_extractor should be InceptionModel(return_features=True, device=device) instead?