جریان تنسور:: خدمت:: 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 > فهرستی از تمام شناسههای قابل ارائه در دسترس را دریافت میکند، به عنوان مثال |
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 | virtual ServableStateMonitor * بازگشت ServableStateMonitor است که می تواند مورد استفاده قرار گیرد به پرس و جو کشورهای servable. |
توابع استاتیک عمومی | |
---|---|
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.
اگر چنین سروری در دسترس نباشد، خطا را برمیگرداند، به عنوان مثال، هنوز بارگیری نشده است، خاموش/تخلیه شده است، و غیره. تماسگیرندگان ممکن است فرض کنند که وضعیت OK یک دسته غیر تهی را نشان میدهد.
مهم: تماس گیرنده باید فقط برای مدت کوتاهی روی دسته نگه دارد، مثلاً برای مدت یک درخواست. نگه داشتن دسته برای مدت طولانی از بارگیری و تخلیه قابل سرویس جلوگیری می کند.
اگر 'options_.allow_version_labels==true'، دو برچسب نسخه مدل خاص "stable" و "canary" را شناسایی کرده و آنها را به ترتیب به کوچکترین و بزرگترین نسخه موجود حل می کند.
ListAvailableServableIds
virtual std::vector< ServableId > ListAvailableServableIds() const override
فهرستی از تمام شناسههای قابل ارائه در دسترس را دریافت میکند، به عنوان مثال
هر یک از اینها را می توان با استفاده از 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 (در مقایسه با پیکربندی مدل سفارشی) فقط مجاز است که این روش را بیش از یک بار فراخوانی کنید.
predict_response_tensor_serialization_option
internal::PredictResponseTensorSerializationOption predict_response_tensor_serialization_option() const
server_state_monitor
virtual ServableStateMonitor * servable_state_monitor() const
بازگشت ServableStateMonitor است که می تواند مورد استفاده قرار گیرد به پرس و جو کشورهای servable.
~ServerCore
virtual ~ServerCore()=default
توابع استاتیک عمومی
ايجاد كردن
Status Create( Options options, std::unique_ptr< ServerCore > *core )
ایجاد یک ServerCore عنوان مثال با تمام مدل ها و منابع در هر ModelServerConfig.
برای مدلهایی که بهصورت ایستا با ModelConfigList پیکربندی شدهاند، قبل از بازگشت، منتظر میماند تا در دسترس قرار گیرند (یا با خطا مواجه شوند). اگر چنین مدلی بارگیری نشود، وضعیت خطا را برمیگرداند.
توابع محافظت شده
ServerCore
ServerCore( Options options )
جز در مواردی که غیر از این ذکر شده باشد،محتوای این صفحه تحت مجوز Creative Commons Attribution 4.0 License است. نمونه کدها نیز دارای مجوز Apache 2.0 License است. برای اطلاع از جزئیات، به خطمشیهای سایت Google Developers مراجعه کنید. جاوا علامت تجاری ثبتشده Oracle و/یا شرکتهای وابسته به آن است.
تاریخ آخرین بهروزرسانی 2020-08-12 بهوقت ساعت هماهنگ جهانی.