pub struct GeminiProvider { /* private fields */ }Expand description
Google Gemini API provider.
Implementations§
Source§impl GeminiProvider
impl GeminiProvider
Sourcepub fn with_provider_name(self, provider: impl Into<String>) -> Self
pub fn with_provider_name(self, provider: impl Into<String>) -> Self
Override provider name reported in streamed events.
Sourcepub fn with_api_name(self, api: impl Into<String>) -> Self
pub fn with_api_name(self, api: impl Into<String>) -> Self
Override API identifier reported in streamed events.
Sourcepub const fn with_google_cli_mode(self, enabled: bool) -> Self
pub const fn with_google_cli_mode(self, enabled: bool) -> Self
Enable Google Cloud Code Assist mode (google-gemini-cli / google-antigravity).
Sourcepub fn with_base_url(self, base_url: impl Into<String>) -> Self
pub fn with_base_url(self, base_url: impl Into<String>) -> Self
Create with a custom base URL.
Sourcepub fn with_client(self, client: Client) -> Self
pub fn with_client(self, client: Client) -> Self
Create with a custom HTTP client (VCR, test harness, etc.).
Sourcepub fn with_compat(self, compat: Option<CompatConfig>) -> Self
pub fn with_compat(self, compat: Option<CompatConfig>) -> Self
Attach provider-specific compatibility overrides.
Sourcepub fn streaming_url(&self) -> String
pub fn streaming_url(&self) -> String
Build the streaming URL.
Sourcepub fn build_request(
&self,
context: &Context<'_>,
options: &StreamOptions,
) -> GeminiRequest
pub fn build_request( &self, context: &Context<'_>, options: &StreamOptions, ) -> GeminiRequest
Build the request body for the Gemini API.
Trait Implementations§
Source§impl Provider for GeminiProvider
impl Provider for GeminiProvider
Source§fn stream<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
context: &'life1 Context<'life2>,
options: &'life3 StreamOptions,
) -> Pin<Box<dyn Future<Output = Result<Pin<Box<dyn Stream<Item = Result<StreamEvent>> + Send>>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
fn stream<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
context: &'life1 Context<'life2>,
options: &'life3 StreamOptions,
) -> Pin<Box<dyn Future<Output = Result<Pin<Box<dyn Stream<Item = Result<StreamEvent>> + Send>>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
Start streaming a completion. Read more
Auto Trait Implementations§
impl Freeze for GeminiProvider
impl !RefUnwindSafe for GeminiProvider
impl Send for GeminiProvider
impl Sync for GeminiProvider
impl Unpin for GeminiProvider
impl UnsafeUnpin for GeminiProvider
impl !UnwindSafe for GeminiProvider
Blanket Implementations§
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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: NoopSpan) -> Self
fn instrument(self, _span: NoopSpan) -> Self
Instruments this future with a span (no-op when disabled).
Source§fn in_current_span(self) -> Self
fn in_current_span(self) -> Self
Instruments this future with the current span (no-op when disabled).
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