Skip to content

Commit 5083127

Browse files
junwhanahntensorflow-copybara
authored andcommitted
Do not return SignatureDef.defaults from GetModelMetadata
`GetModelMetadata` is expected to be fast and returns only the (small) metadata of the model. Returning the default values violates this expectation as default value tensors may be arbitrarily big. PiperOrigin-RevId: 764009019
1 parent a54796b commit 5083127

File tree

1 file changed

+6
-2
lines changed

1 file changed

+6
-2
lines changed

tensorflow_serving/servables/tensorflow/tfrt_servable.cc

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -260,8 +260,12 @@ absl::Status TfrtSavedModelServable::GetModelMetadata(
260260
SignatureDefMap signature_def_map;
261261
for (const auto& signature :
262262
saved_model_->GetMetaGraphDef().signature_def()) {
263-
(*signature_def_map.mutable_signature_def())[signature.first] =
264-
signature.second;
263+
// Explicitly avoid copying `SignatureDef.defaults` as they can be big.
264+
SignatureDef& def =
265+
(*signature_def_map.mutable_signature_def())[signature.first];
266+
def.set_method_name(signature.second.method_name());
267+
*def.mutable_inputs() = signature.second.inputs();
268+
*def.mutable_outputs() = signature.second.outputs();
265269
}
266270

267271
auto* response_model_spec = response->mutable_model_spec();

0 commit comments

Comments
 (0)