tensorflow :: servicio:: Núcleo del servidor
#include <server_core.h>
ServerCore contiene métodos estatales y auxiliares que permiten la construcción de ModelServers que soportan múltiples interfaces.
Resumen
Toda la funcionalidad de ServerCore es independiente de cualquier API de dominio específico e independiente de plataformas.
En términos de estado, ServerCore se inicializa con y retiene una estática ModelServerConfig, de la que Bootstraps un AspiredVersionsManager y estructuras de datos auxiliares de soporte de servicio eficiente.
Interfaces integradas por encima de ServerCore , por ejemplo, las implementaciones del servicio RPC, permanecerán sin estado y llevará a cabo todas las operaciones de búsqueda de servables (modelos) a través de ServerCore .
Herencia
Hereda de: tensorflow :: servir Gestor ::Constructores y Destructores | |
---|---|
~ServerCore () |
Tipos públicos | |
---|---|
CustomModelConfigLoader | utilizandostd::function< Status(const ::google::protobuf::Any &any, EventBus< ServableState > *event_bus, UniquePtrWithDeps< AspiredVersionsManager > *manager)> Una función que es responsable de instanciar y conectar las fuentes personalizadas necesarias y los adaptadores de fuente al administrador en función de una configuración pasada (cualquiera). |
PreLoadHook | utilizandoAspiredVersionsManager::PreLoadHook |
ServableStateMonitorCreator | utilizandostd::function< Status(EventBus< ServableState > *event_bus, std::unique_ptr< ServableStateMonitor > *monitor)> |
ServerRequestLoggerUpdater | utilizandostd::function< Status(const ModelServerConfig &, ServerRequestLogger *)> Firma de función utilizada para actualizar server_request_logger. |
Clases de amigos | |
---|---|
test_util::ServerCoreTestAccess | friend class |
Funciones publicas | |
---|---|
GetServableHandle (const ModelSpec & model_spec, ServableHandle < T > *const handle) | Status Devuelve una ServableHandle dado un ModelSpec. |
ListAvailableServableIds () const override | virtual std::vector< ServableId > Obtiene una lista de todas las identificaciones disponibles disponibles, es decir |
Log (const google::protobuf::Message & request, const google::protobuf::Message & response, const LogMetadata & log_metadata) | virtual Status Escribe el registro para la solicitud, la respuesta y los metadatos en particular, si decidimos probarlo y si se configuró el registro de solicitudes para el modelo en particular. |
ReloadConfig (const ModelServerConfig & config) | virtual Status Actualiza el núcleo del servidor con todos los modelos y fuentes según ModelServerConfig. |
predict_response_tensor_serialization_option () const | internal::PredictResponseTensorSerializationOption |
servable_state_monitor () const | virtual ServableStateMonitor * Las devoluciones ServableStateMonitor que se pueden utilizar para consultar los estados se pueden publicar y. |
Funciones estáticas públicas | |
---|---|
Create ( Options options, std::unique_ptr< ServerCore > *core) | Status Crea un ServerCore instancia con todos los modelos y las fuentes por la ModelServerConfig. |
Funciones protegidas | |
---|---|
ServerCore ( Options options) |
estructuras | |
---|---|
tensorflow :: :: servir ServerCore :: Opciones | Opciones para configurar una ServerCore objeto. |
Tipos públicos
CustomModelConfigLoader
std::function< Status(const ::google::protobuf::Any &any, EventBus< ServableState > *event_bus, UniquePtrWithDeps< AspiredVersionsManager > *manager)> CustomModelConfigLoader
Una función que es responsable de instanciar y conectar las fuentes personalizadas necesarias y los adaptadores de fuente al administrador en función de una configuración pasada (cualquiera).
El patrón esperado es que la propiedad de las fuentes/adaptadores de fuente creados se pueda transferir al administrador.
Gancho de precarga
AspiredVersionsManager::PreLoadHook PreLoadHook
ServibleStateMonitorCreatorServibleStateMonitorCreator
std::function< Status(EventBus< ServableState > *event_bus, std::unique_ptr< ServableStateMonitor > *monitor)> ServableStateMonitorCreator
ServerRequestLoggerUpdater
std::function< Status(const ModelServerConfig &, ServerRequestLogger *)> ServerRequestLoggerUpdater
Firma de función utilizada para actualizar server_request_logger.
Clases de amigos
test_util::ServerCoreTestAcceso
friend class test_util::ServerCoreTestAccess
Funciones publicas
GetServableHandle
Status GetServableHandle( const ModelSpec & model_spec, ServableHandle< T > *const handle )
Devuelve una ServableHandle dado un ModelSpec.
Devuelve un error si no hay ningún servidor disponible, por ejemplo, aún no se ha cargado, se ha desactivado/descargado, etc. Las personas que llaman pueden suponer que un estado correcto indica un identificador no nulo.
IMPORTANTE: la persona que llama solo debe mantener un identificador durante un breve período de tiempo, por ejemplo, durante la duración de una sola solicitud. Sostener una manija durante un largo período de tiempo evitará la carga y descarga útil.
Si 'options_.allow_version_labels==true', reconoce dos etiquetas de versión de modelo específicas "estable" y "canario" y las resuelve en la versión más pequeña y más grande disponible, respectivamente.
ListAvailableServableIds
virtual std::vector< ServableId > ListAvailableServableIds() const override
Obtiene una lista de todas las identificaciones disponibles disponibles, es decir
cada uno de estos se puede recuperar usando GetServableHandle.
Tronco
virtual Status Log( const google::protobuf::Message & request, const google::protobuf::Message & response, const LogMetadata & log_metadata )
Escribe el registro para la solicitud, la respuesta y los metadatos en particular, si decidimos probarlo y si se configuró el registro de solicitudes para el modelo en particular.
RecargarConfig
virtual Status ReloadConfig( const ModelServerConfig & config )
Actualiza el núcleo del servidor con todos los modelos y fuentes según ModelServerConfig.
Como Crear () , espera a que todos los servables configuradas estáticamente a estar disponibles antes de regresar, y devuelve un error si alguno de estos modelos no se carga. (No necesariamente espera a que los modelos eliminados de la configuración terminen de descargarse; eso puede ocurrir de forma asíncrona).
IMPORTANTE: solo es legal llamar a este método más de una vez si se usa ModelConfigList (frente a la configuración del modelo personalizado).
predict_response_tensor_serialization_option
internal::PredictResponseTensorSerializationOption predict_response_tensor_serialization_option() const
servible_state_monitor
virtual ServableStateMonitor * servable_state_monitor() const
Las devoluciones ServableStateMonitor que se pueden utilizar para consultar los estados se pueden publicar y.
~ Núcleo del servidor
virtual ~ServerCore()=default
Funciones estáticas públicas
Crear
Status Create( Options options, std::unique_ptr< ServerCore > *core )
Crea un ServerCore instancia con todos los modelos y las fuentes por la ModelServerConfig.
Para los modelos configurados estáticamente con ModelConfigList, espera a que estén disponibles (o se produzca un error) para servir antes de regresar. Devuelve un estado de error si alguno de esos modelos no se carga.
Funciones protegidas
Núcleo del servidor
ServerCore( Options options )