przepływ tensorowy:: porcja:: Rdzeń serwera
#include <server_core.h>
ServerCore zawiera państwowe i pomocnika metod umożliwiających budowę ModelServers które obsługują wiele interfejsów.
Streszczenie
Wszystkie funkcje w ServerCore jest niezależna od jakichkolwiek API specyficznych domen i niezależne od platformy.
W odniesieniu do stanu, ServerCore inicjowany jest i zachowuje statyczny ModelServerConfig, z których siłach o AspiredVersionsManager i pomocniczych struktury danych do podtrzymywania wydajnego porcji.
Interfejsy zbudowane powyżej ServerCore np wdrożeń usługi RPC, pozostanie bezpaństwowcem i wykona wszystkie wyszukiwań z servables (modele) poprzez ServerCore .
Dziedzictwo
Dziedziczy z: tensorflow :: :: Menedżer służącKonstruktory i destruktory | |
---|---|
~ServerCore () |
Typy publiczne | |
---|---|
CustomModelConfigLoader | za pomocąstd::function< Status(const ::google::protobuf::Any &any, EventBus< ServableState > *event_bus, UniquePtrWithDeps< AspiredVersionsManager > *manager)> Funkcja odpowiedzialna za tworzenie instancji i łączenie niezbędnych niestandardowych źródeł i adapterów źródłowych z menedżerem na podstawie przekazanej konfiguracji (dowolnej). |
PreLoadHook | za pomocąAspiredVersionsManager::PreLoadHook |
ServableStateMonitorCreator | za pomocąstd::function< Status(EventBus< ServableState > *event_bus, std::unique_ptr< ServableStateMonitor > *monitor)> |
ServerRequestLoggerUpdater | za pomocąstd::function< Status(const ModelServerConfig &, ServerRequestLogger *)> Sygnatura funkcji używana do aktualizacji server_request_logger. |
Zajęcia z przyjaciółmi | |
---|---|
test_util::ServerCoreTestAccess | friend class |
Funkcje publiczne | |
---|---|
GetServableHandle (const ModelSpec & model_spec, ServableHandle < T > *const handle) | Status Zwraca ServableHandle otrzymał ModelSpec. |
ListAvailableServableIds () const override | virtual std::vector< ServableId > Pobiera listę wszystkich dostępnych identyfikatorów serwowalnych, tj. |
Log (const google::protobuf::Message & request, const google::protobuf::Message & response, const LogMetadata & log_metadata) | virtual Status Zapisuje dziennik dla konkretnego żądania, odpowiedzi i metadanych, jeśli zdecydujemy się na jego próbkowanie i jeśli dla konkretnego modelu skonfigurowano rejestrowanie żądań. |
ReloadConfig (const ModelServerConfig & config) | virtual Status Aktualizuje rdzeń serwera za pomocą wszystkich modeli i źródeł na ModelServerConfig. |
predict_response_tensor_serialization_option () const | internal::PredictResponseTensorSerializationOption |
servable_state_monitor () const | virtual ServableStateMonitor * Zwraca ServableStateMonitor który może być użyty do uzyskania stany servable. |
Publiczne funkcje statyczne | |
---|---|
Create ( Options options, std::unique_ptr< ServerCore > *core) | Status Tworzy ServerCore wystąpienie ze wszystkimi modelami i źródeł na tej ModelServerConfig. |
Funkcje chronione | |
---|---|
ServerCore ( Options options) |
Struktury | |
---|---|
tensorflow :: służąc :: ServerCore :: Opcje | Opcje dla konfiguracji ServerCore obiektu. |
Typy publiczne
CustomModelConfigLoader
std::function< Status(const ::google::protobuf::Any &any, EventBus< ServableState > *event_bus, UniquePtrWithDeps< AspiredVersionsManager > *manager)> CustomModelConfigLoader
Funkcja odpowiedzialna za tworzenie instancji i łączenie niezbędnych niestandardowych źródeł i adapterów źródłowych z menedżerem na podstawie przekazanej konfiguracji (dowolnej).
Oczekiwanym wzorcem jest to, że własność utworzonych źródeł/adapterów źródłowych może zostać przeniesiona na menedżera.
Hak ładowania wstępnego
AspiredVersionsManager::PreLoadHook PreLoadHook
Kreator stanu udostępnianych monitorów
std::function< Status(EventBus< ServableState > *event_bus, std::unique_ptr< ServableStateMonitor > *monitor)> ServableStateMonitorCreator
ServerRequestLoggerUpdater
std::function< Status(const ModelServerConfig &, ServerRequestLogger *)> ServerRequestLoggerUpdater
Sygnatura funkcji używana do aktualizacji server_request_logger.
Zajęcia z przyjaciółmi
test_util::ServerCoreTestAccess
friend class test_util::ServerCoreTestAccess
Funkcje publiczne
Uzyskaj obsługiwany uchwyt
Status GetServableHandle( const ModelSpec & model_spec, ServableHandle< T > *const handle )
Zwraca ServableHandle otrzymał ModelSpec.
Zwraca błąd, jeśli żaden taki Servable nie jest dostępny, np. nie został jeszcze załadowany, został wyciszony/rozładowany itp. Wywołujący może założyć, że stan OK wskazuje na niepuste dojście.
WAŻNE: Dzwoniący powinien trzymać za klamkę tylko przez krótki czas, na przykład na czas pojedynczego żądania. Trzymanie uchwytu przez długi czas uniemożliwi serwowanie załadunku i rozładunku.
Jeśli 'options_.allow_version_labels==true', rozpoznaje dwie określone wersje modelu etykiety „stabilna” i „kanaryjska” i rozkłada je odpowiednio na najmniejszą i największą dostępną wersję.
ListaAvailableServableIds
virtual std::vector< ServableId > ListAvailableServableIds() const override
Pobiera listę wszystkich dostępnych identyfikatorów serwowalnych, tj.
każdy z nich można pobrać za pomocą GetServableHandle.
Dziennik
virtual Status Log( const google::protobuf::Message & request, const google::protobuf::Message & response, const LogMetadata & log_metadata )
Zapisuje dziennik dla konkretnego żądania, odpowiedzi i metadanych, jeśli zdecydujemy się na jego próbkowanie i jeśli dla konkretnego modelu skonfigurowano rejestrowanie żądań.
Przeładuj konfigurację
virtual Status ReloadConfig( const ModelServerConfig & config )
Aktualizuje rdzeń serwera za pomocą wszystkich modeli i źródeł na ModelServerConfig.
Jak Create () , czeka na wszystkich statycznie skonfigurowanych servables zostać udostępnione przed powrotem, i zwraca błąd, jeśli każdy taki wzór nie obciążenia. (Niekoniecznie czeka na zakończenie rozładowywania modeli usuniętych z konfiguracji; może to nastąpić asynchronicznie).
WAŻNE: dozwolone jest tylko wywoływanie tej metody więcej niż raz, jeśli używasz ModelConfigList (w przeciwieństwie do niestandardowej konfiguracji modelu).
przewidywać_odpowiedź_tensor_serializacji_opcja
internal::PredictResponseTensorSerializationOption predict_response_tensor_serialization_option() const
servable_state_monitor
virtual ServableStateMonitor * servable_state_monitor() const
Zwraca ServableStateMonitor który może być użyty do uzyskania stany servable.
~SerwerRdzeń
virtual ~ServerCore()=default
Publiczne funkcje statyczne
Tworzyć
Status Create( Options options, std::unique_ptr< ServerCore > *core )
Tworzy ServerCore wystąpienie ze wszystkimi modelami i źródeł na tej ModelServerConfig.
W przypadku modeli statycznie skonfigurowanych z ModelConfigList, czeka, aż zostaną udostępnione (lub trafią na błąd) do udostępnienia przed zwróceniem. Zwraca stan błędu, jeśli jakikolwiek taki model nie zostanie załadowany.
Funkcje chronione
Rdzeń serwera
ServerCore( Options options )