in tfx_addons/xgboost_evaluator/xgboost_predict_extractor.py [0:0]
def setup(self):
"""Function that accesses and saves the chosen feature keys and label key."""
# models are loaded and stored into self._loaded_models below
super().setup()
self._feature_keys = None
self._label_key = None
# check to see whether each of these loaded models has a corresponding model spec
if self._eval_config:
label_config = self.extract_model_specs()
for name in self._loaded_models:
if name not in label_config:
raise ValueError(f"Missing model spec for loaded model {name}.")
for name, loaded_model in self._loaded_models.items():
feature_keys = loaded_model.feature_names
if self._feature_keys and self._label_key:
assert self._feature_keys == feature_keys, (
f'Features mismatch in loaded models. Expected {self._feature_keys}'
f', got {feature_keys} instead.')
assert self._label_key == label_config[name], (
f'Label mismatch in loaded models. Expected "{self._label_key}"'
f', got "{label_config[name]}" instead.')
elif feature_keys and label_config[name]:
self._feature_keys = feature_keys
self._label_key = label_config[name]
else:
raise ValueError(
f'Missing feature or label keys in loaded model {name}.')