class tf.train.Server
See the guide: Training > Distributed execution
An in-process TensorFlow server, for use in distributed training.
A tf.train.Server
instance encapsulates a set of devices and a tf.Session
target that can participate in distributed training. A server belongs to a cluster (specified by a tf.train.ClusterSpec
), and corresponds to a particular task in a named job. The server can communicate with any other server in the same cluster.
server_def
Returns the tf.train.ServerDef
for this server.
A tf.train.ServerDef
protocol buffer that describes the configuration of this server.
target
Returns the target for a tf.Session
to connect to this server.
To create a tf.Session
that connects to this server, use the following snippet:
server = tf.train.Server(...) with tf.Session(server.target): # ...
A string containing a session target for this server.
__init__(server_or_cluster_def, job_name=None, task_index=None, protocol=None, config=None, start=True)
Creates a new server with the given definition.
The job_name
, task_index
, and protocol
arguments are optional, and override any information provided in server_or_cluster_def
.
server_or_cluster_def
: A tf.train.ServerDef
or tf.train.ClusterDef
protocol buffer, or a tf.train.ClusterSpec
object, describing the server to be created and/or the cluster of which it is a member.job_name
: (Optional.) Specifies the name of the job of which the server is a member. Defaults to the value in server_or_cluster_def
, if specified.task_index
: (Optional.) Specifies the task index of the server in its job. Defaults to the value in server_or_cluster_def
, if specified. Otherwise defaults to 0 if the server's job has only one task.protocol
: (Optional.) Specifies the protocol to be used by the server. Acceptable values include "grpc"
. Defaults to the value in server_or_cluster_def
, if specified. Otherwise defaults to "grpc"
.config
: (Options.) A tf.ConfigProto
that specifies default configuration options for all sessions that run on this server.start
: (Optional.) Boolean, indicating whether to start the server after creating it. Defaults to True
.tf.errors.OpError: Or one of its subclasses if an error occurs while creating the TensorFlow server.
create_local_server(config=None, start=True)
Creates a new single-process cluster running on the local host.
This method is a convenience wrapper for creating a tf.train.Server
with a tf.train.ServerDef
that specifies a single-process cluster containing a single task in a job called "local"
.
config
: (Options.) A tf.ConfigProto
that specifies default configuration options for all sessions that run on this server.start
: (Optional.) Boolean, indicating whether to start the server after creating it. Defaults to True
.A local tf.train.Server
.
join()
Blocks until the server has shut down.
This method currently blocks forever.
tf.errors.OpError: Or one of its subclasses if an error occurs while joining the TensorFlow server.
start()
Starts this server.
tf.errors.OpError: Or one of its subclasses if an error occurs while starting the TensorFlow server.
Defined in tensorflow/python/training/server_lib.py
.
© 2017 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 3.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/api_docs/python/tf/train/Server