Amux

Create task

最近更新:2026年9月2日

把 google/gemini-3.1-flash-lite-image 的出图提交为异步任务,立刻拿到任务 id。

google/gemini-3.1-flash-lite-image 的出图放进队列,提交后立刻返回任务 id,不必占着连接等结果。 适合批量生成,以及客户端可能中途断开的场景。

这条端点不分生成和编辑 —— 不带参考图就是生成,带了就是编辑。 Gemini 那侧本来就是同一条端点,所以参数也是同一套。

POSThttps://gateway.amux.ai/v1/tasks

鉴权

header
Authorizationstring必填

Bearer <你的 Amux 密钥>

请求

multipart/form-data
modelstring必填

站内模型 ID。

promptstring必填

想要什么。带了参考图时它描述的是「想怎么改」。

imagearray<string>

参考图,可选——不给是纯生成,给了是图生图。单张 25MB,

张数上限见同步调用那页。

imageimage[] 两种字段名均支持。

aspect_ratio"1:1" | "1:4" | "1:8" | "2:3" | "3:2" | "3:4" | "4:1" | "4:3" | "4:5" | "5:4" | "8:1" | "9:16" | "16:9" | "21:9"

画面比例。超出这个模型接受的取值会被丢弃并记入 amux.notes,上游随即使用自己的默认值,而不是拒绝整个请求。

image_size"1K"

分辨率档位。超出范围时的处理同 aspect_ratio

sizestring

OpenAI 风格的像素串,给从 OpenAI 迁过来的调用方用。会折算成比例与档位,折算范围收窄到这个模型接受的取值,有损时记入 amux.notes。同时给了 aspect_ratioimage_size 时以后者为准,size 被忽略。

webhook_urlstring

任务到终态时往这里 POST 一份结果,形状与 POST /v1/tasks 那条的回调完全一致

{event, sent_at, task} 信封 + Amux-Signature 签名 + 退避重试)。

⚠️ 这个字段是本站加的,官方没有。 百炼的异步任务确实有回调,但它是在

阿里云控制台用 EventBridge 配事件规则——请求里传不了地址。不加的话,

走这条端点的调用方只能轮询,而同一个任务走站内统一入口就能收到推送。

只收 https,且不能指向内网——我们是从服务端发过去的。地址在提交这一刻

就校验,写错了当场报错,而不是等任务跑完才发现回调从来没来。

响应

202response

任务已受理,并且预扣已经扣住。拿 id 去取结果。

400response

请求不合法。也包括流式相关字段——这条端点是异步的,而这个模型本身也不支持流式。

402response

可用余额不足以覆盖预扣上界。

503response

在途任务已满,稍后重试(响应带 Retry-After)。

提交与取回

提交返回 202 与一个 queued 状态的任务;随后用 取回接口按 id 轮询,直到状态变为终态。

succeededoutput.images[].url 是可直接访问的地址。 存储产物会被清理,需要长期保存请尽快下载。

想同步拿结果时,可以在提交时带上 Prefer: wait=60:任务在该秒数内完成就直接返回终态, 否则仍按异步处理。

参数

出图参数与同步调用一致, 取值范围也相同——比例 14 种、分辨率 1K

Tasks 是站内统一入口,请求体用的是我们自己的字段名(aspect_ratio / image_size), 而不是 Gemini 原生的驼峰写法。

计费

与同步调用完全相同,按 token 计价。任务失败或过期不收费,提交时的预扣会退回。

错误

错误体为站内统一形状,取值与重试语义见错误与重试

cURL
curl https://gateway.amux.ai/v1/tasks \
  -H "Authorization: Bearer $AMUX_API_KEY" \
  -F "model=google/gemini-3.1-flash-lite-image" \
  -F "prompt=<string>" \
  -F "image=@/path/to/image.png" \
  -F "aspect_ratio=1:1" \
  -F "image_size=1K" \
  -F "size=1024x1024" \
  -F "webhook_url=<string>"
{
  "id": "task_01M1CG35C16CJ790D00BV1RBVM",
  "status": "queued",
  "model": "<string>",
  "created_at": "<string>",
  "output": {
    "images": [
      {
        "index": 0,
        "url": "<string>"
      }
    ]
  },
  "usage": {
    "input_tokens": 0,
    "output_tokens": 0,
    "total_tokens": 0
  },
  "cost": "0.0336",
  "error": {
    "message": "<string>",
    "code": "<string>"
  }
}