Foldbun Stack
EN获取 API 密钥即将推出
分割

SAM 2.1 API:按点和框分割

免费池模型许可证:Apache 2.0

SAM 2.1 Hiera-S 按每个点或框分割一个对象,价格低于 SAM 3,不需要文本,并包含在免费池中。

阅读文档获取 API 密钥即将推出API 参考

价格

计费项单位额度
图像编码
每次调用收取一次。同一图像的编码仍在该账户的缓存中时免收;缓存最长保留 7 天,也可能更早被清除。
每张图像0.2
按储值折合约 US$0.0002
点或框提示
POST /v1/segment 中的每个点或框。
每个点或框0.01
按储值折合约 US$0.00001
细化
每次 POST /v1/refine 调用:按一次解码计,与点的数量以及是否给出框无关。
每次细化0.01
按储值折合约 US$0.00001

包含在免费池中:首次储值后每天 1,000 次。 价格以额度计。调用失败不收费。

示例结果

API 在示例图片上的实际响应记录。

草地上的狗:由一个提示分割出的对象轮廓。
草地上的狗1 个点(包含)1 个蒙版
厨房台面:由一个提示分割出的对象轮廓。
厨房台面1 个框1 个蒙版
自行车:由一个提示分割出的对象轮廓。
自行车1 个点(包含)1 个蒙版

请求与响应

POST https://api.stack.foldbun.com/v1/refine,使用 Bearer API 密钥。一次调用传入多个点或框、每个返回一个蒙版时,使用 POST /v1/segment。

API 参考
# macOS:把 "base64 -w0 dog.webp" 换成 "base64 -i dog.webp"
curl https://api.stack.foldbun.com/v1/refine \
  -H "Authorization: Bearer $FOLDBUN_API_KEY" \
  -H "Content-Type: application/json" \
  -d @- <<EOF
{"model": "sam-lite", "image": {"base64": "$(base64 -w0 dog.webp)"},
 "points": [{"x": 760, "y": 560, "positive": true}]}
EOF
import base64, os, requests

with open("dog.webp", "rb") as f:
    image = base64.b64encode(f.read()).decode()

r = requests.post(
    "https://api.stack.foldbun.com/v1/refine",
    headers={"Authorization": f"Bearer {os.environ['FOLDBUN_API_KEY']}"},
    json={"model": "sam-lite",
          "image": {"base64": image},
          "points": [{"x": 760, "y": 560, "positive": True}]},
    timeout=60,
)
r.raise_for_status()
print(r.json())
响应(节选)
{
  "id": "call_01a1913c-4de0-7f15-afbd-d26a0d0c347f",
  "model": "sam-lite",
  "image": {"height": 1008, "id": "img_3b73d411…5b12", "width": 1512},
  "cache": "miss",
  "imageFee": 0.2,
  "instances": [
    {
      "score": 0.9844,
      "bbox": [382, 102, 1171, 912],
      "area": 295827,
      "polygon": [
        {
          "outer": [894, 134, 906, 151, 907, 159, …],
          "holes": [
            [699, 695, 703, 691, 670, 670, …]
          ]
        }
      ]
    }
  ],
  "cost": 0.21,
  "balance": 1234.35
}

请求字段

字段说明
image{"base64": "…"},或之前响应返回的 {"id": "img_…"}。
points[]对同一对象的最多 20 个点 {"x", "y", "positive"};positive: false 表示排除该区域。
box可选,围住对象的框 [x1, y1, x2, y2]。
options.multimask返回最多 3 个候选蒙版,而不是最佳的一个。
prompts[]POST /v1/segment:1–50 个提示,每个为 box 或 point;每个提示返回一个实例。
options.defaults所有提示的输出选项,例如 geometry: ["mask"]。prompts[].options 按提示覆盖。

价格示例

调用额度
1 张图,1 个点
0.2 + 0.01
0.21
按储值折合约 US$0.00021
1 张图,5 个框
0.2 + 5 × 0.01
0.25
按储值折合约 US$0.00025
1,000 张图,每张 1 个点
1,000 × (0.2 + 0.01)
210
按储值折合约 US$0.21

按未命中缓存计算。缓存命中时可能减免 0.2 的编码费,不作保证。

限制

图片
JPEG、PNG、静态 WebP;最大 20 MiB、4,000 万像素
坐标
按 EXIF 摆正后的原图的像素;蒙版可以比图小,并附带自己的尺寸
每次 segment 调用的提示数
最多 50 个点或框,每个返回一个实例
每次 refine 调用的点数
最多 20 个点
速率限制
取决于账户档位,见 GET /v1/models

常见问题

SAM 2.1 如何计费?

每次调用收取图像编码费(0.2 额度)。分割调用中每个点或框另收 0.01 额度;细化调用(POST /v1/refine)另按每次调用收取 0.01 额度,与点的数量以及是否给出框无关。该模型包含在免费池中:首次储值后每天含 1,000 次免费调用。

sam-lite 和 sam3 有什么区别?

sam-lite 只接受点和框,每个点或框分割一个对象,价格更低,并包含在免费池中。sam3 支持文本提示、样例框和点提示:文本和样例框返回所有匹配实例,点提示返回一个对象。

如何发送点和框?

refine 端点接受对单个对象的最多 20 个包含或排除点和一个可选框。segment 端点接受最多 50 个提示,每个为点或框,每个提示返回一个实例。

相关模型

模型与价格

Foldbun Stack — 按量计费的视觉模型 API

通过 REST API 调用 SAM 2.1 Hiera-S,请求与响应格式见文档。

阅读文档获取 API 密钥即将推出