pub struct LoggingMiddleware { /* private fields */ }Expand description
Middleware that emits Logger events around every call.
Cheap to clone (just an Arc to the logger); safe to stack on top of
retry / cache.
Implementations§
Source§impl LoggingMiddleware
impl LoggingMiddleware
Sourcepub fn with_prompt(self, include: bool) -> Self
pub fn with_prompt(self, include: bool) -> Self
Include the Prompt in LogCallStart. Off by default to avoid
accidentally logging PII or large payloads.
Sourcepub fn with_stream_parts(self, include: bool) -> Self
pub fn with_stream_parts(self, include: bool) -> Self
Emit a Logger::log_stream_part event for every part yielded by
do_stream. Off by default — turning it on can be noisy.
Trait Implementations§
Source§impl Clone for LoggingMiddleware
impl Clone for LoggingMiddleware
Source§fn clone(&self) -> LoggingMiddleware
fn clone(&self) -> LoggingMiddleware
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for LoggingMiddleware
impl Debug for LoggingMiddleware
Source§impl LanguageModelMiddleware for LoggingMiddleware
impl LanguageModelMiddleware for LoggingMiddleware
Source§fn wrap_generate<'life0, 'life1, 'async_trait>(
&'life0 self,
next: &'life1 dyn LanguageModel,
params: CallOptions,
) -> Pin<Box<dyn Future<Output = Result<GenerateResult>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn wrap_generate<'life0, 'life1, 'async_trait>(
&'life0 self,
next: &'life1 dyn LanguageModel,
params: CallOptions,
) -> Pin<Box<dyn Future<Output = Result<GenerateResult>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Wrap a non-streaming generation. Read more
Source§fn wrap_stream<'life0, 'life1, 'async_trait>(
&'life0 self,
next: &'life1 dyn LanguageModel,
params: CallOptions,
) -> Pin<Box<dyn Future<Output = Result<StreamResult>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn wrap_stream<'life0, 'life1, 'async_trait>(
&'life0 self,
next: &'life1 dyn LanguageModel,
params: CallOptions,
) -> Pin<Box<dyn Future<Output = Result<StreamResult>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Wrap a streaming generation. Read more
Source§fn override_provider(&self, _inner: &dyn LanguageModel) -> Option<String>
fn override_provider(&self, _inner: &dyn LanguageModel) -> Option<String>
Override the provider id exposed by the wrapped model. Read more
Source§fn override_model_id(&self, _inner: &dyn LanguageModel) -> Option<String>
fn override_model_id(&self, _inner: &dyn LanguageModel) -> Option<String>
Override the model id exposed by the wrapped model. Read more
Source§fn override_supported_urls<'life0, 'life1, 'async_trait>(
&'life0 self,
_inner: &'life1 dyn LanguageModel,
) -> Pin<Box<dyn Future<Output = Option<SupportedUrls>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn override_supported_urls<'life0, 'life1, 'async_trait>(
&'life0 self,
_inner: &'life1 dyn LanguageModel,
) -> Pin<Box<dyn Future<Output = Option<SupportedUrls>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Override the supported-URL map exposed by the wrapped model. Read more
Source§fn transform_params<'life0, 'life1, 'async_trait>(
&'life0 self,
_kind: CallKind,
params: CallOptions,
_inner: &'life1 dyn LanguageModel,
) -> Pin<Box<dyn Future<Output = Result<CallOptions>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn transform_params<'life0, 'life1, 'async_trait>(
&'life0 self,
_kind: CallKind,
params: CallOptions,
_inner: &'life1 dyn LanguageModel,
) -> Pin<Box<dyn Future<Output = Result<CallOptions>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Transform the call options before they reach the inner model. Read more
Auto Trait Implementations§
impl Freeze for LoggingMiddleware
impl !RefUnwindSafe for LoggingMiddleware
impl Send for LoggingMiddleware
impl Sync for LoggingMiddleware
impl Unpin for LoggingMiddleware
impl UnsafeUnpin for LoggingMiddleware
impl !UnwindSafe for LoggingMiddleware
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
Mutably borrows from an owned value. Read more