[目次]
Context
context_base.SyncContext または context_base.AsyncContext は、AST を構築、コンパイル、または実行できる環境です。
この API は、Executor が実行に使用されない場合に使用される low-level abstraction を定義します。バックエンドの Reference はこのレベルで統合されます。
ExecutionContext
execution_context.ExecutionContext は、コンパイル関数を使用して計算をコンパイルし、Executor を使用して計算を実行する context_base.SyncContext または context_base.AsyncContext です。
この API は、Executor が実行に使用される時に使用される 高レベルの抽象化を定義します。native はこのレベルで統合されます。
FederatedComputationContext
federated_computation_context.FederatedComputationContext は、連合計算を構築するコンテキストです。このコンテキストは federated_computation.federated_computation デコレータでデコレートされた Python 関数をトレースするために使用されます。
TensorFlowComputationContext
tensorflow_computation_context.TensorFlowComputationContext は、TensorFlow 計算を構築するコンテキストです。このコンテキストは tensorflow_computation.tf_computation デコレータでデコレートされた Python 関数をシリアル化するために使用されます。
ContextStack
context_stack_base.ContextStack はContexts スタックを操作するためのデータ構造です。
TFF が AST を構築、コンパイル、または実行するために使用するコンテキストは、以下のようにして設定できます。
set_default_context.set_default_context を呼び出してデフォルトのコンテキストを設定します。この API は通常、計算をコンパイルまたは実行するコンテキストをインストールする際に使用されます。
get_context_stack.get_context_stack を呼び出して現在のコンテキストスタックを取得し、context_stack_base.ContextStack.install を呼び出してコンテキストをスタックの上に一時的にインストールします。たとえば、federated_computation.federated_computation と tensorflow_computation.tf_computation デコレータは、デコレートされた関数がトレースされている間に、対応するコンテキストを現在のコンテキストスタックにプッシュします。
ContextStackImpl
context_stack_impl.ContextStackImpl は、一般的なスレッドローカルスタックとして実装される context_stack_base.ContextStack です。