pub struct GeminiProvider { /* private fields */ }
Implementations§
Trait Implementations§
Source§impl LLMClient for GeminiProvider
impl LLMClient for GeminiProvider
fn generate<'life0, 'life1, 'async_trait>(
&'life0 mut self,
prompt: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<LLMResponse, LLMError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn backend_kind(&self) -> BackendKind
fn model_id(&self) -> &str
Source§impl LLMProvider for GeminiProvider
impl LLMProvider for GeminiProvider
Source§fn supports_streaming(&self) -> bool
fn supports_streaming(&self) -> bool
Whether the provider has native streaming support
Source§fn supports_reasoning(&self, _model: &str) -> bool
fn supports_reasoning(&self, _model: &str) -> bool
Whether the provider surfaces structured reasoning traces for the given model
Source§fn generate<'life0, 'async_trait>(
&'life0 self,
request: LLMRequest,
) -> Pin<Box<dyn Future<Output = Result<LLMResponse, LLMError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn generate<'life0, 'async_trait>(
&'life0 self,
request: LLMRequest,
) -> Pin<Box<dyn Future<Output = Result<LLMResponse, LLMError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Generate completion
Source§fn stream<'life0, 'async_trait>(
&'life0 self,
request: LLMRequest,
) -> Pin<Box<dyn Future<Output = Result<LLMStream, LLMError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn stream<'life0, 'async_trait>(
&'life0 self,
request: LLMRequest,
) -> Pin<Box<dyn Future<Output = Result<LLMStream, LLMError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Stream completion (optional)
Source§fn supported_models(&self) -> Vec<String>
fn supported_models(&self) -> Vec<String>
Get supported models
Source§fn validate_request(&self, request: &LLMRequest) -> Result<(), LLMError>
fn validate_request(&self, request: &LLMRequest) -> Result<(), LLMError>
Validate request for this provider
Source§fn supports_reasoning_effort(&self, _model: &str) -> bool
fn supports_reasoning_effort(&self, _model: &str) -> bool
Whether the provider accepts configurable reasoning effort for the model
Auto Trait Implementations§
impl Freeze for GeminiProvider
impl !RefUnwindSafe for GeminiProvider
impl Send for GeminiProvider
impl Sync for GeminiProvider
impl Unpin for GeminiProvider
impl !UnwindSafe for GeminiProvider
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
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> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more