当前位置: 首页 > news >正文

nano banana pro 怎么用?甜甜圈API 三十行跑通 nano banana pro(含重试与异步并发)

网上 Python 调图像生成接口的例子大多绑死某一家 SDK,换个服务就得重写。其实完全不用 SDK——甜甜圈API(dashengfenshen.cn)兼容 OpenAI 的chat/completions协议,requests一个库就够了。

这篇给一份能直接抄进项目的实现:同步版三十行跑通,再补上重试和asyncio并发。

一、接口信息

Base URLhttps://dashengfenshen.cn
接口POST /v1/chat/completions
鉴权Authorization: Bearer {你的API密钥}
数据格式application/json,UTF-8

二、最小实现

import os import requests ENDPOINT = "https://dashengfenshen.cn/v1/chat/completions" def generate(prompt: str, model: str = "nano-banana-pro", timeout: int = 120) -> dict: """调 AI 绘画API 出图。生图慢,timeout 一定要给足。""" resp = requests.post( ENDPOINT, headers={ "Authorization": f"Bearer {os.environ['TTQ_API_KEY']}", "Content-Type": "application/json", }, json={"model": model, "messages": [{"role": "user", "content": prompt}]}, timeout=timeout, ) resp.raise_for_status() return resp.json() if __name__ == "__main__": data = generate("白底电商主图,无线蓝牙耳机,居中构图,柔和顶光") print(data)

两个新手最容易踩的坑:密钥别写死在代码里(走环境变量,别提交进仓库);timeout别用默认值——requests默认是不超时的,网络一抖请求就永久挂住,跑批时整个进程卡死。

三、加重试

生图 API偶发 5xx 和网络抖动是常态,没有重试的批量脚本基本跑不完:

import time from requests.exceptions import RequestException def generate_with_retry(prompt: str, model: str = "nano-banana-pro", attempts: int = 3) -> dict: last = None for i in range(attempts): try: return generate(prompt, model) except RequestException as e: last = e # 指数退避:2s、4s、8s。别用固定间隔,服务端抖动时会同时重试放大压力 time.sleep(2 ** (i + 1)) raise last

注意只对网络异常和 5xx重试。4xx 是请求本身有问题(密钥错、参数错、积分不足),重试多少次都一样,白白浪费时间。

四、异步并发

批量出图用asyncio+httpx比多线程干净得多,用信号量把并发压在配额之内:

import asyncio import httpx async def batch_generate(prompts: list[str], model: str = "nano-banana2", workers: int = 16): sem = asyncio.Semaphore(workers) # 同时在飞的请求数 headers = {"Authorization": f"Bearer {os.environ['TTQ_API_KEY']}"} async with httpx.AsyncClient(timeout=120) as client: async def one(idx: int, prompt: str): async with sem: try: r = await client.post(ENDPOINT, headers=headers, json={ "model": model, "messages": [{"role": "user", "content": prompt}], }) r.raise_for_status() return idx, r.json() except Exception: return idx, None # 失败留空,跑完统一挑出来重试 results = await asyncio.gather(*(one(i, p) for i, p in enumerate(prompts))) out = [None] * len(prompts) for idx, data in results: out[idx] = data return out

结果按下标写回是关键——跑完一眼就能定位哪几条失败,不用整批重来。workers按自己配额调,16 起步比较稳。

五、模型怎么选

model字段直接换字符串,函数签名都不用动:

模型代码说明消耗
nano-banana2Flash 级,速度快,适合跑量8 积分/次
nano-banana-proPro 级,支持 1K/2K/4K10 积分/次
gpt-image-2细节质感好,适合终稿按次计费
ttq-cutout抠图,出白底图10 积分/次
Veo 3.1 视频生成/Sora 2生视频120 / 130 积分/次

实践上的分工:批量草稿用nano-banana2终稿切nano-banana-progpt-image-2再出一版对比,挑最好的用。

六、小结

Python 接生图接口的要点就四条:密钥走环境变量、timeout给足、只对 5xx 重试、并发用信号量压住。

甜甜圈API(dashengfenshen.cn)的 OpenAI 兼容协议让 Python 侧完全不需要 SDK,requestshttpx直接调。模型全(nano banana pro、gpt-image-2、Veo 3.1、Sora 2 一个密钥全接)、价格便宜(积分制明码标价)、并发高出图快稳定。文档地址:https://dashengfenshen.cn 。

http://www.jsqmd.com/news/1356591/

相关文章:

  • 3步掌握跨设备键鼠共享:开源KVM终极方案
  • 3种终极方案:qmc-decoder助你快速解锁QQ音乐加密文件
  • 2026 年当下,莱芜有实力的AI全域获客公司哪家靠谱,别再天天蹲线索了,这玩意儿悄悄把流量全捏在手里,不用再费心拓客-抖盈网络 - 企业推荐管【认证】
  • 美团酒店/医药/闪购 商家端mtgsig最新算法分析
  • 从零掌握CLI工具:OpenCode CLI安装、核心命令与工作流集成指南
  • 基于状态驱动与事件总线的复杂互动叙事引擎实战
  • AI绘画进阶:Flux.1-schnell模型、Krea风格库与深度图控制实战指南
  • 《P14076 [GESP202509 六级] 货物运输》
  • 聊聊Starrocks的数据导入与避坑实践
  • 水电表物联网化:TCP2HTTP网关方案与协议转换实践
  • AI服务API集成实战:从账户支付到代码调用的完整指南
  • Flutter在OpenHarmony上开发个人理财App实践
  • Flink数据倾斜问题诊断与十二种解决方案
  • 基于AI语音技术的视频内容本地化:从ASR到TTS的完整实践指南
  • STDF Viewer:半导体测试数据可视化终极指南,5分钟快速掌握复杂数据分析
  • 如何用免费开源软件TuxGuitar制作专业吉他谱:5个简单技巧
  • 茶叶病害早期检测的图像数据集
  • Axure RP中文语言包:3分钟告别英文界面,提升原型设计效率
  • 国内零门槛部署本地AI编程助手:Codex框架与DeepSeek模型实战教程
  • AI内容审核攻防实战:从对抗样本生成到鲁棒模型训练
  • 2026精选青岛市值得信赖的抹光机直销厂家联系指南 - 装修教育财税推荐2026
  • 工作流引擎实战:从编辑到执行的完整生命周期解析
  • NR37-CP的ERLE极限:固定null与自适应ENC的分工边界
  • 网络安全自学路线与职业发展指南
  • SkyWalking与Istio集成:微服务监控最佳实践
  • 栖岛OAuth2.0登录对接实战指南与避坑技巧
  • 虚假工作预测数据集
  • AI图表分析提示词实战指南:从模糊指令到精准洞察
  • Android Studio中文界面设置终极指南:3步实现完整汉化体验
  • 基于Canvas与PixiJS构建高性能Web GUI菜单系统实战指南