@@ -883,6 +883,7 @@ class Config(BaseLeaderWorkerTemplate.Config):
883883
884884 target_port : Optional [int ] = None
885885 enable_service : bool = None
886+ enable_health_probes : Optional [bool ] = None
886887
887888 # Health probe configuration for inference pods.
888889 # - startup_probe_failure_threshold: Max consecutive failures before probe fails.
@@ -928,6 +929,12 @@ def define_flags(cls, fv):
928929 "Whether to enable creation of service for LWS" ,
929930 ** common_kwargs ,
930931 )
932+ flags .DEFINE_boolean (
933+ "enable_health_probes" ,
934+ False ,
935+ "Whether to enable health probes for LWS service" ,
936+ ** common_kwargs ,
937+ )
931938 flags .DEFINE_integer (
932939 "target_port" ,
933940 None ,
@@ -962,6 +969,7 @@ def set_defaults(cls, fv):
962969 fv .set_default ("pathways_head_mem" , fv .pathways_head_mem or "16" )
963970 fv .set_default ("target_port" , fv .target_port or 9000 )
964971 fv .set_default ("enable_service" , fv .enable_service or False )
972+ fv .set_default ("enable_health_probes" , fv .enable_health_probes or False )
965973
966974 @classmethod
967975 def default_config (cls ):
@@ -1128,7 +1136,7 @@ def _build_head_container(self) -> dict:
11281136 # Add health probes for inference pods when service is enabled.
11291137 # This ensures K8s services only route traffic to healthy pods that have
11301138 # finished loading models and are ready to serve requests.
1131- if cfg .enable_service :
1139+ if cfg .enable_health_probes :
11321140 # startupProbe: Allows long startup time for model loading.
11331141 # Max startup time = failureThreshold * periodSeconds.
11341142 container ["startupProbe" ] = {
0 commit comments