diff --git a/app/router/gemini_routes.py b/app/router/gemini_routes.py index 8769e33..a977632 100644 --- a/app/router/gemini_routes.py +++ b/app/router/gemini_routes.py @@ -329,7 +329,7 @@ async def verify_key(api_key: str, chat_service: GeminiChatService = Depends(get parts=[{"text": "hi"}], ) ], - generation_config={"temperature": 0.7, "top_p": 1.0, "max_output_tokens": 10} + generation_config={"temperature": 0.7, "topP": 1.0, "maxOutputTokens": 10} ) response = await chat_service.generate_content( @@ -374,7 +374,7 @@ async def verify_selected_keys( try: gemini_request = GeminiRequest( contents=[GeminiContent(role="user", parts=[{"text": "hi"}])], - generation_config={"temperature": 0.7, "top_p": 1.0, "max_output_tokens": 10} + generation_config={"temperature": 0.7, "topP": 1.0, "maxOutputTokens": 10} ) await chat_service.generate_content( settings.TEST_MODEL, diff --git a/app/service/chat/gemini_chat_service.py b/app/service/chat/gemini_chat_service.py index e3aae5f..2dfb7fd 100644 --- a/app/service/chat/gemini_chat_service.py +++ b/app/service/chat/gemini_chat_service.py @@ -161,7 +161,8 @@ def _build_payload(model: str, request: GeminiRequest) -> Dict[str, Any]: if request.generationConfig: if request.generationConfig.maxOutputTokens is None: # 如果未指定最大输出长度,则不传递该字段,解决截断的问题 - request_dict["generationConfig"].pop("maxOutputTokens") + if "maxOutputTokens" in request_dict["generationConfig"]: + request_dict["generationConfig"].pop("maxOutputTokens") # 检查是否为TTS模型 is_tts_model = "tts" in model.lower()