tensorflow ::サービング:: ServerCore

#include <server_core.h>

ServerCoreは、複数のインタフェースをサポートするModelServersの構築が可能な状態とヘルパーメソッドが含まれています。

概要

すべての機能ServerCoreは、任意のドメイン固有のAPIとプラットフォームに依存しないとは無関係です。

状態の点で、 ServerCoreを使用して初期化し、それがブートストラップそこから静的ModelServerConfig、保持さAspiredVersionsManager効率的な配信をサポートするための補助データ構造。

上に構築されたインタフェースServerCore 、例えばRPCサービスの実装では、ステートレスのままと経由servables(モデル)のすべてのルックアップを実行しますServerCore

継承

:から継承tensorflow ::提供::マネージャー

コンストラクタとデストラクタ

~ServerCore ()

パブリックタイプ

CustomModelConfigLoaderを使用して
std::function< Status(const ::google::protobuf::Any &any, EventBus< ServableState > *event_bus, UniquePtrWithDeps< AspiredVersionsManager > *manager)>
渡された構成(任意)に基づいて、必要なカスタムソースとソースアダプターをインスタンス化してマネージャーに接続する機能。
PreLoadHookを使用して
AspiredVersionsManager::PreLoadHook
ServableStateMonitorCreatorを使用して
std::function< Status(EventBus< ServableState > *event_bus, std::unique_ptr< ServableStateMonitor > *monitor)>
ServerRequestLoggerUpdaterを使用して
std::function< Status(const ModelServerConfig &, ServerRequestLogger *)>
server_request_loggerの更新に使用される関数シグネチャ。

友達クラス

test_util::ServerCoreTestAccess
friend class

公の行事

GetServableHandle (const ModelSpec & model_spec, ServableHandle < T > *const handle)
Status
返しServableHandle ModelSpec与えられています。
ListAvailableServableIds () const override
virtual std::vector< ServableId >
利用可能なすべてのサービス可能なIDのリストを取得します。
Log (const google::protobuf::Message & request, const google::protobuf::Message & response, const LogMetadata & log_metadata)
virtual Status
サンプリングすることにした場合、および特定のモデルに対して要求ログが構成されている場合は、特定の要求、応答、およびメタデータのログを書き込みます。
ReloadConfig (const ModelServerConfig & config)
virtual Status
ModelServerConfigごとに、すべてのモデルとソースでサーバーコアを更新します。
predict_response_tensor_serialization_option () const
internal::PredictResponseTensorSerializationOption
servable_state_monitor () const
戻り値のServableStateMonitorサービス提供可能な状態を照会するために使用することができます。

パブリック静的関数

Create ( Options options, std::unique_ptr< ServerCore > *core)
Status
作成しServerCoreのModelServerConfigあたりのすべてのモデルとソースとのインスタンスを。

保護された機能

ServerCore ( Options options)

構造体

tensorflow ::サービス提供:: ServerCore ::オプション

オプション設定するためのServerCoreのオブジェクトを。

パブリックタイプ

CustomModelConfigLoader

std::function< Status(const ::google::protobuf::Any &any, EventBus< ServableState > *event_bus, UniquePtrWithDeps< AspiredVersionsManager > *manager)> CustomModelConfigLoader

渡された構成(任意)に基づいて、必要なカスタムソースとソースアダプターをインスタンス化してマネージャーに接続する機能。

予想されるパターンは、作成されたソース/ソースアダプターの所有権をマネージャーに譲渡できることです。

PreLoadHook

AspiredVersionsManager::PreLoadHook PreLoadHook

ServableStateMonitorCreator

std::function< Status(EventBus< ServableState > *event_bus, std::unique_ptr< ServableStateMonitor > *monitor)> ServableStateMonitorCreator

ServerRequestLoggerUpdater

std::function< Status(const ModelServerConfig &, ServerRequestLogger *)> ServerRequestLoggerUpdater

server_request_loggerの更新に使用される関数シグネチャ。

友達クラス

test_util :: ServerCoreTestAccess

friend class test_util::ServerCoreTestAccess

公の行事

GetServableHandle

Status GetServableHandle(
  const ModelSpec & model_spec,
  ServableHandle< T > *const handle
)

返しServableHandle ModelSpec与えられています。

そのようなServableが利用できない場合、たとえばまだロードされていない、静止/アンロードされているなどの場合、エラーを返します。呼び出し元は、OKステータスがnull以外のハンドルを示していると見なす場合があります。

重要:呼び出し元は、たとえば1回のリクエストの間など、ハンドルを短時間だけ保持する必要があります。ハンドルを長時間保持すると、サービスの積み下ろしができなくなります。

'options_.allow_version_labels == true'の場合、2つの特定のモデルバージョンラベル「stable」と「canary」を認識し、それぞれ利用可能な最小バージョンと最大バージョンに解決します。

ListAvailableServableIds

virtual std::vector< ServableId > ListAvailableServableIds() const override

利用可能なすべてのサービス可能なIDのリストを取得します。

これらはそれぞれ、GetServableHandleを使用して取得できます。

ログ

virtual Status Log(
  const google::protobuf::Message & request,
  const google::protobuf::Message & response,
  const LogMetadata & log_metadata
)

サンプリングすることにした場合、および特定のモデルに対して要求ログが構成されている場合は、特定の要求、応答、およびメタデータのログを書き込みます。

ReloadConfig

virtual Status ReloadConfig(
  const ModelServerConfig & config
)

ModelServerConfigごとに、すべてのモデルとソースでサーバーコアを更新します。

など)(作成、戻る前に利用可能にされるすべての静的に構成servables待ちを、任意のこのようなモデルは、負荷に失敗した場合にエラーを返します。 (構成から削除されたモデルがアンロードを完了するのを必ずしも待つ必要はありません。非同期で発生する可能性があります。)

重要:ModelConfigListを使用する場合(カスタムモデル構成ではなく)、このメソッドを複数回呼び出すことは合法です。

予測応答_テンソル_シリアル化オプション

internal::PredictResponseTensorSerializationOption predict_response_tensor_serialization_option() const 

servable_state_monitor

virtual ServableStateMonitor * servable_state_monitor() const 

戻り値のServableStateMonitorサービス提供可能な状態を照会するために使用することができます。

〜ServerCore

virtual  ~ServerCore()=default

パブリック静的関数

作成

Status Create(
  Options options,
  std::unique_ptr< ServerCore > *core
)

作成しServerCoreのModelServerConfigあたりのすべてのモデルとソースとのインスタンスを。

ModelConfigListで静的に構成されたモデルの場合、モデルが使用可能になる(またはエラーが発生する)のを待ってから戻ります。そのようなモデルのロードに失敗した場合、エラーステータスを返します。

保護された機能

ServerCore

 ServerCore(
  Options options
)