mirror of https://github.com/Mai-with-u/MaiBot.git
过滤非思考模型
parent
00ff43625b
commit
b2c04dac6a
|
|
@ -1,6 +1,7 @@
|
||||||
import asyncio
|
import asyncio
|
||||||
import io
|
import io
|
||||||
import base64
|
import base64
|
||||||
|
import warnings
|
||||||
from typing import Callable, AsyncIterator, Optional, Coroutine, Any, List, Dict
|
from typing import Callable, AsyncIterator, Optional, Coroutine, Any, List, Dict
|
||||||
|
|
||||||
from google import genai
|
from google import genai
|
||||||
|
|
@ -578,17 +579,23 @@ class GeminiClient(BaseClient):
|
||||||
"safety_settings": gemini_safe_settings, # 防止空回复问题
|
"safety_settings": gemini_safe_settings, # 防止空回复问题
|
||||||
}
|
}
|
||||||
|
|
||||||
# 根据模型类型选择 thinking_config 参数
|
# 排除非思考的媒体模型(避免传入ThinkingConfig参数引发400)
|
||||||
thinking_kwargs = {"include_thoughts": True}
|
is_media_model = any(suffix in model_info.model_identifier for suffix in ("-tts", "-image"))
|
||||||
if model_identifier.startswith("gemini-3"):
|
if not (is_media_model and model_info.model_identifier.startswith("gemini-2.5")):
|
||||||
thinking_kwargs["thinking_level"] = think
|
# 根据模型类型选择 thinking_config 参数
|
||||||
|
thinking_kwargs = {"include_thoughts": True}
|
||||||
|
if model_identifier.startswith("gemini-3"):
|
||||||
|
thinking_kwargs["thinking_level"] = think
|
||||||
|
elif model_identifier.startswith("gemini-2.5"):
|
||||||
|
thinking_kwargs["thinking_budget"] = think
|
||||||
|
try:
|
||||||
|
generation_config_dict["thinking_config"] = ThinkingConfig(**thinking_kwargs)
|
||||||
|
except Exception:
|
||||||
|
logger.warning("当前SDK不支持 thinking_level,请手动更新google-genai库")
|
||||||
|
generation_config_dict["thinking_config"] = ThinkingConfig(include_thoughts=True)
|
||||||
else:
|
else:
|
||||||
thinking_kwargs["thinking_budget"] = think
|
# 忽略来自genai._common的thinking_config无效记录警告
|
||||||
try:
|
warnings.filterwarnings("ignore", category=UserWarning, module="google.genai._common")
|
||||||
generation_config_dict["thinking_config"] = ThinkingConfig(**thinking_kwargs)
|
|
||||||
except Exception:
|
|
||||||
logger.warning("当前SDK不支持 thinking_level,请手动更新google-genai库")
|
|
||||||
generation_config_dict["thinking_config"] = ThinkingConfig(include_thoughts=True)
|
|
||||||
if tools:
|
if tools:
|
||||||
generation_config_dict["tools"] = Tool(function_declarations=tools)
|
generation_config_dict["tools"] = Tool(function_declarations=tools)
|
||||||
if messages[1]:
|
if messages[1]:
|
||||||
|
|
@ -751,16 +758,20 @@ class GeminiClient(BaseClient):
|
||||||
"safety_settings": gemini_safe_settings,
|
"safety_settings": gemini_safe_settings,
|
||||||
}
|
}
|
||||||
|
|
||||||
thinking_kwargs = {"include_thoughts": True}
|
is_media_model = any(suffix in model_identifier for suffix in ("-tts", "-image"))
|
||||||
if model_info.model_identifier.startswith("gemini-3"):
|
if not (is_media_model and model_identifier.startswith("gemini-2.5")):
|
||||||
thinking_kwargs["thinking_level"] = think
|
thinking_kwargs = {"include_thoughts": True}
|
||||||
|
if model_info.model_identifier.startswith("gemini-3"):
|
||||||
|
thinking_kwargs["thinking_level"] = think
|
||||||
|
elif model_info.model_identifier.startswith("gemini-2.5"):
|
||||||
|
thinking_kwargs["thinking_budget"] = think
|
||||||
|
try:
|
||||||
|
generation_config_dict["thinking_config"] = ThinkingConfig(**thinking_kwargs)
|
||||||
|
except Exception:
|
||||||
|
logger.warning("当前SDK不支持 thinking_level,请手动更新google-genai库")
|
||||||
|
generation_config_dict["thinking_config"] = ThinkingConfig(include_thoughts=True)
|
||||||
else:
|
else:
|
||||||
thinking_kwargs["thinking_budget"] = think
|
warnings.filterwarnings("ignore", category=UserWarning, module="google.genai._common")
|
||||||
try:
|
|
||||||
generation_config_dict["thinking_config"] = ThinkingConfig(**thinking_kwargs)
|
|
||||||
except Exception:
|
|
||||||
logger.warning("当前SDK不支持 thinking_level,请手动更新google-genai库")
|
|
||||||
generation_config_dict["thinking_config"] = ThinkingConfig(include_thoughts=True)
|
|
||||||
generate_content_config = GenerateContentConfig(**generation_config_dict)
|
generate_content_config = GenerateContentConfig(**generation_config_dict)
|
||||||
|
|
||||||
try:
|
try:
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue