警告:このAPIは非推奨であり、置き換えが安定した後 TensorFlowの将来のバージョンで削除される予定です。

このページは Cloud Translation API によって翻訳されました。
Switch to English

TryRpc

パブリックファイナルクラスTryRpc

RPCリクエストのバッチを実行します。

この操作は、単一のRPC要求または要求のバッチのいずれかを非同期的に実行します。 RPCリクエストは、次の3つの主要なパラメータによって定義されます。

-`address`(リクエストのホスト+ポートまたはBNSアドレス)-`method`(リクエストのメソッド名)-` request`(RPCリクエスト引数のシリアル化されたプロト文字列または文字列のベクトル)。

たとえば、ポートlocalhost:2345でRPCサービスを実行していて、そのインターフェイスが次のproto宣言で構成されている場合:

service MyService {
   rpc MyMethod(MyRequestProto) returns (MyResponseProto) {
   
 };
 }
次に、引数を指定してこのopを呼び出します:
address = "localhost:2345"
 method = "MyService/MyMethod"
 
`request`テンソルは、シリアル化された` MyRequestProto`を表す文字列テンソルです文字列;また、出力文字列テンソル `response`は同じ形状を持ち、(正常に完了すると)対応するシリアル化された` MyResponseProto`文字列を含みます。

たとえば、単一の空の `MyRequestProto`を送信するには、` request = "" `を指定してこの操作を呼び出します。 5つの並列の空の要求を送信するには、このopを `request = [" "、" "、" "、" "、" "]`で呼び出します。

より一般的には、 `encode_proto`opを使用して通常のバッチテンソルから` MyRequestProto`シリアル化されたプロトのバッチを作成し、 `decode_proto`opを使用して応答` MyResponseProto`シリアル化されたプロトをバッチテンソルに変換できます。

シリアル化されたプロト文字列の操作は、メモリ内の実際のプロトオブジェクトをインスタンス化するよりも高速であるため、このワークフローのカスタムカーネルを作成する場合と比較して、パフォーマンスの低下は予想されません。

標準の `Rpc`操作とは異なり、接続が失敗した場合、またはリモートワーカーがエラーステータスを返した場合、この操作は例外を再発生させませ。代わりに、対応するRPC呼び出しの `status_code`および` status_message`エントリは、RPC呼び出しから返されたエラーで設定されます。 `response`テンソルには、RPCが失敗しなかったミニバッチエントリの有効な応答値が含まれます。残りのエントリには空の文字列が含まれます。

ネストされたクラス

クラスTryRpc.Options TryRpcオプションの属性

パブリックメソッド

静的TryRpc
createスコープスコープ、 Operand <String>アドレス、 Operand <String>メソッド、 Operand <String>リクエスト、オプション...オプション)
新しいTryRpc操作をラップするクラスを作成するファクトリメソッド。
静的TryRpc.Options
failFast (ブール値failFast)
静的TryRpc.Options
プロトコル(文字列プロトコル)
出力<文字列>
応答()
`request`と同じ形。
出力<整数>
statusCode ()
`request`と同じ形。
出力<文字列>
statusMessage ()
`request`と同じ形。
静的TryRpc.Options
timeoutInMs (長いtimeoutInMs)

継承されたメソッド

パブリックメソッド

public static TryRpc create スコープスコープ、 Operand <String>アドレス、 Operand <String>メソッド、 Operand <String>リクエスト、オプション...オプション)

新しいTryRpc操作をラップするクラスを作成するファクトリメソッド。

パラメーター
範囲現在のスコープ
住所`0-D`または` 1-D`。 RPCサーバーのアドレス(つまり、host_name:port)。このテンソルに複数の要素がある場合、複数の並列rpcリクエストが送信されます。この引数は `method`と` request`でブロードキャストします。
方法`0-D`または` 1-D`。 RPCサーバー上のメソッドアドレス。このテンソルに複数の要素がある場合、複数の並列rpcリクエストが送信されます。この引数は `address`と` request`でブロードキャストします。
リクエスト`0-D`または` 1-D`。シリアル化されたプロト文字列:rpcリクエスト引数。このテンソルに複数の要素がある場合、複数の並列rpcリクエストが送信されます。この引数は `address`と` method`でブロードキャストします。
オプションオプションの属性値を運ぶ
戻り値
  • TryRpcの新しいインスタンス

public static TryRpc.Options failFast (ブール値failFast)

パラメーター
failFast `ブール`。 `true`(デフォルト)の場合、接続に失敗すると(つまり、サーバーがすぐに応答しない)、RPC障害が発生します。

public static TryRpc.Optionsプロトコル(文字列プロトコル)

パラメーター
プロトコル使用するRPCプロトコル。空の文字列は、デフォルトのプロトコルを使用することを意味します。オプションには「grpc」が含まれます。

public Output <String> response ()

`request`と同じ形。シリアル化されたプロト文字列:rpc応答。

public Output <Integer> statusCode ()

`request`と同じ形。値はtensorflowステータス列挙コードに対応します。

public Output <String> statusMessage ()

`request`と同じ形。値は、RPC呼び出しから返されるステータスメッセージに対応します。

public static TryRpc.Options timeoutInMs (Long timeoutInMs)

パラメーター
timeoutInMs `int`。 `0`(デフォルト)の場合、カーネルはRPC要求を実行し、RPCの期限が過ぎるか、セッションがタイムアウトした場合にのみタイムアウトします。この値が `0`より大きい場合、RPCが` timeout_in_ms`より長くかかると、opは例外を発生させます。