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:
- `endereço` (o host + porta ou endereço BNS da solicitação) -` método` (o nome do método RPC para a solicitação) - `solicitação` (a string proto serializada, ou vetor de strings, do argumento de solicitação RPC) .
Por exemplo, se você tem um serviço RPC rodando em localhost port: 2345, e sua interface é configurado com a seguinte declaração proto:
service MyService {
rpc MyMethod(MyRequestProto) returns (MyResponseProto) {
};
}
então chamar esta op com argumentos: address = "localhost:2345"
method = "MyService/MyMethod"
O `tensor request` é um tensor string representando strings `MyRequestProto` serializadas; e o tensor de string de saída `response` terá a mesma forma e conter (após a conclusão bem-sucedida) strings` MyResponseProto` serializadas correspondentes.Por exemplo, para enviar um único e vazio, `MyRequestProto`, chame esta op com` request = "" `. Para enviar 5 pedidos vazias paralelas, chamar esta op com `pedido = [ "", "", "", "", ""]`.
De forma mais geral, pode-se criar um lote de protos serializados `MyRequestProto` a partir de tensores em lote regulares usando a op` encode_proto` e converter a resposta `MyResponseProto` protos serializados em tensores em lote usando a op` decode_proto`.
NOTA Trabalho com cordas proto serializados é mais rápido do que instanciar objetos proto reais na memória, de forma nenhuma degradação de desempenho é esperado comparado a escrever kernels personalizados para este fluxo de trabalho.
Se a conexão falhar ou o trabalhador remoto retornar um status de erro, o op reaumentará essa exceção localmente.
Veja a operação `TryRpc` se você preferir lidar com as falhas RPC manualmente no gráfico.
Classes aninhadas
classe | Rpc.Options | Atributos opcionais para Rpc |
Constantes
Fragmento | OP_NAME | O nome desta operação, conforme conhecido pelo motor principal TensorFlow |
Métodos Públicos
Output < TString > | asOutput () Retorna o identificador simbólico do tensor. |
estática Rpc | |
estáticos Rpc.Options | failfast (booleano failfast) |
estáticos Rpc.Options | protocolo (protocolo String) |
Output < TString > | resposta () Mesma forma que `solicitação`. |
estáticos Rpc.Options | timeoutInMs (Long timeoutInMs) |
Métodos herdados
Constantes
nome_op final String public static
O nome desta operação, conforme conhecido pelo motor principal TensorFlow
Métodos Públicos
pública Output < TString > asOutput ()
Retorna o identificador simbólico do tensor.
As entradas para as 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 criar ( Scope escopo, Operando < TString > endereço, operando < TString > método, Operando < TString > pedido, Options ... Opções)
Método de fábrica para criar uma classe envolvendo uma nova operação Rpc.
Parâmetros
alcance | escopo atual |
---|---|
Morada | `0-D` ou` 1-D`. O endereço (ou seja, host_name: porta) do servidor RPC. Se esse tensor tiver mais de 1 elemento, várias solicitações de rpc paralelas serão enviadas. Este argumento difunde com `método` e` solicitação`. |
método | `0-D` ou` 1-D`. O endereço do método no servidor RPC. Se esse tensor tiver mais de 1 elemento, várias solicitações de rpc paralelas serão enviadas. Este argumento difunde com `address` e` request`. |
solicitar | `0-D` ou` 1-D`. Strings proto serializadas: o argumento de solicitação rpc. Se esse tensor tiver mais de 1 elemento, várias solicitações de rpc paralelas serão enviadas. Este argumento difunde com `endereço` e` método`. |
opções | carrega valores de atributos opcionais |
Devoluções
- uma nova instância de Rpc
public static Rpc.Options failfast (Boolean failfast)
Parâmetros
failFast | `booleano`. Se `true` (padrão), então as falhas de conexão (ou seja, o servidor não responde imediatamente) causam uma falha de RPC. |
---|
public static Rpc.Options protocol (protocol String)
Parâmetros
protocolo | Protocolo RPC a ser usado. String vazia significa usar o protocolo padrão. As opções incluem 'grpc'. |
---|
pública Output < TString > resposta ()
Mesma forma que `solicitação`. Strings proto serializadas: as respostas rpc.
public static Rpc.Options timeoutInMs (timeoutInMs Long)
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 de RPC expirar ou a sessão expirar. Se este valor for maior do que `0`, o op levantará uma exceção se o RPC demorar mais do que` timeout_in_ms`. |
---|