让Gemini的图像可用,修复部分typing

This commit is contained in:
UnCLAS-Prommer
2025-08-03 00:49:19 +08:00
parent 38930b0ceb
commit 9afa549aee
5 changed files with 88 additions and 57 deletions

View File

@@ -40,6 +40,7 @@ class RequestType(Enum):
EMBEDDING = "embedding"
AUDIO = "audio"
class LLMRequest:
"""LLM请求类"""
@@ -70,15 +71,15 @@ class LLMRequest:
Returns:
(Tuple[str, str, str, Optional[List[ToolCall]]]): 响应内容、推理内容、模型名称、工具调用列表
"""
# 模型选择
model_info, api_provider, client = self._select_model()
# 请求体构建
message_builder = MessageBuilder()
message_builder.add_text_content(prompt)
message_builder.add_image_content(image_base64=image_base64, image_format=image_format)
message_builder.add_image_content(image_base64=image_base64, image_format=image_format, support_formats=client.get_support_image_formats())
messages = [message_builder.build()]
# 模型选择
model_info, api_provider, client = self._select_model()
# 请求并处理返回值
response = await self._execute_request(
api_provider=api_provider,
@@ -127,7 +128,6 @@ class LLMRequest:
)
return response.content or None
async def generate_response_async(
self,
prompt: str,
@@ -245,7 +245,7 @@ class LLMRequest:
temperature: Optional[float] = None,
max_tokens: Optional[int] = None,
embedding_input: str = "",
audio_base64: str = ""
audio_base64: str = "",
) -> APIResponse:
"""
实际执行请求的方法