tf.train.ClusterSpec представляет набор процессов, участвующих в распределённых вычислениях TensorFlow. Каждый tf.distribute.Server создаётся в определённом кластере.
Чтобы создать кластер с двумя заданиями и пятью задачами, укажите соответствие имён заданий спискам сетевых адресов (обычно это пары «имя хоста — порт»).
Каждое задание также можно указать как разреженное соответствие индексов задач сетевым адресам. Это позволяет настроить сервер, не зная идентификаторы (например) всех остальных задач рабочих узлов:
Словарь, сопоставляющий одно или несколько имён заданий с (i) списком сетевых адресов или (ii) словарём, сопоставляющим целочисленные индексы задач с сетевыми адресами; либо буфер протокола tf.train.ClusterDef.
Исключения
TypeError
Если cluster не является словарём, сопоставляющим строки со списками строк, и не является протобуфером tf.train.ClusterDef.
Возвращает словарь, сопоставляющий имена заданий их задачам.
Для каждого задания, если пространство индексов задач плотное, соответствующим значением будет список сетевых адресов; в противном случае это будет словарь, сопоставляющий (разреженные) индексы задач соответствующим адресам.
Возвращает
Словарь, сопоставляющий имена заданий спискам или словарям с описанием задач в этих заданиях.
Возвращает соответствие идентификаторов задач адресам в указанном задании.
Примечание: Для обеспечения обратной совместимости этот метод возвращает список. Если указанное задание определено с разреженным набором индексов задач, длина этого списка может не соответствовать количеству задач, определённых в задании. Чтобы узнать количество задач, определённых в конкретном задании, используйте метод tf.train.ClusterSpec.num_tasks.
Аргументы
job_name
Строковое имя задания в этом кластере.
Возвращает
Список адресов задач, где индекс элемента списка соответствует индексу каждой задачи. Список может содержать None, если задание определено с разреженным набором индексов задач.
Исключения
ValueError
Если job_name не обозначает задание в этом кластере.