pub struct Client { /* private fields */ }
Implementations§
Source§impl Client
impl Client
pub fn new(api_key: String, model: String) -> Self
Sourcepub fn with_config(api_key: String, model: String, config: ClientConfig) -> Self
pub fn with_config(api_key: String, model: String, config: ClientConfig) -> Self
Create a client with custom configuration
Sourcepub fn config(&self) -> &ClientConfig
pub fn config(&self) -> &ClientConfig
Get current client configuration
Sourcepub fn with_retry_config(self, retry_config: RetryConfig) -> Self
pub fn with_retry_config(self, retry_config: RetryConfig) -> Self
Set retry configuration
Sourcepub fn retry_config(&self) -> &RetryConfig
pub fn retry_config(&self) -> &RetryConfig
Get current retry configuration
Sourcepub fn metrics(&self) -> &StreamingMetrics
pub fn metrics(&self) -> &StreamingMetrics
Get streaming metrics
Sourcepub fn reset_metrics(&mut self)
pub fn reset_metrics(&mut self)
Reset streaming metrics
Sourcepub async fn generate(
&mut self,
request: &GenerateContentRequest,
) -> Result<GenerateContentResponse>
pub async fn generate( &mut self, request: &GenerateContentRequest, ) -> Result<GenerateContentResponse>
Generate content with the Gemini API
Sourcepub async fn generate_stream<F>(
&mut self,
request: &GenerateContentRequest,
on_chunk: F,
) -> Result<StreamingResponse, StreamingError>
pub async fn generate_stream<F>( &mut self, request: &GenerateContentRequest, on_chunk: F, ) -> Result<StreamingResponse, StreamingError>
Generate content with the Gemini API using streaming
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Client
impl !RefUnwindSafe for Client
impl Send for Client
impl Sync for Client
impl Unpin for Client
impl !UnwindSafe for Client
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> 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> 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