Cette page a été traduite par l'API Cloud Translation.
Switch to English

tf.saved_model.load

Tensorflow 1 Version Voir la source sur GitHub

Charger un SavedModel de export_dir .

Utilisé dans les ordinateurs portables

Utilisé dans le guide Utilisé dans les tutoriels

Les signatures associées aux SavedModel sont disponibles en fonctions:

 imported = tf.saved_model.load(path)
f = imported.signatures["serving_default"]
print(f(x=tf.constant([[1.]])))
 

Les objets exportés avec tf.saved_model.save ont en outre des objets traçables et les fonctions assignées aux attributs:

 exported = tf.train.Checkpoint(v=tf.Variable(3.))
exported.f = tf.function(
    lambda x: exported.v * x,
    input_signature=[tf.TensorSpec(shape=None, dtype=tf.float32)])
tf.saved_model.save(exported, path)
imported = tf.saved_model.load(path)
assert 3. == imported.v.numpy()
assert 6. == imported.f(x=tf.constant(2.)).numpy()
 

Chargement des modèles KERAS

modèles KERAS sont traçable, afin qu'ils puissent être enregistrés dans SavedModel. L'objet retourné par tf.saved_model.load n'est pas un objet Keras (c. -à- n'a pas .fit , .predict , etc. méthodes). Quelques attributs et fonctions sont encore disponibles: .variables , .trainable_variables et .__call__ .

 model = tf.keras.Model(...)
tf.saved_model.save(model, path)
imported = tf.saved_model.load(path)
outputs = imported(inputs)
 

Utilisez tf.keras.models.load_model pour restaurer le modèle Keras.

Importation SavedModels de 1.x tensorflow

SavedModels de tf.estimator.Estimator ou 1.x API SavedModel ont un graphique plat au lieu de tf.function objets. Ces SavedModels seront chargés avec les attributs suivants:

  • .signatures : Un nom de signature de mappage dictionnaire aux fonctions.
  • .prune(feeds, fetches) : Une méthode qui permet d'extraire des fonctions pour les nouveaux sous - graphes. Cela équivaut à l'importation de la SavedModel et de nommer les aliments et les récupérations dans une session de tensorflow 1.x.
 imported = tf.saved_model.load(path_to_v1_saved_model)
pruned = imported.prune("x:0", "out:0")
pruned(tf.ones([]))
 

Voir tf.compat.v1.wrap_function pour plus de détails.

  • .variables : Une liste des variables importées.
  • .graph : L'ensemble graphique importé.
  • .restore(save_path) : Une fonction qui restaure les variables à partir d' un point de contrôle sauvé de tf.compat.v1.Saver .

La consommation de SavedModels de manière asynchrone

Lors de la consommation SavedModels de manière asynchrone (le producteur est un processus distinct), le répertoire SavedModel apparaît avant que tous les fichiers ont été écrits et tf.saved_model.load échouera si pointé sur une SavedModel incomplète. Plutôt que de vérifier le répertoire, vérifiez « saved_model_dir / saved_model.pb ». Ce fichier est écrit atomiquement comme la dernière tf.saved_model.save opération de fichier.

export_dir Le répertoire SavedModel pour charger à partir.
tags Une étiquette ou une séquence d'étiquettes identifiant le MetaGraph de charge. Facultatif si le SavedModel contient un seul MetaGraph, comme pour ceux exportés de tf.saved_model.save .
options En option, tf.saved_model.LoadOptions objet qui spécifie des options de chargement.

Un objet traçable avec les signatures mappage des attributs de clés de signature aux fonctions. Si le SavedModel a été exporté par tf.saved_model.load , il souligne également des objets traçables, les fonctions, les informations de débogage dont il a été sauvé.

ValueError Si les tags ne correspondent pas MetaGraph dans le SavedModel.