KyosukeIchikawa commited on
Commit
3defe25
·
1 Parent(s): 7d0716d

Update Gemini model and app to support increased maximum token limit

Browse files
tests/unit/test_gemini_model.py CHANGED
@@ -21,7 +21,7 @@ class TestGeminiModel(unittest.TestCase):
21
  """Test model initialization."""
22
  self.assertIsNotNone(self.model)
23
  self.assertEqual(self.model.model_name, "gemini-2.5-flash-preview-04-17")
24
- self.assertEqual(self.model.max_tokens, 8192)
25
  self.assertDictEqual(self.model.last_token_usage, {})
26
 
27
  def test_set_api_key(self):
@@ -42,7 +42,7 @@ class TestGeminiModel(unittest.TestCase):
42
  """Test getting available models."""
43
  models = self.model.get_available_models()
44
  self.assertIsInstance(models, list)
45
- self.assertIn("gemini-2.0-flash", models)
46
  self.assertIn("gemini-2.5-flash-preview-04-17", models)
47
  self.assertIn("gemini-2.5-pro-preview-05-06", models)
48
 
@@ -79,7 +79,7 @@ class TestGeminiModel(unittest.TestCase):
79
  self.assertFalse(result)
80
  self.assertEqual(1000, self.model.max_tokens) # 変更されない
81
 
82
- result = self.model.set_max_tokens(40000)
83
  self.assertFalse(result)
84
  self.assertEqual(1000, self.model.max_tokens) # 変更されない
85
 
 
21
  """Test model initialization."""
22
  self.assertIsNotNone(self.model)
23
  self.assertEqual(self.model.model_name, "gemini-2.5-flash-preview-04-17")
24
+ self.assertEqual(self.model.max_tokens, 65536)
25
  self.assertDictEqual(self.model.last_token_usage, {})
26
 
27
  def test_set_api_key(self):
 
42
  """Test getting available models."""
43
  models = self.model.get_available_models()
44
  self.assertIsInstance(models, list)
45
+ self.assertIn("gemini-2.5-pro-preview-05-06", models)
46
  self.assertIn("gemini-2.5-flash-preview-04-17", models)
47
  self.assertIn("gemini-2.5-pro-preview-05-06", models)
48
 
 
79
  self.assertFalse(result)
80
  self.assertEqual(1000, self.model.max_tokens) # 変更されない
81
 
82
+ result = self.model.set_max_tokens(80000)
83
  self.assertFalse(result)
84
  self.assertEqual(1000, self.model.max_tokens) # 変更されない
85
 
yomitalk/app.py CHANGED
@@ -503,7 +503,7 @@ class PaperPodcastApp:
503
  with gr.Row():
504
  gemini_max_tokens_slider = gr.Slider(
505
  minimum=100,
506
- maximum=30720,
507
  value=self.get_gemini_max_tokens(),
508
  step=100,
509
  label="最大トークン数",
 
503
  with gr.Row():
504
  gemini_max_tokens_slider = gr.Slider(
505
  minimum=100,
506
+ maximum=65536,
507
  value=self.get_gemini_max_tokens(),
508
  step=100,
509
  label="最大トークン数",
yomitalk/models/gemini_model.py CHANGED
@@ -24,13 +24,12 @@ class GeminiModel:
24
 
25
  # 利用可能なモデルのリスト
26
  self._available_models = [
27
- "gemini-2.0-flash",
28
  "gemini-2.5-flash-preview-04-17",
29
  "gemini-2.5-pro-preview-05-06",
30
  ]
31
 
32
  # デフォルトの最大トークン数
33
- self.max_tokens: int = 8192
34
 
35
  # トークン使用状況の初期化
36
  self.last_token_usage: Dict[str, int] = {}
@@ -81,7 +80,7 @@ class GeminiModel:
81
  max_tokens_int = int(max_tokens)
82
  if max_tokens_int < 100:
83
  return False
84
- if max_tokens_int > 30720: # Geminiの最大値
85
  return False
86
 
87
  self.max_tokens = max_tokens_int
 
24
 
25
  # 利用可能なモデルのリスト
26
  self._available_models = [
 
27
  "gemini-2.5-flash-preview-04-17",
28
  "gemini-2.5-pro-preview-05-06",
29
  ]
30
 
31
  # デフォルトの最大トークン数
32
+ self.max_tokens: int = 65536
33
 
34
  # トークン使用状況の初期化
35
  self.last_token_usage: Dict[str, int] = {}
 
80
  max_tokens_int = int(max_tokens)
81
  if max_tokens_int < 100:
82
  return False
83
+ if max_tokens_int > 65536: # Geminiの最大値
84
  return False
85
 
86
  self.max_tokens = max_tokens_int