Rpc

classe final pública Rpc

Execute lotes de solicitações RPC.

Esta operação executa de forma assíncrona uma única solicitação RPC ou um lote de solicitações. As solicitações RPC são definidas por três parâmetros principais:

- `address` (o host+porta ou endereço BNS da solicitação) - `method` (o nome do método RPC para a solicitação) - `request` (a string proto serializada, ou vetor de strings, do argumento da solicitação RPC) .

Por exemplo, se você tiver um serviço RPC rodando na porta localhost:2345, e sua interface estiver configurada com a seguinte declaração proto:

service MyService {
   rpc MyMethod(MyRequestProto) returns (MyResponseProto) {
   
 };
 }
então chame esta operação com argumentos:
address = "localhost:2345"
 method = "MyService/MyMethod"
 
O tensor `request` é um tensor de string representando strings `MyRequestProto` serializadas; e o tensor de string de saída `response` terá o mesmo formato e conterá (após a conclusão bem-sucedida) strings `MyResponseProto` serializadas correspondentes.

Por exemplo, para enviar um único `MyRequestProto` vazio, chame esta operação com `request = ""`. Para enviar 5 solicitações vazias paralelas , chame esta operação com `request = ["", "", "", "", ""]`.

De forma mais geral, pode-se criar um lote de protos serializados `MyRequestProto` a partir de tensores em lote regulares usando a operação `encode_proto` e converter os protos serializados de resposta `MyResponseProto` em tensores em lote usando a operação `decode_proto`.

NOTA Trabalhar com proto strings serializadas é mais rápido do que instanciar objetos proto reais na memória, portanto, nenhuma degradação de desempenho é esperada em comparação com a gravação de kernels personalizados para este fluxo de trabalho.

Se a conexão falhar ou o trabalhador remoto retornar um status de erro, a operação gerará novamente essa exceção localmente.

Consulte a operação `TryRpc` se preferir lidar com falhas de RPC manualmente no gráfico.

Classes aninhadas

aula Rpc.Opções Atributos opcionais para Rpc

Métodos Públicos

Saída <String>
asOutput ()
Retorna o identificador simbólico de um tensor.
Rpc estático
create (escopo do escopo , endereço do operando <String>, método do operando <String>, solicitação do operando <String>, opções... opções)
Método de fábrica para criar uma classe que envolve uma nova operação Rpc.
Rpc.Options estático
failFast (booleano failFast)
Rpc.Options estático
protocolo (protocolo String)
Saída <String>
resposta ()
Mesma forma que `request`.
Rpc.Options estático
timeoutInMs (tempo limite longoInMs)

Métodos herdados

Métodos Públicos

Saída pública <String> asOutput ()

Retorna o identificador simbólico de um tensor.

As entradas para operações do TensorFlow são saídas de outra operação do TensorFlow. Este método é usado para obter um identificador simbólico que representa o cálculo da entrada.

public static Rpc create (escopo do escopo , endereço do operando <String>, método do operando <String>, solicitação do operando <String>, opções... opções)

Método de fábrica para criar uma classe que envolve uma nova operação Rpc.

Parâmetros
escopo escopo atual
endereço `0-D` ou `1-D`. O endereço (ou seja, host_name:porta) do servidor RPC. Se este tensor tiver mais de 1 elemento, várias solicitações RPC paralelas serão enviadas. Este argumento é transmitido com `método` e `request`.
método `0-D` ou `1-D`. O endereço do método no servidor RPC. Se este tensor tiver mais de 1 elemento, várias solicitações RPC paralelas serão enviadas. Este argumento é transmitido com `address` e `request`.
solicitar `0-D` ou `1-D`. Strings proto serializadas: o argumento de solicitação rpc. Se este tensor tiver mais de 1 elemento, várias solicitações RPC paralelas serão enviadas. Este argumento é transmitido com `address` e `method`.
opções carrega valores de atributos opcionais
Devoluções
  • uma nova instância de Rpc

public static Rpc.Options failFast (booleano failFast)

Parâmetros
falharFast `booleano`. Se for `true` (padrão), então falhas na conexão (ou seja, o servidor não responde imediatamente) causam uma falha de RPC.

Protocolo público estático Rpc.Options (protocolo String)

Parâmetros
protocolo Protocolo RPC a ser usado. String vazia significa usar o protocolo padrão. As opções incluem 'grpc'.

saída pública <String> resposta ()

Mesma forma que `request`. Strings proto serializadas: as respostas rpc.

público estático Rpc.Options timeoutInMs (tempo limite longoInMs)

Parâmetros
timeoutInMs `int`. Se for `0` (padrão), então o kernel executará a solicitação RPC e somente atingirá o tempo limite se o prazo do RPC passar ou se a sessão expirar. Se este valor for maior que `0`, então a operação gerará uma exceção se o RPC demorar mais que `timeout_in_ms`.