Skip to content

图像结果解析

解析目标

优先从下面路径中寻找图片数据:

text
candidates[*].content.parts[*].inlineData

核心规则

  1. 先检查 mimeType 是否以 image/ 开头
  2. 读取 inlineData.data
  3. 如果 datahttp 开头,视为图片 URL
  4. 否则视为 base64 内容,按 mimeType 解码

伪代码

python
for candidate in response["candidates"]:
    for part in candidate["content"]["parts"]:
        inline_data = part.get("inlineData")
        if not inline_data:
            continue
        mime_type = inline_data.get("mimeType", "")
        data = inline_data.get("data", "")
        if mime_type.startswith("image/"):
            if data.startswith("http"):
                return {"type": "url", "value": data, "mimeType": mime_type}
            return {"type": "base64", "value": data, "mimeType": mime_type}

推荐做法

  • URL 结果直接下载并转存到自有存储
  • base64 结果及时写盘或转对象存储,不要长时间驻留内存
  • 解析时保留 mimeType

相关页面

以 VitePress 构建,由 Cloudflare Pages 发布