omniai-google 3.4.3 → 3.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 8ed53a642ea244879948b2831fb9f9dfb301eb7a1cedfff39e26131e6a6bb36e
4
- data.tar.gz: abe713af3afe2f678e515ea23fd1cc1cc8b6ab0f328d77936e3a3990d3cd06fa
3
+ metadata.gz: 33134e75816a15602fef0394b0be7527930e7bb8f3b8469e5b0acbe7f93edf23
4
+ data.tar.gz: 1ce3168ea82a7a943e1c6537839b2cec9286bd8684e80e873aca4133ed326c49
5
5
  SHA512:
6
- metadata.gz: 154befd060662f97e6a3b8fdb9a2ba55879f3226f89a8f4c539572c7064c973599e32892567af9b91c173ef42da3995b0d2a237765892a735c27227b59b4c1ec
7
- data.tar.gz: 4d4992ccb4a94e074e2ed185afadebb7dfedb1b44c08ed68485b243876f70b6a6dce4242424538545962bf4992c3176b6d26398a998887b09dd0f5ac45b5cd01
6
+ metadata.gz: e6f3f3f81fa30d51fc892c09f5d13ff00c438b0f064549447a08a25cc814d52650e32ce2140c74b7fdbbdac80b94d8d210ac74978fe4e931837663fa43ae85cd
7
+ data.tar.gz: b2a5c9217496e893385f617c6250448ad8edfddb4aa6274deeab3e516044aa30e82ece923d2d64eaf4720218195cddfe7f6f07778985d8073063212c52f762e2
@@ -17,11 +17,12 @@ module OmniAI
17
17
  GEMINI_1_5_PRO = "gemini-1.5-pro"
18
18
  GEMINI_2_5_PRO = "gemini-2.5-pro"
19
19
  GEMINI_3_0_PRO = "gemini-3-pro-preview"
20
+ GEMINI_3_1_PRO = "gemini-3.1-pro-preview"
20
21
  GEMINI_1_5_FLASH = "gemini-1.5-flash"
21
22
  GEMINI_2_0_FLASH = "gemini-2.0-flash"
22
23
  GEMINI_2_5_FLASH = "gemini-2.5-flash"
23
24
  GEMINI_3_FLASH = "gemini-3-flash-preview"
24
- GEMINI_PRO = GEMINI_3_0_PRO
25
+ GEMINI_PRO = GEMINI_3_1_PRO
25
26
  GEMINI_FLASH = GEMINI_3_FLASH
26
27
  end
27
28
 
@@ -132,7 +133,7 @@ module OmniAI
132
133
  end
133
134
 
134
135
  data[:temperature] = @temperature if @temperature
135
- data[:thinkingConfig] = thinking_config if thinking_config
136
+ data[:thinkingConfig] = thinking_config if @options[:thinking]
136
137
 
137
138
  data = data.compact
138
139
  data unless data.empty?
@@ -148,17 +149,17 @@ module OmniAI
148
149
  stream? ? "streamGenerateContent" : "generateContent"
149
150
  end
150
151
 
151
- # Translates unified thinking option to Google's thinkingConfig format.
152
- # Example: `thinking: true` becomes `{ includeThoughts: true }`
153
152
  # @return [Hash, nil]
154
153
  def thinking_config
155
154
  thinking = @options[:thinking]
156
155
  return unless thinking
156
+ return { includeThoughts: true } unless thinking.is_a?(Hash)
157
157
 
158
- case thinking
159
- when true then { includeThoughts: true }
160
- when Hash then { includeThoughts: true }.merge(thinking)
161
- end
158
+ config = { includeThoughts: true }
159
+ return config.merge(thinking) unless thinking.key?(:effort)
160
+
161
+ config[:thinkingLevel] = thinking[:effort].upcase if thinking[:effort]
162
+ config
162
163
  end
163
164
 
164
165
  # @return [Array<Message>]
@@ -2,6 +2,6 @@
2
2
 
3
3
  module OmniAI
4
4
  module Google
5
- VERSION = "3.4.3"
5
+ VERSION = "3.5.0"
6
6
  end
7
7
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: omniai-google
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.4.3
4
+ version: 3.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Kevin Sylvestre