Skip to content

Commit 6c85e06

Browse files
committed
KG-216 Remove Gemini Flash and Pro 1.5
1 parent 7f69dba commit 6c85e06

File tree

6 files changed

+14
-202
lines changed

6 files changed

+14
-202
lines changed

integration-tests/src/jvmTest/kotlin/ai/koog/integration/tests/utils/MediaTestScenarios.kt

Lines changed: 4 additions & 45 deletions
Original file line numberDiff line numberDiff line change
@@ -60,25 +60,12 @@ object MediaTestScenarios {
6060
CORRUPTED_AUDIO
6161
}
6262

63-
enum class PdfTestScenario {
64-
BASIC_PDF,
65-
BIG_PDF, // 20MB for OpenAI/Gemini, 5MB for Anthropic
66-
CORRUPTED_PDF
67-
}
68-
69-
enum class VideoTestScenario {
70-
// Only Gemini
71-
BASIC_VIDEO, // video/mp4
72-
BIG_VIDEO, // 20MB
73-
CORRUPTED_VIDEO
74-
}
75-
7663
@JvmStatic
7764
fun markdownScenarioModelCombinations(): Stream<Arguments> {
7865
val scenarios = MarkdownTestScenario.entries.toTypedArray()
7966
val models = listOf(
8067
AnthropicModels.Sonnet_3_7,
81-
GoogleModels.Gemini1_5Pro,
68+
GoogleModels.Gemini2_5Pro,
8269
OpenAIModels.Chat.GPT4o,
8370
)
8471
return scenarios.flatMap { scenario ->
@@ -94,7 +81,7 @@ object MediaTestScenarios {
9481
val models = listOf(
9582
OpenAIModels.Chat.GPT4o,
9683
AnthropicModels.Sonnet_3_7,
97-
GoogleModels.Gemini1_5Pro
84+
GoogleModels.Gemini2_5Pro
9885
)
9986
return scenarios.flatMap { scenario ->
10087
models.map { model ->
@@ -109,7 +96,7 @@ object MediaTestScenarios {
10996
val models = listOf(
11097
OpenAIModels.Chat.GPT4o,
11198
AnthropicModels.Sonnet_3_7,
112-
GoogleModels.Gemini1_5Pro
99+
GoogleModels.Gemini2_5Pro
113100
)
114101
return scenarios.flatMap { scenario ->
115102
models.map { model ->
@@ -123,35 +110,7 @@ object MediaTestScenarios {
123110
val scenarios = AudioTestScenario.entries.toTypedArray()
124111
val models = listOf(
125112
OpenAIModels.Audio.GPT4oAudio,
126-
GoogleModels.Gemini1_5Pro
127-
)
128-
return scenarios.flatMap { scenario ->
129-
models.map { model ->
130-
Arguments.of(scenario, model)
131-
}
132-
}.stream()
133-
}
134-
135-
@JvmStatic
136-
fun pdfScenarioModelCombinations(): Stream<Arguments> {
137-
val scenarios = PdfTestScenario.entries.toTypedArray()
138-
val models = listOf(
139-
OpenAIModels.Chat.GPT4o,
140-
AnthropicModels.Sonnet_3_7,
141-
GoogleModels.Gemini1_5Pro
142-
)
143-
return scenarios.flatMap { scenario ->
144-
models.map { model ->
145-
Arguments.of(scenario, model)
146-
}
147-
}.stream()
148-
}
149-
150-
@JvmStatic
151-
fun videoScenarioModelCombinations(): Stream<Arguments> {
152-
val scenarios = VideoTestScenario.entries.toTypedArray()
153-
val models = listOf(
154-
GoogleModels.Gemini1_5Pro
113+
GoogleModels.Gemini2_5Pro
155114
)
156115
return scenarios.flatMap { scenario ->
157116
models.map { model ->

integration-tests/src/jvmTest/kotlin/ai/koog/integration/tests/utils/Models.kt

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -56,20 +56,11 @@ object Models {
5656
@JvmStatic
5757
fun googleModels(): Stream<LLModel> {
5858
return Stream.of(
59-
GoogleModels.Gemini1_5Pro,
60-
GoogleModels.Gemini1_5ProLatest,
6159
GoogleModels.Gemini2_5Pro,
62-
6360
GoogleModels.Gemini2_0Flash,
6461
GoogleModels.Gemini2_0Flash001,
6562
GoogleModels.Gemini2_0FlashLite,
6663
GoogleModels.Gemini2_0FlashLite001,
67-
GoogleModels.Gemini1_5Flash,
68-
GoogleModels.Gemini1_5FlashLatest,
69-
GoogleModels.Gemini1_5Flash002,
70-
GoogleModels.Gemini1_5Flash8B,
71-
GoogleModels.Gemini1_5Flash8B001,
72-
GoogleModels.Gemini1_5Flash8BLatest,
7364
GoogleModels.Gemini2_5Flash,
7465
)
7566
}
@@ -115,7 +106,6 @@ object Models {
115106
* to signal one does not have an API key for this or that provider
116107
*
117108
* @param provider The LLM provider to check
118-
* @param skipProvidersOverride Optional override for the skip providers list, used for testing
119109
*/
120110
@JvmStatic
121111
fun assumeAvailable(provider: LLMProvider) {

koog-ktor/src/commonMain/kotlin/ai/koog/ktor/utils/LLMModelParser.kt

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -202,18 +202,10 @@ private val ANTHROPIC_MODELS_MAP = mapOf(
202202
)
203203

204204
private val GOOGLE_MODELS_MAP = mapOf(
205-
"gemini1_5pro" to GoogleModels.Gemini1_5Pro,
206-
"gemini1_5prolatest" to GoogleModels.Gemini1_5ProLatest,
207205
"gemini2_0flash" to GoogleModels.Gemini2_0Flash,
208206
"gemini2_0flash001" to GoogleModels.Gemini2_0Flash001,
209207
"gemini2_0flashlite" to GoogleModels.Gemini2_0FlashLite,
210208
"gemini2_0flashlite001" to GoogleModels.Gemini2_0FlashLite001,
211-
"gemini1_5flash" to GoogleModels.Gemini1_5Flash,
212-
"gemini1_5flashlatest" to GoogleModels.Gemini1_5FlashLatest,
213-
"gemini1_5flash002" to GoogleModels.Gemini1_5Flash002,
214-
"gemini1_5flash8b" to GoogleModels.Gemini1_5Flash8B,
215-
"gemini1_5flash8b001" to GoogleModels.Gemini1_5Flash8B001,
216-
"gemini1_5flash8blatest" to GoogleModels.Gemini1_5Flash8BLatest,
217209
)
218210

219211
private val OPENROUTER_MODELS_MAP = mapOf(

koog-ktor/src/commonTest/kotlin/ai/koog/ktor/ModelIdentifierParsingTest.kt

Lines changed: 10 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -184,17 +184,16 @@ class ModelIdentifierParsingTest {
184184
// Google model identifier tests
185185
@Test
186186
fun testGoogleModels() = runTest {
187-
// Test Gemini 1.5 Pro
188-
val gemini1_5Pro = getModelFromIdentifier("google.gemini1_5pro")
189-
assertNotNull(gemini1_5Pro)
190-
assertEquals(LLMProvider.Google, gemini1_5Pro.provider)
191-
assertEquals(GoogleModels.Gemini1_5Pro, gemini1_5Pro)
192-
193-
// Test Gemini 1.5 Pro Latest
194-
val gemini1_5ProLatest = getModelFromIdentifier("google.gemini1_5prolatest")
195-
assertNotNull(gemini1_5ProLatest)
196-
assertEquals(LLMProvider.Google, gemini1_5ProLatest.provider)
197-
assertEquals(GoogleModels.Gemini1_5ProLatest, gemini1_5ProLatest)
187+
// Test Gemini 2.0 Flash
188+
val gemini2_0Flash = getModelFromIdentifier("google.gemini2_0flash")
189+
assertNotNull(gemini2_0Flash)
190+
assertEquals(LLMProvider.Google, gemini2_0Flash.provider)
191+
assertEquals(GoogleModels.Gemini2_0Flash, gemini2_0Flash)
192+
193+
val gemini2_5Pro = getModelFromIdentifier("google.gemini2_5pro")
194+
assertNotNull(gemini2_5Pro)
195+
assertEquals(LLMProvider.Google, gemini2_5Pro.provider)
196+
assertEquals(GoogleModels.Gemini2_5Pro, gemini2_5Pro)
198197
}
199198

200199
// OpenRouter model identifier tests

prompt/prompt-executor/prompt-executor-clients/prompt-executor-google-client/src/commonMain/kotlin/ai/koog/prompt/executor/clients/google/GoogleModels.kt

Lines changed: 0 additions & 103 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,6 @@
11
package ai.koog.prompt.executor.clients.google
22

33
import ai.koog.prompt.executor.clients.LLModelDefinitions
4-
import ai.koog.prompt.executor.clients.google.GoogleModels.Gemini1_5Flash
5-
import ai.koog.prompt.executor.clients.google.GoogleModels.Gemini1_5Flash002
6-
import ai.koog.prompt.executor.clients.google.GoogleModels.Gemini1_5Flash8B
7-
import ai.koog.prompt.executor.clients.google.GoogleModels.Gemini1_5Flash8BLatest
8-
import ai.koog.prompt.executor.clients.google.GoogleModels.Gemini1_5FlashLatest
9-
import ai.koog.prompt.executor.clients.google.GoogleModels.Gemini1_5Pro
10-
import ai.koog.prompt.executor.clients.google.GoogleModels.Gemini1_5Pro002
11-
import ai.koog.prompt.executor.clients.google.GoogleModels.Gemini1_5ProLatest
124
import ai.koog.prompt.executor.clients.google.GoogleModels.Gemini2_0Flash
135
import ai.koog.prompt.executor.clients.google.GoogleModels.Gemini2_0Flash001
146
import ai.koog.prompt.executor.clients.google.GoogleModels.Gemini2_0FlashLite
@@ -27,14 +19,6 @@ import ai.koog.prompt.llm.LLModel
2719
* | [Gemini2_0Flash] | Fast | $0.10-$0.70 / $0.40 | Audio, Image, Video, Text, Tools | Text, Tools |
2820
* | [Gemini2_0Flash001] | Fast | $0.10-$0.70 / $0.40 | Audio, Image, Video, Text, Tools | Text, Tools |
2921
* | [Gemini2_0FlashLite] | Very fast | $0.075 / $0.30 | Audio, Image, Video, Text, Tools | Text, Tools |
30-
* | [Gemini1_5Pro] | Medium | $1.25-$2.50 / $5.00-$10.00 | Audio, Image, Video, Text, Tools | Text, Tools |
31-
* | [Gemini1_5ProLatest] | Medium | $1.25-$2.50 / $5.00-$10.00 | Audio, Image, Video, Text, Tools | Text, Tools |
32-
* | [Gemini1_5Pro002] | Medium | $1.25-$2.50 / $5.00-$10.00 | Audio, Image, Video, Text, Tools | Text, Tools |
33-
* | [Gemini1_5Flash] | Fast | $0.075-$0.15 / $0.30-$0.60 | Audio, Image, Video, Text, Tools | Text, Tools |
34-
* | [Gemini1_5FlashLatest] | Fast | $0.075-$0.15 / $0.30-$0.60 | Audio, Image, Video, Text, Tools | Text, Tools |
35-
* | [Gemini1_5Flash002] | Fast | $0.075-$0.15 / $0.30-$0.60 | Audio, Image, Video, Text, Tools | Text, Tools |
36-
* | [Gemini1_5Flash8B] | Very fast | $0.0375-$0.075 / $0.15-$0.30 | Audio, Image, Video, Text, Tools | Text, Tools |
37-
* | [Gemini1_5Flash8BLatest] | Very fast | $0.0375-$0.075 / $0.15-$0.30 | Audio, Image, Video, Text, Tools | Text, Tools |
3822
* | [Gemini2_5Pro] | Slow | $1.25-$2.50 / $10.00-$15.00² | Audio, Image, Video, Text, Tools | Text, Tools |
3923
* | [Gemini2_5Flash] | Medium | $0.15-$1.00 / $0.60-$3.50³ | Audio, Image, Video, Text, Tools | Text, Tools |
4024
*
@@ -119,93 +103,6 @@ public object GoogleModels : LLModelDefinitions {
119103
id = "gemini-2.0-flash-lite-001",
120104
)
121105

122-
/**
123-
* Gemini 1.5 Pro is a capable multimodal model with strong reasoning capabilities.
124-
*
125-
* Context window: 1 million tokens
126-
* Knowledge cutoff: February 2024
127-
*
128-
* @see <a href="storage.googleapis.com/deepmind-media/gemini/gemini_v1_5_report.pdf#page=105">
129-
*/
130-
public val Gemini1_5Pro: LLModel = LLModel(
131-
provider = LLMProvider.Google,
132-
id = "gemini-1.5-pro",
133-
capabilities = fullCapabilities, // 1.5 Pro has robust tool support
134-
contextLength = 1_048_576,
135-
maxOutputTokens = 8_192,
136-
)
137-
138-
/**
139-
* Latest version of Gemini 1.5 Pro
140-
*/
141-
public val Gemini1_5ProLatest: LLModel = Gemini1_5Pro.copy(
142-
id = "gemini-1.5-pro-latest",
143-
)
144-
145-
/**
146-
* Specific version of Gemini 1.5 Pro
147-
*/
148-
public val Gemini1_5Pro002: LLModel = Gemini1_5Pro.copy(
149-
id = "gemini-1.5-pro-002",
150-
)
151-
152-
/**
153-
* Gemini 1.5 Flash is a fast and efficient multimodal model.
154-
*
155-
* Context window: 1 million tokens
156-
* Knowledge cutoff: February 2024
157-
*
158-
* @see <a href="storage.googleapis.com/deepmind-media/gemini/gemini_v1_5_report.pdf#page=105">
159-
*/
160-
public val Gemini1_5Flash: LLModel = LLModel(
161-
provider = LLMProvider.Google,
162-
id = "gemini-1.5-flash",
163-
capabilities = fullCapabilities, // 1.5 Flash has tool support
164-
contextLength = 1_048_576,
165-
maxOutputTokens = 8_192,
166-
)
167-
168-
/**
169-
* Latest version of Gemini 1.5 Flash
170-
*/
171-
public val Gemini1_5FlashLatest: LLModel = Gemini1_5Flash.copy(
172-
id = "gemini-1.5-flash-latest",
173-
capabilities = multimodalCapabilities,
174-
)
175-
176-
/**
177-
* Specific version of Gemini 1.5 Flash
178-
*/
179-
public val Gemini1_5Flash002: LLModel = Gemini1_5Flash.copy(
180-
id = "gemini-1.5-flash-latest",
181-
capabilities = multimodalCapabilities,
182-
)
183-
184-
/**
185-
* Gemini 1.5 Flash 8B is a smaller, more efficient variant of Gemini 1.5 Flash.
186-
*/
187-
public val Gemini1_5Flash8B: LLModel = LLModel(
188-
provider = LLMProvider.Google,
189-
id = "gemini-1.5-flash-8b",
190-
capabilities = multimodalCapabilities,
191-
contextLength = 1_048_576,
192-
maxOutputTokens = 8_192,
193-
)
194-
195-
/**
196-
* Specific version of Gemini 1.5 Flash 8B
197-
*/
198-
public val Gemini1_5Flash8B001: LLModel = Gemini1_5Flash8B.copy(
199-
id = "gemini-1.5-flash-8b-001",
200-
)
201-
202-
/**
203-
* Latest version of Gemini 1.5 Flash 8B
204-
*/
205-
public val Gemini1_5Flash8BLatest: LLModel = Gemini1_5Flash8B.copy(
206-
id = "gemini-1.5-flash-8b-latest",
207-
)
208-
209106
/**
210107
* Gemini 2.5 Pro offers advanced capabilities for complex tasks.
211108
*

prompt/prompt-executor/prompt-executor-clients/prompt-executor-openrouter-client/src/commonMain/kotlin/ai/koog/prompt/executor/clients/openrouter/OpenRouterModels.kt

Lines changed: 0 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@ package ai.koog.prompt.executor.clients.openrouter
22

33
import ai.koog.prompt.executor.clients.LLModelDefinitions
44
import ai.koog.prompt.executor.clients.anthropic.AnthropicModels
5-
import ai.koog.prompt.executor.clients.google.GoogleModels
65
import ai.koog.prompt.llm.LLMCapability
76
import ai.koog.prompt.llm.LLMProvider
87
import ai.koog.prompt.llm.LLModel
@@ -126,30 +125,6 @@ public object OpenRouterModels : LLModelDefinitions {
126125
contextLength = 16_385,
127126
)
128127

129-
/**
130-
* Represents the Google Gemini 1.5 Pro language model accessed through the OpenRouter provider.
131-
*
132-
* This model supports multimodal capabilities, which enable handling multiple types of input or tasks.
133-
* It is identified by the `google/gemini-1.5-pro` model ID within the OpenRouter ecosystem.
134-
*/
135-
public val Gemini15Pro: LLModel = GoogleModels.Gemini1_5Pro.copy(
136-
provider = LLMProvider.OpenRouter,
137-
id = "google/gemini-1.5-pro",
138-
capabilities = multimodalCapabilities,
139-
)
140-
141-
/**
142-
* Represents the Gemini 1.5 Flash language model provided via the OpenRouter platform.
143-
*
144-
* This language model is identified by its unique `id` and supports multimodal capabilities,
145-
* enabling it to handle various modes of input and output effectively.
146-
*/
147-
public val Gemini15Flash: LLModel = GoogleModels.Gemini1_5Flash.copy(
148-
provider = LLMProvider.OpenRouter,
149-
id = "google/gemini-1.5-flash",
150-
capabilities = multimodalCapabilities,
151-
)
152-
153128
/**
154129
* Represents the Llama3 model configuration provided by OpenRouter.
155130
* This model is identified by the unique ID "meta/llama-3-70b" and

0 commit comments

Comments
 (0)