Class: Riffer::Providers::Gemini

Inherits:
Base
  • Object
show all
Defined in:
lib/riffer/providers/gemini.rb

Overview

Google Gemini provider for Gemini models via the Gemini REST API.

Constant Summary collapse

BASE_URI =

: URI::Generic

URI("https://generativelanguage.googleapis.com")
VALID_MODEL_PATTERN =

: Regexp

/\A[a-zA-Z0-9._-]+\z/
DEFAULT_OPEN_TIMEOUT =

: Integer

10
DEFAULT_READ_TIMEOUT =

: Integer

60

Constants inherited from Base

Base::WIRE_SEPARATOR

Instance Method Summary collapse

Methods inherited from Base

#generate_text, skills_adapter, #stream_text

Methods included from Messages::Converter

#convert_to_file_part, #convert_to_message_object

Methods included from Helpers::Dependencies

#depends_on

Constructor Details

#initialize(api_key: nil, open_timeout: nil, read_timeout: nil, **options) ⇒ Gemini

Initializes the Gemini provider.

– : (?api_key: String?, ?open_timeout: Integer?, ?read_timeout: Integer?, **untyped) -> void



20
21
22
23
24
25
# File 'lib/riffer/providers/gemini.rb', line 20

def initialize(api_key: nil, open_timeout: nil, read_timeout: nil, **options)
  api_key ||= Riffer.config.gemini.api_key
  @api_key = api_key
  @open_timeout = open_timeout || Riffer.config.gemini.open_timeout || DEFAULT_OPEN_TIMEOUT
  @read_timeout = read_timeout || Riffer.config.gemini.read_timeout || DEFAULT_READ_TIMEOUT
end