gpt-4o-mini vision gpt 图片识别时, openai 接口 不允许多轮会话,大家遇到过吗?

33 天前
 caohuihe31

比如我要识别一个图片,我的消息体大概是这样: { "model": "gpt-4o-mini", "messages": [ { "role": "user", "content": [ { "type": "text", "text": "What’s in this image?" }, { "type": "image_url", "image_url": { "url": f"data:image/jpeg;base64,{base64_image}" } } ] }

但是如果我获取请求结果后,发现不合适,我想要带着这次的请求结果重新提问,按照非 vision 的方式是,插入一个 assistant 角色的内容,但是 vision 是不支持的,请问大家遇到过吗? openai 好像接口不允许这么做。
952 次点击
所在节点    OpenAI
9 条回复
zhhmax
33 天前
先识别一次图,然后将得到的结果复制过去,形成一条 role=assistant 的 message ,请求结果如下:

先识别一次图,然后将得到的结果复制过去,形成一条 role=assistant 的 message ,后面再跟一条 role=user 的 message ,请求结果如下:

先识别一次图,然后将得到的结果复制过去,形成一条 role=assistant 的 message ,后面再跟一条 role=user 的 message ,message 强调重新识别,请求结果如下:

这三个截图,不知道你说的是哪种情况。
vacuitym
33 天前
没有吧,我刚试了我的正常
vacuitym
33 天前
可以发下你第二次请求的整个数据结构看下
caohuihe31
33 天前
我的
@vacuitym 数据结构是这样的:{
"messages": [
{
"role": "system",
"content": ""
},
{
"role": "user",
"content": [
{
"text": "这是 什么",
"type": "text"
},
{
"image_url": {
"url": "https://api.weixin.qq.com/cgi-bin/media/get?access_token=83_3Dw6qeFf4VCRenwRBujuT0Bv5Fx3eqzeaMtnd6I7xrM8rSYLUeURaqK5NfZo2iozpLKP48khO9W-52en-jWNIiM9X-70URX2LPIl6dDew5dBjDyOxdzV5JRAZLwCXLjAEAMHV&media_id=7x9khwKTGSQG2YH335nYudEAacGXal9X-riJcm0L9EcllALJyhYO5Dsa918ZySIX"
},
"type": "image_url",
"detail": "low"
}
]
},
{
"role": "assistant",
"content": "这是一个水族箱,里面有鱼和水草。水族箱整体摆放在一个黑色的架子上,旁边还有一些植物和工具。窗外可以看到一些城市的景色。"
},
{
"role": "user",
"content": "可以认出是什么鱼吗"
}
],
"model": "gpt-4o-mini"
}

接口的响应是这样的:


{
"error": {
"message": "Invalid chat format. Unexpected keys in a message content image dict.",
"type": "invalid_request_error",
"param": null,
"code": null
}
}

@zhhmax
yinmin
33 天前
image url 改变 base64
vacuitym
33 天前
@caohuihe31 你的 detail 写错地方了吧,应该在 image_url 里面
yinmin
33 天前
image url 改成包含完整图片的 base64 格式
caohuihe31
33 天前
@vacuitym 感谢解答,是的,是我搞错了
caohuihe31
33 天前
@yinmin 感谢解答,是放错位置了 detail

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1067697

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX