You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

调用Gemini API上传图片提示时遇400错误求助

问题分析

你遇到的INVALID_ARGUMENT错误核心原因是误解了Gemini API中inline_data.data字段的要求:该字段必须填入图片文件内容的Base64编码字符串,而非图片URL,也不能填入存储Base64文本的第三方链接(比如你使用的Pastebin链接)。API会将该字段内容直接当作Base64字节进行解码,所以填入链接必然会触发解码失败的错误。

解决方案

1. 生成图片的Base64编码字符串

你可以通过两种方式获取正确的Base64编码:

  • 在线工具:上传本地图片,直接生成对应的Base64编码字符串(注意选择“仅编码文件内容”,不要包含前缀如data:image/jpeg;base64,)
  • 本地代码生成(以Python为例):
    import base64
    
    # 替换为你的本地图片路径
    with open("your-image.jpg", "rb") as img_file:
        base64_str = base64.b64encode(img_file.read()).decode("utf-8")
    

2. 构造正确的请求体

直接将生成的Base64字符串填入data字段,不要添加任何外部链接:

{
  "contents":[
    {
      "parts":[
        {"text": "What is this picture?"},
        {
          "inline_data": {
            "mime_type":"image/jpeg",
            "data": "替换为你的图片Base64编码字符串"
          }
        }
      ]
    }
  ]
}

额外提示

如果图片文件体积较大(超过几MB),建议使用file_data字段替代inline_data,但需要先将图片上传至Google Cloud Storage,再填入对应的文件URI。

内容的提问来源于stack exchange,提问作者Cryopt

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.21 01:51:03