praval.providers.gemini
Gemini provider implementation.
Classes
|
Google Gemini provider using the public REST API. |
- class praval.providers.gemini.GeminiProvider(config)[source]
Bases:
objectGoogle Gemini provider using the public REST API.
- Parameters:
config (Any)
- provider_name = 'gemini'
- capabilities = ProviderCapabilities(text=True, chat_completions=False, responses_api=False, tools=True, streaming=True, native_streaming=True, tool_streaming=False, structured_outputs=True, json_schema_mode='json_schema', multimodal=True, image_input=True, file_input=True, audio_input=True, video_input=True, audio_transcription=False, speech_generation=False, reasoning=True, reasoning_effort=False, reasoning_budget=False, embeddings=True, local=False, server_tools=False, mcp=False, computer_use=False)
- generate(messages, tools=None, *args, **kwargs)
- invoke(request, tools=None)[source]
Invoke Gemini through the provider-neutral adapter surface.
- Return type:
- Parameters:
request (ModelRequest)
tools (List[Dict[str, Any]] | None)
- continue_with_tool_results(request, response, tool_results)[source]
Submit runtime-executed function results to Gemini.
- Return type:
- Parameters:
request (ModelRequest)
response (ModelResponse)
tool_results (List[ToolResult])
- stream(request)[source]
Stream Gemini responses as provider-neutral events.
- Return type:
Iterator[ModelEvent]- Parameters:
request (ModelRequest)