搜索

搜索 HiAPI 模型、工具和资源。

返回博客
教程3 分钟阅读

Recraft Crisp Upscale API 怎么用?一个字段放大 2 倍

无提示词、单字段 image_url、$0.004 一张的保真 2 倍放大:curl/Python 示例和边界说明。

HiAPI 编辑部RecraftAPI 接入图片放大

TL;DR

  • Recraft Crisp Upscale(recraft/crisp-upscale)做一件事:把图片宽高各放大 2 倍,边缘和纹理更清晰,画面内容和文字原样保留。没有提示词,请求体只有一个 image_url。打开模型页上传一张图就能试,新用户注册送 200 积分。
  • 一张 $0.004:1,000 张 $4.00,$10 约出 2,500 张;输入图大小不影响价格(完整价格见价格页)。
  • 调用走 HiAPI /v1/tasks 接口:提交任务拿 taskId,再查询结果,成功后从 output[0].url 下载(JPEG,不含透明通道)。

它能做什么

  • 保真放大,不是重绘:表盘纹理、皮肤皱纹、海报小字这些细节更清楚,但内容、构图和文字一个不改——带字的物料不会被「放大成另一张图」。
  • 一个字段就能调:image_url 传公网地址(JPEG / PNG / WebP,≤10 MB),没有提示词、没有倍数选项。
  • 适合商品图、带字海报、设计素材:任何「原图已经对、只是分辨率不够」的场景。
  • 不适合的场景也明确:想要 4K 级别的重绘细节、或者想顺便改内容,应该用生成式重绘(另见用图生图模型提高分辨率的英文教程);Crisp Upscale 只把尺寸放大 2 倍,不重画内容。
  • 输出 1 张 JPEG;要透明结果的话先放大、再去背景(去背景的用法见英文版去背景教程)。

下面是真实的一对「原图 → 2 倍」:

原图 640×640放大结果 1280×1280
手表原图手表放大结果

recraft/crisp-upscale,640×640 → 1280×1280,$0.004。表盘扭索纹、拉丝钢壳和表盘小字在两倍尺寸下依然清楚。

打开模型页上传一张试试 →

两条上手路线

浏览器 3 步:打开模型页 → 上传图片 → 点放大,一张 $0.004。

API 3 步:POST /v1/tasks 提交 → 拿 taskId → GET /v1/tasks/<taskId> 查到 success 后下载。批量就循环这三步,每张一个任务。

curl:第一张

curl -X POST https://api.hiapi.ai/v1/tasks \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: your-unique-key-001" \
  -d '{
  "model": "recraft/crisp-upscale",
  "input": {
    "image_url": "https://static.hiapi.ai/gallery/2026/10/4fdfd6b43b638849.jpg"
  }
}'

整个请求体就这些——多传任何字段(比如 prompt、scale)都会直接 400。

Python:提交、轮询、下载

import time, uuid, requests

BASE = "https://api.hiapi.ai/v1/tasks"
HEADERS = {
    "Authorization": "Bearer YOUR_API_KEY",
    "Content-Type": "application/json",
}

payload = {
    "model": "recraft/crisp-upscale",
    "input": {
        "image_url": "https://example.com/your-image.jpg",
    },
}

resp = requests.post(
    BASE,
    headers={**HEADERS, "Idempotency-Key": str(uuid.uuid4())},
    json=payload,
    timeout=30,
)
resp.raise_for_status()
task_id = resp.json()["taskId"]

while True:
    task = requests.get(f"{BASE}/{task_id}", headers=HEADERS, timeout=30).json()
    print(task["status"])
    if task["status"] in ("success", "fail"):
        break
    time.sleep(5)

if task["status"] == "success":
    image_url = task["output"][0]["url"]   # 临时地址,尽快下载保存
    img = requests.get(image_url, timeout=60)
    with open("upscaled.jpg", "wb") as f:
        f.write(img.content)
    print("saved upscaled.jpg")

参数表

字段必填取值说明
image_url是公网 http/https 地址JPEG / PNG / WebP,单张 ≤10 MB

就这一个字段。放大倍数固定为宽高各 2 倍,不能选;没有提示词、没有输出格式参数。

你会遇到的报错

状态码含义怎么处理
400 INVALID_REQUESTimage_url 缺失、不是 http/https 地址、或多传了 prompt / scale 这类不存在的字段请求体只留 image_url
402 INSUFFICIENT_QUOTA余额不足(不扣费)充值后重试
429 RATE_LIMITED触发限流降低提交频率
409 / 422 IDEMPOTENCY_KEY_*同一幂等键重复提交换新的 Idempotency-Key

任务终态失败还有 TASK_FAILED、TASK_TIMEOUT 等错误码;失败不扣费。

上线前注意

  • 回调:请求体顶层传 "callback": {"url": "https://..."},终态自动通知。
  • 及时转存:output[0].url 是临时地址,拿到就下载。
  • 耗时:单张通常在 10 秒到 1 分钟左右,轮询间隔别设太短。
  • 透明通道:输出是 JPEG 不含透明;要透明背景的物料先放大、再去背景(顺序反了,抠图边缘会糊)。
  • 批量的账很好算:一个 SKU 五张图全部放大一遍是 $0.02;全店 1,000 张素材过一轮是 $4.00,批量提交即可,每张任务单独计时。
  • 原图质量决定上限:2 倍放大让边缘更清晰,但原图糊成一片的部分不会凭空长出细节;关键物料先用一张试验再批量。

常见问题

真的就是 2 倍吗?

是。宽高各放大一倍(640×640 → 1280×1280,480×640 → 960×1280),倍数固定,没有 4 倍选项;需要更大就放大后再跑一次。

画面里的文字会变吗?

不会。带字海报放大后字形保持原样,不改写、不新增文字。

多少钱一张?

$0.004 一张,1,000 张 $4.00;输入图大小不影响价格。失败不扣费,参数校验不过不进计费。

能传 base64 吗?

不能。image_url 要公网 http/https 地址;本地文件先传到你的存储再给地址。

一张要多久?

通常 10 秒到 1 分钟左右;批量任务按张数排队,赶时间就分批提交。

下一步:拿一张你的商品图去模型页放大一张看效果;五组「原图 → 2 倍」真实对照见案例页;和生成式重绘的同一原图对照见对比页。

现在就用 HiAPI 生成

选一个模型,输入你的提示词,直接查看生成结果。

HiAPI Blog

相关文章

HiAPI

现在就用 HiAPI 生成

开始生成