pub struct GeminiClient { /* private fields */ }Expand description
Client for Google Gemini API
Implementations§
Source§impl GeminiClient
impl GeminiClient
Sourcepub fn new(api_key: String) -> GeminiClient
pub fn new(api_key: String) -> GeminiClient
Create a new Gemini client with the given API key
Sourcepub fn new_with_base_url(api_key: String, base_url: String) -> GeminiClient
pub fn new_with_base_url(api_key: String, base_url: String) -> GeminiClient
Create a new Gemini client with an explicit base URL
Sourcepub fn with_base_url(self, url: String) -> GeminiClient
pub fn with_base_url(self, url: String) -> GeminiClient
Set custom base URL
Attach a dynamic authorizer (Code Assist / Vertex ADC Bearer
token path). When set, x-goog-api-key is NOT sent; the
authorizer injects its own headers (typically
Authorization: Bearer <token>).
pub fn with_code_assist_wire(self) -> GeminiClient
pub fn with_code_assist_project_id( self, project_id: Option<String>, ) -> GeminiClient
Trait Implementations§
Source§impl ImageGenerationExecutor for GeminiClient
impl ImageGenerationExecutor for GeminiClient
fn execute_image_generation<'life0, 'async_trait>(
&'life0 self,
request: ProviderImageGenerationRequest,
) -> Pin<Box<dyn Future<Output = Result<ProviderImageGenerationOutput, LlmError>> + Send + 'async_trait>>where
'life0: 'async_trait,
GeminiClient: 'async_trait,
Source§impl LlmClient for GeminiClient
impl LlmClient for GeminiClient
Source§fn stream<'a>(
&'a self,
request: &'a LlmRequest,
) -> Pin<Box<dyn Stream<Item = Result<LlmEvent, LlmError>> + Send + 'a>>
fn stream<'a>( &'a self, request: &'a LlmRequest, ) -> Pin<Box<dyn Stream<Item = Result<LlmEvent, LlmError>> + Send + 'a>>
Stream a completion request Read more
Source§fn health_check<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<(), LlmError>> + Send + 'async_trait>>where
'life0: 'async_trait,
GeminiClient: 'async_trait,
fn health_check<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<(), LlmError>> + Send + 'async_trait>>where
'life0: 'async_trait,
GeminiClient: 'async_trait,
Check if the client is healthy/connected
Source§fn compile_schema(
&self,
output_schema: &OutputSchema,
) -> Result<CompiledSchema, SchemaError>
fn compile_schema( &self, output_schema: &OutputSchema, ) -> Result<CompiledSchema, SchemaError>
Compile an output schema for this provider. Read more
Auto Trait Implementations§
impl Freeze for GeminiClient
impl !RefUnwindSafe for GeminiClient
impl Send for GeminiClient
impl Sync for GeminiClient
impl Unpin for GeminiClient
impl UnsafeUnpin for GeminiClient
impl !UnwindSafe for GeminiClient
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