fix(openai_client): 规范图片 MIME 后缀为标准 jpeg

pull/1378/head
xiaoxi68 2025-11-20 22:53:17 +08:00
parent 589912015e
commit c372f1fc11
1 changed files with 7 additions and 1 deletions

View File

@ -61,10 +61,16 @@ def _convert_messages(messages: list[Message]) -> list[ChatCompletionMessagePara
content = [] content = []
for item in message.content: for item in message.content:
if isinstance(item, tuple): if isinstance(item, tuple):
# 规范化常见非标准后缀为标准 MIME修复 image/jpg 在部分提供商不被接受的问题)
_fmt = str(item[0]).lower()
b64_data = item[1]
if _fmt in {"jpg", "jpe", "jfif"}:
_fmt = "jpeg"
# GIF 等其他格式保持原样
content.append( content.append(
{ {
"type": "image_url", "type": "image_url",
"image_url": {"url": f"data:image/{item[0].lower()};base64,{item[1]}"}, "image_url": {"url": f"data:image/{_fmt};base64,{b64_data}"},
} }
) )
elif isinstance(item, str): elif isinstance(item, str):