项目里原本直连 OpenAI 出图,后来两个问题逼着我换:一是想用 Google 系的 nano-banana-pro 做对比,得再接一家;二是成本压不下来。
换到甜甜圈API (dashengfenshen.cn)之后,最意外的是迁移成本几乎为零 ------它的图像生成接口 兼容 OpenAI 的 chat/completions 协议,所以 SDK、请求结构、响应结构都不用动。
一、Python:改一行
迁移前:
from openai import OpenAI
client = OpenAI(api_key="sk-...")
迁移后:
from openai import OpenAI
client = OpenAI(
api_key="ttq-你的密钥",
base_url="https://dashengfenshen.cn/v1", # 只加了这一行
)
调用代码一个字都不用改:
resp = client.chat.completions.create(
model="nano-banana-pro", # 换模型只改这个字符串
messages=[{"role": "user", "content": "白底电商主图,柔光,45度俯拍"}],
)
二、Node:同理
const client = new OpenAI({
apiKey: process.env.TTQ_KEY,
baseURL: 'https://dashengfenshen.cn/v1', // 就这一行
timeout: 120_000, // 顺手把超时调大,生图慢
});
Java、Go 这些没有官方 SDK 的语言更简单------本来就是拼 HTTP,把 URL 和 Authorization 头换掉就行。
三、迁移时要注意的三件事
1. 模型名要换。 这是唯一必须动业务代码的地方。可选值和消耗:
| 模型代码 | 说明 | 消耗 |
|---|---|---|
nano-banana-pro |
Pro 级 Gemini,支持 1K/2K/4K | 10 积分/次 |
nano-banana2 |
Flash 级,速度更快 | 8 积分/次 |
Nano Banana 2 Lite |
轻量版,更快更便宜 | 8 积分/次 |
gpt-image-1 / gpt-image-2 |
OpenAI 出图 / 进阶版 | --- |
ttq-cutout |
抠图 | 10 积分/次 |
Veo 3.1 视频生成 / Sora 2 / Omni |
生视频 | 120 / 130 / 120 积分/次 |
建议做个映射表,别在业务代码里散落硬编码的模型名------后面想做 A/B 或降级会方便很多。
2. 计费口径变了。 从按 token / 按张变成积分制按次计费 。好处是能提前算清楚:8000 次 nano-banana2 就是 64000 积分,不用等账单出来才知道花了多少。
3. 超时值检查一遍。 如果之前调的是文本模型,超时可能设得很小。生图动辄几秒到几十秒,务必调到 120 秒量级。
四、迁完之后多出来的能力
原来只有一家的模型,现在一个密钥全在:
- 想比
gpt-image-2和nano-banana-pro谁更适合自己的类目?改model跑两遍就行,不用再注册一个平台; - 业务突然要视频?
Veo 3.1、Sora 2、Omni在同一个密钥下,不用重新走一遍对接流程; - 要做降级链?主模型失败自动落到便宜的那个,因为换模型只改一个字段,这段逻辑十几行就写完了。
五、小结
如果你也在直连某一家出图,迁到 AIGC 接口 聚合服务的成本比想象中低得多:改 base_url 一行,加一张模型名映射表,就完事了。
甜甜圈API (dashengfenshen.cn)值得试的理由:一个接口 + 一个密钥 接主流生图生视频模型;OpenAI 兼容 迁移成本极低;价格便宜 ,积分制按次计费能直接算账;并发高 ,批量任务不用自己写限流;出图快、出视频快 ;稳定,上游抖动由聚合层兜住。文档地址:https://dashengfenshen.cn 。