pub struct ModelProviderHealthServiceClient<T> { /* private fields */ }Expand description
ModelProviderHealthService monitors the health and performance of the backing LLM model provider. It runs lightweight health checks every 5 minutes to measure provider responsiveness and reliability, independent of the complexity of user prompts.
Implementations§
Source§impl<T> ModelProviderHealthServiceClient<T>where
T: GrpcService<Body>,
T::Error: Into<StdError>,
T::ResponseBody: Body<Data = Bytes> + Send + 'static,
<T::ResponseBody as Body>::Error: Into<StdError> + Send,
impl<T> ModelProviderHealthServiceClient<T>where
T: GrpcService<Body>,
T::Error: Into<StdError>,
T::ResponseBody: Body<Data = Bytes> + Send + 'static,
<T::ResponseBody as Body>::Error: Into<StdError> + Send,
pub fn new(inner: T) -> Self
pub fn with_origin(inner: T, origin: Uri) -> Self
pub fn with_interceptor<F>(
inner: T,
interceptor: F,
) -> ModelProviderHealthServiceClient<InterceptedService<T, F>>where
F: Interceptor,
T::ResponseBody: Default,
T: Service<Request<Body>, Response = Response<<T as GrpcService<Body>>::ResponseBody>>,
<T as Service<Request<Body>>>::Error: Into<StdError> + Send + Sync,
Sourcepub fn send_compressed(self, encoding: CompressionEncoding) -> Self
pub fn send_compressed(self, encoding: CompressionEncoding) -> Self
Compress requests with the given encoding.
This requires the server to support it otherwise it might respond with an error.
Sourcepub fn accept_compressed(self, encoding: CompressionEncoding) -> Self
pub fn accept_compressed(self, encoding: CompressionEncoding) -> Self
Enable decompressing responses.
Sourcepub fn max_decoding_message_size(self, limit: usize) -> Self
pub fn max_decoding_message_size(self, limit: usize) -> Self
Limits the maximum size of a decoded message.
Default: 4MB
Sourcepub fn max_encoding_message_size(self, limit: usize) -> Self
pub fn max_encoding_message_size(self, limit: usize) -> Self
Limits the maximum size of an encoded message.
Default: usize::MAX
Sourcepub async fn get_provider_status(
&mut self,
request: impl IntoRequest<GetProviderStatusRequest>,
) -> Result<Response<GetProviderStatusResponse>, Status>
pub async fn get_provider_status( &mut self, request: impl IntoRequest<GetProviderStatusRequest>, ) -> Result<Response<GetProviderStatusResponse>, Status>
GetProviderStatus returns the current health status of the model provider based on recent health checks. The status is HEALTHY if all checks in the last 30 minutes passed latency thresholds, or DEGRADED if any checks exceeded latency thresholds or failed entirely.
Trait Implementations§
Source§impl<T: Clone> Clone for ModelProviderHealthServiceClient<T>
impl<T: Clone> Clone for ModelProviderHealthServiceClient<T>
Source§fn clone(&self) -> ModelProviderHealthServiceClient<T>
fn clone(&self) -> ModelProviderHealthServiceClient<T>
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreAuto Trait Implementations§
impl<T> !Freeze for ModelProviderHealthServiceClient<T>
impl<T> RefUnwindSafe for ModelProviderHealthServiceClient<T>where
T: RefUnwindSafe,
impl<T> Send for ModelProviderHealthServiceClient<T>where
T: Send,
impl<T> Sync for ModelProviderHealthServiceClient<T>where
T: Sync,
impl<T> Unpin for ModelProviderHealthServiceClient<T>where
T: Unpin,
impl<T> UnwindSafe for ModelProviderHealthServiceClient<T>where
T: UnwindSafe,
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T in a tonic::Request