tf.distribute.Server
| Просмотр исходного кода на GitHub |
Сервер TensorFlow в процессе выполнения, предназначенный для использования в распределённом обучении.
tf.distribute.Server(
server_or_cluster_def, job_name=None, task_index=None, protocol=None,
config=None, start=True
)
Объект tf.distribute.Server инкапсулирует набор устройств и целевой tf.compat.v1.Session, которые могут участвовать в распределённом обучении. Сервер принадлежит кластеру (указанному tf.train.ClusterSpec), и соответствует конкретной задаче в названной работе. Сервер может взаимодействовать с любым другим сервером в том же кластере.
| Аргументы | |
|---|---|
server_or_cluster_def | Протокол-буфер tf.train.ServerDef или tf.train.ClusterDef, или объект tf.train.ClusterSpec, описывающий создаваемый сервер и/или кластер, членом которого он является. |
job_name | (Необязательно.) Указывает имя работы, членом которой является сервер. По умолчанию принимает значение в server_or_cluster_def, если задано. |
task_index | (Необязательно.) Указывает индекс задачи сервера в его работе. По умолчанию принимает значение в server_or_cluster_def, если задано. В противном случае по умолчанию 0, если работа сервера содержит только одну задачу. |
protocol | (Необязательно.) Указывает протокол, который должен использоваться сервером. Допустимые значения включают "grpc", "grpc+verbs". По умолчанию принимает значение в server_or_cluster_def, если задано. В противном случае по умолчанию "grpc". |
config | (Опции.) tf.compat.v1.ConfigProto, который задаёт параметры конфигурации по умолчанию для всех сессий, выполняемых на этом сервере. |
start | (Необязательно.) Булево значение, указывающее, нужно ли запускать сервер после его создания. По умолчанию True. |
| Возможные исключения | |
|---|---|
tf.errors.OpError | Или один из его подклассов, если при создании сервера TensorFlow произошла ошибка. |
| Атрибуты | |
|---|---|
server_def | Возвращает tf.train.ServerDef для этого сервера. |
target | Возвращает целевой объект для tf.compat.v1.Session, чтобы подключиться к этому серверу. Для создания server = tf.distribute.Server(...) with tf.compat.v1.Session(server.target): # ... |
Методы
create_local_server
@staticmethod
create_local_server(
config=None, start=True
)
Создаёт новый кластер с одним процессом, работающий на локальном хосте.
Этот метод является удобной оболочкой для создания tf.distribute.Server с tf.train.ServerDef, который определяет кластер с одним процессом, содержащий одну задачу в работе под названием "local".
| Аргументы | |
|---|---|
config | (Опции.) tf.compat.v1.ConfigProto, который задаёт параметры конфигурации по умолчанию для всех сессий, выполняемых на этом сервере. |
start | (Необязательно.) Булево значение, указывающее, нужно ли запускать сервер после его создания. По умолчанию True. |
| Возвращаемые значения | |
|---|---|
Локальный tf.distribute.Server. |
join
join()
Ожидает завершения работы сервера.
В данный момент этот метод ожидает бесконечно.
| Возможные исключения | |
|---|---|
tf.errors.OpError | Или один из его подклассов, если при присоединении к серверу TensorFlow произошла ошибка. |
start
start()
Запускает этот сервер.
| Возможные исключения | |
|---|---|
tf.errors.OpError | Или один из его подклассов, если при запуске сервера TensorFlow произошла ошибка. |
© 2020 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/versions/r2.3/api_docs/python/tf/distribute/Server