tf.distribute.experimental.rpc.Server
Базовый класс сервера для приема RPC-запросов для зарегистрированных tf.functions.
Функции могут быть зарегистрированы на сервере и экспонированы через RPC.
Методы
create
@staticmethod
create(
rpc_layer, address
)
Создать TF RPC-сервер по указанному адресу.
| Аргументы | |
|---|---|
rpc_layer | Слой коммуникации между клиентом и сервером. В данный момент поддерживается только rpc-слой "grpc". |
address | Адрес, на котором размещается RPC-сервер. |
| Возвращаемое значение | |
|---|---|
Экземпляр класса tf.distribute.experimental.rpc.Server. |
| Исключения | |
|---|---|
| ValueError, если используется rpc-слой, отличный от "grpc". В данный момент поддерживается только GRPC. |
| Пример использования | |
|---|---|
>>> import portpicker >>> @tf.function(input_signature=[ ... tf.TensorSpec([], tf.int32), ... tf.TensorSpec([], tf.int32)]) ... def remote_fn(a, b): ... return tf.add(a, b) port = portpicker.pick_unused_port()
address = "localhost:{}".format(port)
server = tf.distribute.experimental.rpc.Server.create("grpc", address)
server.register("addition", remote_fn)
server.start() |
register
register(
method_name: str,
func: Union[def_function.Function, tf_function.ConcreteFunction]
)
Метод для регистрации tf.function на сервере.
Зарегистрированные методы могут вызываться удаленно из клиентов.
| Аргументы | |
|---|---|
method_name | Имя tf.function. Клиенты используют это имя_метода для выполнения RPC-запросов. |
func | tf.function или ConcreteFunction для регистрации. |
start
start()
Запускает RPC-сервер по указанному адресу.
Сервер прослушивает новые запросы от клиента после запуска.
© 2022 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 4.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/api_docs/python/tf/distribute/experimental/rpc/Server