pub struct TokenBucketChatModel { /* private fields */ }Expand description
A ChatModel wrapper that uses a TokenBucket to rate-limit requests.
Each call to chat or stream_chat acquires one token before delegating
to the inner model.
Implementations§
Trait Implementations§
Source§impl ChatModel for TokenBucketChatModel
impl ChatModel for TokenBucketChatModel
fn chat<'life0, 'async_trait>(
&'life0 self,
request: ChatRequest,
) -> Pin<Box<dyn Future<Output = Result<ChatResponse, SynapticError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn stream_chat(&self, request: ChatRequest) -> ChatStream<'_>
Source§fn profile(&self) -> Option<ModelProfile>
fn profile(&self) -> Option<ModelProfile>
Return the model’s capability profile, if known.
Auto Trait Implementations§
impl Freeze for TokenBucketChatModel
impl !RefUnwindSafe for TokenBucketChatModel
impl Send for TokenBucketChatModel
impl Sync for TokenBucketChatModel
impl Unpin for TokenBucketChatModel
impl UnsafeUnpin for TokenBucketChatModel
impl !UnwindSafe for TokenBucketChatModel
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