@henjicc/ai-sdk 0.8.0 → 0.10.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (704) hide show
  1. package/CHANGELOG.md +275 -211
  2. package/README.md +580 -577
  3. package/dist/capabilities/speech-recognition/bailian/module.js +40 -26
  4. package/dist/capabilities/speech-recognition/bailian/parse.js +9 -2
  5. package/dist/capabilities/speech-recognition/bailian/presets.d.ts +9 -1
  6. package/dist/capabilities/speech-recognition/bailian/presets.js +7 -2
  7. package/dist/capabilities/speech-recognition/bailian/realtime/presets.d.ts +2 -1
  8. package/dist/capabilities/speech-recognition/bailian/realtime/presets.js +2 -0
  9. package/dist/capabilities/speech-recognition/bailian/types.d.ts +2 -0
  10. package/dist/capabilities/speech-recognition/bailian/upload.js +11 -58
  11. package/dist/capabilities/speech-recognition/index.d.ts +5 -0
  12. package/dist/capabilities/speech-recognition/siliconflow/presets.d.ts +2 -3
  13. package/dist/capabilities/speech-recognition/siliconflow/presets.js +0 -2
  14. package/dist/capabilities/translation/bailian/types.d.ts +3 -0
  15. package/dist/capabilities/translation/bailian/types.js +6 -4
  16. package/dist/catalog/apimart/flux-3-image.model.d.ts +3 -0
  17. package/dist/catalog/apimart/flux-3-image.model.js +62 -0
  18. package/dist/catalog/apimart/flux-3-video.model.d.ts +3 -0
  19. package/dist/catalog/apimart/flux-3-video.model.js +120 -0
  20. package/dist/catalog/apimart/gemini-omni-1.2-flash.model.d.ts +3 -0
  21. package/dist/catalog/apimart/gemini-omni-1.2-flash.model.js +175 -0
  22. package/dist/catalog/apimart/gemini-omni-flash.model.js +30 -37
  23. package/dist/catalog/apimart/gpt-image-2.5.model.js +1 -1
  24. package/dist/catalog/apimart/gpt-image-2.6.model.d.ts +3 -0
  25. package/dist/catalog/apimart/gpt-image-2.6.model.js +103 -0
  26. package/dist/catalog/apimart/gpt-image-2.model.js +1 -1
  27. package/dist/catalog/apimart/grok-imagine-2.0.model.js +1 -1
  28. package/dist/catalog/apimart/grok-imagine-video-1.5.model.d.ts +3 -0
  29. package/dist/catalog/apimart/grok-imagine-video-1.5.model.js +85 -0
  30. package/dist/catalog/apimart/happyhorse-1.1.model.d.ts +3 -0
  31. package/dist/catalog/apimart/happyhorse-1.1.model.js +78 -0
  32. package/dist/catalog/apimart/kling-3.0-omni.model.js +12 -2
  33. package/dist/catalog/apimart/kling-3.0-turbo.model.js +5 -2
  34. package/dist/catalog/apimart/kling-3.0.model.js +1 -1
  35. package/dist/catalog/apimart/kling-4.0.model.d.ts +3 -0
  36. package/dist/catalog/apimart/kling-4.0.model.js +149 -0
  37. package/dist/catalog/apimart/midjourney-video.model.js +31 -32
  38. package/dist/catalog/apimart/midjourney.model.js +11 -1
  39. package/dist/catalog/apimart/minimax-h3-max.model.d.ts +3 -0
  40. package/dist/catalog/apimart/minimax-h3-max.model.js +101 -0
  41. package/dist/catalog/apimart/minimax-h3.model.js +8 -3
  42. package/dist/catalog/apimart/nano-banana-2-lite.model.js +1 -1
  43. package/dist/catalog/apimart/nano-banana-2.1.model.d.ts +2 -0
  44. package/dist/catalog/apimart/nano-banana-2.1.model.js +49 -0
  45. package/dist/catalog/apimart/nano-banana-2.model.js +1 -1
  46. package/dist/catalog/apimart/nano-banana-pro.model.js +1 -1
  47. package/dist/catalog/apimart/qwen-image-3.0.model.js +1 -1
  48. package/dist/catalog/apimart/seedance-2.0-fast.model.js +1 -1
  49. package/dist/catalog/apimart/seedance-2.0-mini.model.js +4 -4
  50. package/dist/catalog/apimart/seedance-2.0.model.js +1 -1
  51. package/dist/catalog/apimart/seedance-2.5.model.js +27 -5
  52. package/dist/catalog/apimart/seedream-5.0-flash.model.d.ts +3 -0
  53. package/dist/catalog/apimart/seedream-5.0-flash.model.js +52 -0
  54. package/dist/catalog/apimart/seedream-5.0-lite.model.js +4 -4
  55. package/dist/catalog/apimart/seedream-5.0-pro.model.js +1 -1
  56. package/dist/catalog/apimart/veo-3.1.model.d.ts +3 -0
  57. package/dist/catalog/apimart/veo-3.1.model.js +132 -0
  58. package/dist/catalog/apimart/wan-2.7-image.model.d.ts +3 -0
  59. package/dist/catalog/apimart/wan-2.7-image.model.js +80 -0
  60. package/dist/catalog/apimart/wan-3.0.model.d.ts +3 -0
  61. package/dist/catalog/apimart/wan-3.0.model.js +101 -0
  62. package/dist/catalog/apimart/z-image-turbo.model.js +1 -1
  63. package/dist/catalog/audio/tts-common.d.ts +2 -1
  64. package/dist/catalog/audio/tts-common.js +5 -1
  65. package/dist/catalog/bailian/cosyvoice-v3.5.model.js +1 -1
  66. package/dist/catalog/bailian/minimax-h3.model.d.ts +3 -0
  67. package/dist/catalog/bailian/minimax-h3.model.js +95 -0
  68. package/dist/catalog/bailian/minimax-speech-2.8.model.js +1 -1
  69. package/dist/catalog/bailian/qwen-audio-3.1-tts-flash.model.js +14 -3
  70. package/dist/catalog/bailian/qwen-audio-3.1-tts-plus.model.d.ts +2 -0
  71. package/dist/catalog/bailian/qwen-audio-3.1-tts-plus.model.js +44 -0
  72. package/dist/catalog/bailian/qwen-image-3.0.model.js +1 -1
  73. package/dist/catalog/bailian/wan-3.0.model.d.ts +3 -0
  74. package/dist/catalog/bailian/wan-3.0.model.js +104 -0
  75. package/dist/catalog/bailian/z-image-turbo.model.js +1 -1
  76. package/dist/catalog/consumer-contract.d.ts +16 -1
  77. package/dist/catalog/consumer-contract.js +31 -0
  78. package/dist/catalog/continuation.d.ts +20 -0
  79. package/dist/catalog/continuation.js +41 -0
  80. package/dist/catalog/fal/bria-creative-upscale.model.js +1 -1
  81. package/dist/catalog/fal/eleven-v3-tts.model.js +1 -1
  82. package/dist/catalog/fal/eleven-v4-tts.model.d.ts +2 -0
  83. package/dist/catalog/fal/eleven-v4-tts.model.js +38 -0
  84. package/dist/catalog/fal/flux-3-video.model.d.ts +2 -0
  85. package/dist/catalog/fal/flux-3-video.model.js +187 -0
  86. package/dist/catalog/fal/flux-3.model.d.ts +2 -0
  87. package/dist/catalog/fal/flux-3.model.js +69 -0
  88. package/dist/catalog/fal/gemini-omni-1.2-flash.model.d.ts +2 -0
  89. package/dist/catalog/fal/gemini-omni-1.2-flash.model.js +129 -0
  90. package/dist/catalog/fal/gemini-omni-flash.model.js +1 -1
  91. package/dist/catalog/fal/gpt-image-2.5.model.js +1 -1
  92. package/dist/catalog/fal/gpt-image-2.6.model.d.ts +2 -0
  93. package/dist/catalog/fal/gpt-image-2.6.model.js +97 -0
  94. package/dist/catalog/fal/gpt-image-2.model.js +1 -1
  95. package/dist/catalog/fal/grok-imagine-2.0.model.js +1 -1
  96. package/dist/catalog/fal/grok-imagine-video-1.5.model.d.ts +2 -0
  97. package/dist/catalog/fal/grok-imagine-video-1.5.model.js +121 -0
  98. package/dist/catalog/fal/hailuo-02.model.js +8 -4
  99. package/dist/catalog/fal/hailuo-2.3.model.js +1 -1
  100. package/dist/catalog/fal/ic-light-v2.model.js +1 -1
  101. package/dist/catalog/fal/ideogram-upscale.model.js +1 -1
  102. package/dist/catalog/fal/kling-3.0-omni.model.js +1 -1
  103. package/dist/catalog/fal/kling-3.0-turbo.model.js +5 -2
  104. package/dist/catalog/fal/kling-3.0.model.js +4 -1
  105. package/dist/catalog/fal/kling-4.0-flash.model.d.ts +2 -0
  106. package/dist/catalog/fal/kling-4.0-flash.model.js +132 -0
  107. package/dist/catalog/fal/kling-4.0.model.d.ts +2 -0
  108. package/dist/catalog/fal/kling-4.0.model.js +169 -0
  109. package/dist/catalog/fal/kling-image-o1.model.js +1 -1
  110. package/dist/catalog/fal/kling-video-o1.model.js +18 -7
  111. package/dist/catalog/fal/kling-video-v2.6-pro.model.js +3 -2
  112. package/dist/catalog/fal/ltx-2.3.model.d.ts +2 -0
  113. package/dist/catalog/fal/ltx-2.3.model.js +223 -0
  114. package/dist/catalog/fal/ltx-2.model.js +2 -1
  115. package/dist/catalog/fal/minimax-h3-max.model.d.ts +2 -0
  116. package/dist/catalog/fal/minimax-h3-max.model.js +132 -0
  117. package/dist/catalog/fal/minimax-h3.model.js +3 -4
  118. package/dist/catalog/fal/minimax-speech-2.8.model.js +1 -1
  119. package/dist/catalog/fal/nano-banana-2.1.model.d.ts +2 -0
  120. package/dist/catalog/fal/nano-banana-2.1.model.js +68 -0
  121. package/dist/catalog/fal/nano-banana-2.model.js +1 -1
  122. package/dist/catalog/fal/nano-banana-pro.model.js +1 -1
  123. package/dist/catalog/fal/nano-banana.model.js +1 -1
  124. package/dist/catalog/fal/pixverse-v5.5.model.js +9 -4
  125. package/dist/catalog/fal/qwen-image-3.0.model.js +2 -2
  126. package/dist/catalog/fal/qwen3-tts-1.7b.model.js +4 -3
  127. package/dist/catalog/fal/seedance-2.0-fast.model.js +1 -1
  128. package/dist/catalog/fal/seedance-2.0-mini.model.js +1 -1
  129. package/dist/catalog/fal/seedance-2.0.model.js +1 -1
  130. package/dist/catalog/fal/seedance-2.5.model.js +5 -2
  131. package/dist/catalog/fal/seedance.model.js +3 -2
  132. package/dist/catalog/fal/seedream-5.0-lite.model.js +1 -1
  133. package/dist/catalog/fal/seedream-5.0-pro.model.js +1 -1
  134. package/dist/catalog/fal/seedream-v4.5.model.js +1 -1
  135. package/dist/catalog/fal/seedream-v4.model.js +1 -1
  136. package/dist/catalog/fal/seedvr2-image-upscale.model.js +1 -1
  137. package/dist/catalog/fal/topaz-image-upscale.model.js +1 -1
  138. package/dist/catalog/fal/topaz-transparent-upscale.model.js +1 -1
  139. package/dist/catalog/fal/utils/klingV4.d.ts +17 -0
  140. package/dist/catalog/fal/utils/klingV4.js +33 -0
  141. package/dist/catalog/fal/veo-3.1.model.js +5 -2
  142. package/dist/catalog/fal/vidu-q2.model.js +20 -8
  143. package/dist/catalog/fal/wan-2.5-preview.model.js +4 -1
  144. package/dist/catalog/fal/wan-3.0.model.d.ts +2 -0
  145. package/dist/catalog/fal/wan-3.0.model.js +135 -0
  146. package/dist/catalog/fal/z-image-turbo.model.js +10 -9
  147. package/dist/catalog/grsai/gpt-image-2.5.model.js +13 -31
  148. package/dist/catalog/grsai/gpt-image-2.6.model.d.ts +2 -0
  149. package/dist/catalog/grsai/gpt-image-2.6.model.js +37 -0
  150. package/dist/catalog/grsai/gpt-image-2.model.js +5 -2
  151. package/dist/catalog/grsai/nano-banana-2-lite.model.js +1 -1
  152. package/dist/catalog/grsai/nano-banana-2.1.model.d.ts +2 -0
  153. package/dist/catalog/grsai/nano-banana-2.1.model.js +29 -0
  154. package/dist/catalog/grsai/nano-banana-2.model.js +1 -1
  155. package/dist/catalog/grsai/nano-banana-pro.model.js +1 -1
  156. package/dist/catalog/grsai/wan-3.0.model.d.ts +2 -0
  157. package/dist/catalog/grsai/wan-3.0.model.js +78 -0
  158. package/dist/catalog/index.d.ts +1 -0
  159. package/dist/catalog/index.js +205 -124
  160. package/dist/catalog/kie/eleven-v3-dialogue.model.js +1 -1
  161. package/dist/catalog/kie/flux-3-klein.model.d.ts +2 -0
  162. package/dist/catalog/kie/flux-3-klein.model.js +58 -0
  163. package/dist/catalog/kie/gemini-3.1-flash-tts.model.js +7 -4
  164. package/dist/catalog/kie/gemini-3.8-flash-lite-tts.model.d.ts +2 -0
  165. package/dist/catalog/kie/gemini-3.8-flash-lite-tts.model.js +11 -0
  166. package/dist/catalog/kie/gemini-3.8-flash-tts.model.d.ts +2 -0
  167. package/dist/catalog/kie/gemini-3.8-flash-tts.model.js +11 -0
  168. package/dist/catalog/kie/gemini-omni-video.model.js +8 -30
  169. package/dist/catalog/kie/gemini38Tts.d.ts +3 -0
  170. package/dist/catalog/kie/gemini38Tts.js +40 -0
  171. package/dist/catalog/kie/gpt-image-2.5.model.js +1 -1
  172. package/dist/catalog/kie/gpt-image-2.6.model.d.ts +2 -0
  173. package/dist/catalog/kie/gpt-image-2.6.model.js +87 -0
  174. package/dist/catalog/kie/gpt-image-2.model.js +8 -12
  175. package/dist/catalog/kie/grok-imagine-2.0.model.js +1 -1
  176. package/dist/catalog/kie/grok-imagine-video-1.5.model.d.ts +2 -0
  177. package/dist/catalog/kie/grok-imagine-video-1.5.model.js +52 -0
  178. package/dist/catalog/kie/grok-imagine-video.model.js +7 -3
  179. package/dist/catalog/kie/grok-imagine.model.js +4 -2
  180. package/dist/catalog/kie/hailuo-02.model.js +6 -4
  181. package/dist/catalog/kie/hailuo-2-3.model.js +1 -1
  182. package/dist/catalog/kie/happyhorse-1.1.model.js +5 -2
  183. package/dist/catalog/kie/kling-3.0-omni.model.js +51 -23
  184. package/dist/catalog/kie/kling-3.0-turbo.model.js +1 -1
  185. package/dist/catalog/kie/kling-3.0.model.js +1 -8
  186. package/dist/catalog/kie/kling-4.0-flash.model.d.ts +2 -0
  187. package/dist/catalog/kie/kling-4.0-flash.model.js +16 -0
  188. package/dist/catalog/kie/kling-4.0.model.d.ts +2 -0
  189. package/dist/catalog/kie/kling-4.0.model.js +17 -0
  190. package/dist/catalog/kie/kling-v2-6.model.js +1 -1
  191. package/dist/catalog/kie/kling40.d.ts +21 -0
  192. package/dist/catalog/kie/kling40.js +129 -0
  193. package/dist/catalog/kie/minimax-h3.model.js +16 -21
  194. package/dist/catalog/kie/nano-banana-2-lite.model.js +1 -1
  195. package/dist/catalog/kie/nano-banana-2.1.model.d.ts +2 -0
  196. package/dist/catalog/kie/nano-banana-2.1.model.js +34 -0
  197. package/dist/catalog/kie/nano-banana-2.model.js +2 -2
  198. package/dist/catalog/kie/nano-banana-pro.model.js +1 -1
  199. package/dist/catalog/kie/qwen-image-3.0.model.js +2 -10
  200. package/dist/catalog/kie/seedance-1.5-pro.model.js +2 -1
  201. package/dist/catalog/kie/seedance-2.0-fast.model.js +5 -1
  202. package/dist/catalog/kie/seedance-2.0-mini.model.js +5 -1
  203. package/dist/catalog/kie/seedance-2.0.model.js +5 -1
  204. package/dist/catalog/kie/seedance-2.5.model.js +10 -20
  205. package/dist/catalog/kie/seedance-v1.model.js +8 -4
  206. package/dist/catalog/kie/seedream-4.0.model.js +1 -1
  207. package/dist/catalog/kie/seedream-4.5.model.js +1 -1
  208. package/dist/catalog/kie/seedream-5.0-lite.model.js +1 -1
  209. package/dist/catalog/kie/seedream-5.0-pro.model.js +1 -1
  210. package/dist/catalog/kie/wan-3.0-prime.model.d.ts +2 -0
  211. package/dist/catalog/kie/wan-3.0-prime.model.js +15 -0
  212. package/dist/catalog/kie/wan-3.0.model.d.ts +2 -0
  213. package/dist/catalog/kie/wan-3.0.model.js +15 -0
  214. package/dist/catalog/kie/wan30.d.ts +10 -0
  215. package/dist/catalog/kie/wan30.js +78 -0
  216. package/dist/catalog/kie/z-image.model.js +1 -1
  217. package/dist/catalog/modelscope/flux-1-krea-dev.model.js +4 -2
  218. package/dist/catalog/modelscope/majicmix-realistic.model.js +3 -2
  219. package/dist/catalog/modelscope/modelscope-custom.model.js +3 -2
  220. package/dist/catalog/modelscope/qwen-image-2512.model.d.ts +5 -0
  221. package/dist/catalog/modelscope/{qwen-image.model.js → qwen-image-2512.model.js} +11 -8
  222. package/dist/catalog/modelscope/qwen-image-edit-2511.model.d.ts +5 -0
  223. package/dist/catalog/modelscope/{qwen-image-edit-2509.model.js → qwen-image-edit-2511.model.js} +9 -7
  224. package/dist/catalog/modelscope/sdxl-14-ckpt.model.js +3 -2
  225. package/dist/catalog/modelscope/utils.js +2 -2
  226. package/dist/catalog/modelscope/z-image-turbo.model.js +3 -2
  227. package/dist/catalog/ppio/kling-3.0.model.js +4 -1
  228. package/dist/catalog/ppio/minimax-speech.model.js +2 -1
  229. package/dist/catalog/shared/mediaPresence.d.ts +8 -1
  230. package/dist/catalog/shared/mediaPresence.js +21 -1
  231. package/dist/catalog/shared/nanoBanana21.d.ts +11 -0
  232. package/dist/catalog/shared/nanoBanana21.js +30 -0
  233. package/dist/catalog/shared/shotList.d.ts +31 -0
  234. package/dist/catalog/shared/shotList.js +48 -0
  235. package/dist/catalog/shared/subjectElements.d.ts +36 -0
  236. package/dist/catalog/shared/subjectElements.js +93 -0
  237. package/dist/catalog/siliconflow/moss-ttsd-0.5.model.js +1 -1
  238. package/dist/catalog/validate.js +14 -1
  239. package/dist/catalog/volcengine/seedance-2.0-fast.model.d.ts +2 -0
  240. package/dist/catalog/volcengine/seedance-2.0-fast.model.js +11 -0
  241. package/dist/catalog/volcengine/seedance-2.0-mini.model.d.ts +2 -0
  242. package/dist/catalog/volcengine/seedance-2.0-mini.model.js +11 -0
  243. package/dist/catalog/volcengine/seedance-2.0.model.d.ts +2 -0
  244. package/dist/catalog/volcengine/seedance-2.0.model.js +11 -0
  245. package/dist/catalog/volcengine/seedance-2.5.model.d.ts +2 -0
  246. package/dist/catalog/volcengine/seedance-2.5.model.js +11 -0
  247. package/dist/catalog/volcengine/seedance.d.ts +17 -0
  248. package/dist/catalog/volcengine/seedance.js +192 -0
  249. package/dist/catalog/volcengine/seedream-5.0-lite.model.js +2 -1
  250. package/dist/catalog/volcengine/seedream-5.0.js +1 -1
  251. package/dist/catalog/volcengine-speech/seed-icl-2.0.model.d.ts +1 -0
  252. package/dist/catalog/volcengine-speech/seed-icl-2.0.model.js +52 -10
  253. package/dist/catalog/volcengine-speech/seed-tts-2.0-voices.d.ts +2 -0
  254. package/dist/catalog/volcengine-speech/seed-tts-2.0-voices.js +438 -0
  255. package/dist/catalog/volcengine-speech/seed-tts-2.0.model.js +4 -4
  256. package/dist/discovery/index.js +13 -6
  257. package/dist/generation/core.d.ts +6 -0
  258. package/dist/generation/core.js +10 -2
  259. package/dist/index.d.ts +8 -0
  260. package/dist/index.js +9 -0
  261. package/dist/llm/bigmodel/preset.js +2 -1
  262. package/dist/llm/bigmodel/profiles.js +0 -6
  263. package/dist/llm/chat.d.ts +8 -0
  264. package/dist/llm/chat.js +18 -2
  265. package/dist/llm/chatTypes.d.ts +6 -0
  266. package/dist/llm/defaults.d.ts +2 -2
  267. package/dist/llm/defaults.js +3 -3
  268. package/dist/llm/groq/preset.js +18 -2
  269. package/dist/llm/modelCatalog.d.ts +9 -2
  270. package/dist/llm/modelCatalog.js +17 -4
  271. package/dist/llm/modelCatalogEntries.d.ts +2 -0
  272. package/dist/llm/modelCatalogEntries.js +197 -42
  273. package/dist/llm/providerPresets.d.ts +3 -0
  274. package/dist/llm/providerPresets.js +145 -32
  275. package/dist/llm/providerReasoningRequest.js +28 -11
  276. package/dist/llm/siliconflow/index.js +1 -1
  277. package/dist/llm/siliconflow/preset.js +30 -0
  278. package/dist/llm/types.d.ts +6 -0
  279. package/dist/packs/models/{ppio/wan-2.5-preview.d.ts → apimart/flux-3-image.d.ts} +1 -1
  280. package/dist/packs/models/apimart/flux-3-image.js +7 -0
  281. package/dist/packs/models/apimart/flux-3-video.d.ts +6 -0
  282. package/dist/packs/models/apimart/flux-3-video.js +7 -0
  283. package/dist/packs/models/apimart/gemini-omni-1.2-flash.d.ts +6 -0
  284. package/dist/packs/models/apimart/gemini-omni-1.2-flash.js +7 -0
  285. package/dist/packs/models/{modelscope/qwen-image.d.ts → apimart/gpt-image-2.6.d.ts} +1 -1
  286. package/dist/packs/models/apimart/gpt-image-2.6.js +7 -0
  287. package/dist/packs/models/apimart/grok-imagine-video-1.5.d.ts +6 -0
  288. package/dist/packs/models/apimart/grok-imagine-video-1.5.js +7 -0
  289. package/dist/packs/models/apimart/happyhorse-1.1.d.ts +6 -0
  290. package/dist/packs/models/apimart/happyhorse-1.1.js +7 -0
  291. package/dist/packs/models/apimart/kling-4.0.d.ts +6 -0
  292. package/dist/packs/models/apimart/kling-4.0.js +7 -0
  293. package/dist/packs/models/apimart/minimax-h3-max.d.ts +6 -0
  294. package/dist/packs/models/apimart/minimax-h3-max.js +7 -0
  295. package/dist/packs/models/{ppio/minimax-hailuo-2.3.d.ts → apimart/nano-banana-2.1.d.ts} +1 -1
  296. package/dist/packs/models/{ppio/minimax-hailuo-2.3.js → apimart/nano-banana-2.1.js} +4 -4
  297. package/dist/packs/models/apimart/seedream-5.0-flash.d.ts +6 -0
  298. package/dist/packs/models/apimart/seedream-5.0-flash.js +7 -0
  299. package/dist/packs/models/apimart/veo-3.1.d.ts +6 -0
  300. package/dist/packs/models/apimart/veo-3.1.js +7 -0
  301. package/dist/packs/models/apimart/wan-2.7-image.d.ts +6 -0
  302. package/dist/packs/models/apimart/wan-2.7-image.js +7 -0
  303. package/dist/packs/models/apimart/wan-3.0.d.ts +6 -0
  304. package/dist/packs/models/apimart/wan-3.0.js +7 -0
  305. package/dist/packs/models/bailian/cosyvoice-v3.5.js +1 -1
  306. package/dist/packs/models/bailian/minimax-h3.d.ts +6 -0
  307. package/dist/packs/models/bailian/minimax-h3.js +7 -0
  308. package/dist/packs/models/bailian/minimax-speech-2.8.js +1 -1
  309. package/dist/packs/models/bailian/qwen-audio-3.1-tts-flash.js +1 -1
  310. package/dist/packs/models/bailian/qwen-audio-3.1-tts-plus.d.ts +6 -0
  311. package/dist/packs/models/bailian/qwen-audio-3.1-tts-plus.js +7 -0
  312. package/dist/packs/models/bailian/qwen-image-3.0.js +1 -1
  313. package/dist/packs/models/bailian/wan-3.0.d.ts +6 -0
  314. package/dist/packs/models/bailian/wan-3.0.js +7 -0
  315. package/dist/packs/models/bailian/z-image-turbo.js +1 -1
  316. package/dist/packs/models/fal/eleven-v4-tts.d.ts +6 -0
  317. package/dist/packs/models/{ppio/wan-2.5-preview.js → fal/eleven-v4-tts.js} +4 -4
  318. package/dist/packs/models/fal/flux-3-video.d.ts +6 -0
  319. package/dist/packs/models/fal/flux-3-video.js +7 -0
  320. package/dist/packs/models/{ppio/wan-2.6.d.ts → fal/flux-3.d.ts} +1 -1
  321. package/dist/packs/models/{ppio/wan-2.6.js → fal/flux-3.js} +4 -4
  322. package/dist/packs/models/fal/gemini-omni-1.2-flash.d.ts +6 -0
  323. package/dist/packs/models/fal/gemini-omni-1.2-flash.js +7 -0
  324. package/dist/packs/models/fal/gpt-image-2.6.d.ts +6 -0
  325. package/dist/packs/models/fal/gpt-image-2.6.js +7 -0
  326. package/dist/packs/models/fal/grok-imagine-video-1.5.d.ts +6 -0
  327. package/dist/packs/models/fal/grok-imagine-video-1.5.js +7 -0
  328. package/dist/packs/models/fal/kling-4.0-flash.d.ts +6 -0
  329. package/dist/packs/models/fal/kling-4.0-flash.js +7 -0
  330. package/dist/packs/models/fal/kling-4.0.d.ts +6 -0
  331. package/dist/packs/models/{ppio/wan-2.7.js → fal/kling-4.0.js} +4 -4
  332. package/dist/packs/models/{ppio/wan-2.7.d.ts → fal/ltx-2.3.d.ts} +1 -1
  333. package/dist/packs/models/fal/ltx-2.3.js +7 -0
  334. package/dist/packs/models/fal/minimax-h3-max.d.ts +6 -0
  335. package/dist/packs/models/fal/minimax-h3-max.js +7 -0
  336. package/dist/packs/models/fal/nano-banana-2.1.d.ts +6 -0
  337. package/dist/packs/models/fal/nano-banana-2.1.js +7 -0
  338. package/dist/packs/models/fal/wan-3.0.d.ts +6 -0
  339. package/dist/packs/models/fal/wan-3.0.js +7 -0
  340. package/dist/packs/models/grsai/gpt-image-2.6.d.ts +6 -0
  341. package/dist/packs/models/grsai/gpt-image-2.6.js +7 -0
  342. package/dist/packs/models/grsai/nano-banana-2.1.d.ts +6 -0
  343. package/dist/packs/models/grsai/nano-banana-2.1.js +7 -0
  344. package/dist/packs/models/grsai/wan-3.0.d.ts +6 -0
  345. package/dist/packs/models/grsai/wan-3.0.js +7 -0
  346. package/dist/packs/models/kie/flux-3-klein.d.ts +6 -0
  347. package/dist/packs/models/kie/flux-3-klein.js +7 -0
  348. package/dist/packs/models/kie/gemini-3.8-flash-lite-tts.d.ts +6 -0
  349. package/dist/packs/models/kie/gemini-3.8-flash-lite-tts.js +7 -0
  350. package/dist/packs/models/kie/{eleven-turbo-2.5-tts.d.ts → gemini-3.8-flash-tts.d.ts} +1 -1
  351. package/dist/packs/models/kie/{eleven-turbo-2.5-tts.js → gemini-3.8-flash-tts.js} +1 -1
  352. package/dist/packs/models/kie/gpt-image-2.6.d.ts +6 -0
  353. package/dist/packs/models/kie/gpt-image-2.6.js +7 -0
  354. package/dist/packs/models/kie/grok-imagine-video-1.5.d.ts +6 -0
  355. package/dist/packs/models/kie/grok-imagine-video-1.5.js +7 -0
  356. package/dist/packs/models/kie/kling-4.0-flash.d.ts +6 -0
  357. package/dist/packs/models/kie/kling-4.0-flash.js +7 -0
  358. package/dist/packs/models/kie/kling-4.0.d.ts +6 -0
  359. package/dist/packs/models/kie/kling-4.0.js +7 -0
  360. package/dist/packs/models/kie/nano-banana-2.1.d.ts +6 -0
  361. package/dist/packs/models/kie/nano-banana-2.1.js +7 -0
  362. package/dist/packs/models/kie/wan-3.0-prime.d.ts +6 -0
  363. package/dist/packs/models/kie/wan-3.0-prime.js +7 -0
  364. package/dist/packs/models/kie/wan-3.0.d.ts +6 -0
  365. package/dist/packs/models/kie/wan-3.0.js +7 -0
  366. package/dist/packs/models/modelscope/flux-1-krea-dev.js +1 -1
  367. package/dist/packs/models/modelscope/majicmix-realistic.js +1 -1
  368. package/dist/packs/models/modelscope/modelscope-custom.js +1 -1
  369. package/dist/packs/models/modelscope/qwen-image-2512.d.ts +6 -0
  370. package/dist/packs/models/modelscope/{qwen-image.js → qwen-image-2512.js} +2 -2
  371. package/dist/packs/models/modelscope/{qwen-image-edit-2509.d.ts → qwen-image-edit-2511.d.ts} +1 -1
  372. package/dist/packs/models/modelscope/{qwen-image-edit-2509.js → qwen-image-edit-2511.js} +2 -2
  373. package/dist/packs/models/modelscope/sdxl-14-ckpt.js +1 -1
  374. package/dist/packs/models/modelscope/z-image-turbo.js +1 -1
  375. package/dist/packs/models/volcengine/seedance-2.0-fast.d.ts +6 -0
  376. package/dist/packs/models/volcengine/seedance-2.0-fast.js +7 -0
  377. package/dist/packs/models/volcengine/seedance-2.0-mini.d.ts +6 -0
  378. package/dist/packs/models/volcengine/seedance-2.0-mini.js +7 -0
  379. package/dist/packs/models/volcengine/seedance-2.0.d.ts +6 -0
  380. package/dist/packs/models/volcengine/seedance-2.0.js +7 -0
  381. package/dist/packs/models/volcengine/seedance-2.5.d.ts +6 -0
  382. package/dist/packs/models/volcengine/seedance-2.5.js +7 -0
  383. package/dist/packs/models/volcengine/seedream-5.0-flash.js +1 -1
  384. package/dist/packs/models/volcengine/seedream-5.0-lite.js +1 -1
  385. package/dist/packs/models/volcengine/seedream-5.0-pro.js +1 -1
  386. package/dist/packs/provider-adapters/bailian.js +1 -1
  387. package/dist/packs/provider-adapters/modelscope.js +1 -1
  388. package/dist/packs/provider-adapters/volcengine.js +1 -1
  389. package/dist/packs/provider-packs/apimart.d.ts +1 -1
  390. package/dist/packs/provider-packs/apimart.js +35 -22
  391. package/dist/packs/provider-packs/bailian.d.ts +1 -1
  392. package/dist/packs/provider-packs/bailian.js +8 -5
  393. package/dist/packs/provider-packs/fal.d.ts +1 -1
  394. package/dist/packs/provider-packs/fal.js +52 -40
  395. package/dist/packs/provider-packs/grsai.d.ts +1 -1
  396. package/dist/packs/provider-packs/grsai.js +8 -5
  397. package/dist/packs/provider-packs/kie.d.ts +1 -1
  398. package/dist/packs/provider-packs/kie.js +41 -32
  399. package/dist/packs/provider-packs/modelscope.js +2 -2
  400. package/dist/packs/provider-packs/ppio.d.ts +1 -1
  401. package/dist/packs/provider-packs/ppio.js +2 -6
  402. package/dist/packs/provider-packs/volcengine.d.ts +1 -1
  403. package/dist/packs/provider-packs/volcengine.js +8 -4
  404. package/dist/pricing/index.d.ts +1 -0
  405. package/dist/pricing/index.js +1 -0
  406. package/dist/pricing/mediaContext.d.ts +6 -1
  407. package/dist/pricing/mediaContext.js +12 -5
  408. package/dist/pricing/tokenPricing.d.ts +36 -0
  409. package/dist/pricing/tokenPricing.js +26 -0
  410. package/dist/providers/bailian.d.ts +1 -1
  411. package/dist/providers/bailian.js +71 -4
  412. package/dist/providers/fal.js +11 -1
  413. package/dist/providers/helpers.d.ts +1 -1
  414. package/dist/providers/helpers.js +17 -5
  415. package/dist/providers/kie.js +16 -5
  416. package/dist/providers/metadata.js +2 -2
  417. package/dist/providers/openai-speech.d.ts +6 -0
  418. package/dist/providers/openai-speech.js +31 -0
  419. package/dist/providers/providerAccessErrors.d.ts +3 -0
  420. package/dist/providers/providerAccessErrors.js +73 -0
  421. package/dist/providers/siliconflow.js +2 -27
  422. package/dist/providers/volcengine-speech.d.ts +1 -1
  423. package/dist/providers/volcengine-speech.js +31 -8
  424. package/dist/providers/volcengine-voice-clone.d.ts +3 -0
  425. package/dist/providers/volcengine-voice-clone.js +138 -0
  426. package/dist/providers/volcengine.d.ts +1 -1
  427. package/dist/providers/volcengine.js +89 -11
  428. package/dist/runtime/retry.js +3 -0
  429. package/dist/tool-packs/fal-erase/models/bria-eraser.model.js +1 -1
  430. package/dist/tool-packs/fal-erase/models/finegrain-eraser.model.js +1 -1
  431. package/dist/tool-packs/fal-erase/models/flux-pro-erase.model.js +1 -1
  432. package/dist/tool-packs/fal-image-utilities/models/control-light.model.js +1 -1
  433. package/dist/tool-packs/fal-image-utilities/models/outpaint.model.js +1 -1
  434. package/dist/tool-packs/fal-image-utilities/models/photo-restoration.model.js +1 -1
  435. package/dist/tool-packs/fal-image-utilities/models/pixelcut-background-removal.model.js +1 -1
  436. package/dist/tool-packs/fal-image-utilities/models/product-photography.model.js +1 -1
  437. package/dist/tool-packs/fal-image-utilities/models/relighting.model.js +1 -1
  438. package/dist/tool-packs/fal-multi-angle/models/flux-2-multiple-angles.model.js +1 -1
  439. package/dist/tool-packs/fal-multi-angle/models/perspective-change.model.js +1 -1
  440. package/dist/tool-packs/fal-multi-angle/models/qwen-image-edit-2511-multiple-angles.model.js +1 -1
  441. package/dist/types/model.d.ts +68 -12
  442. package/dist/types/model.js +3 -0
  443. package/dist/types/modelTags.d.ts +142 -0
  444. package/dist/types/modelTags.js +44 -0
  445. package/dist/types/runtime.d.ts +3 -0
  446. package/dist/types/speechTimings.d.ts +15 -0
  447. package/dist/types/speechTimings.js +1 -0
  448. package/dist/upload/apimart-upload.d.ts +1 -1
  449. package/dist/upload/apimart-upload.js +37 -15
  450. package/dist/upload/bailian-oss-upload.d.ts +32 -0
  451. package/dist/upload/bailian-oss-upload.js +74 -0
  452. package/dist/upload/{fal-legacy.js → fal-host-fetch.js} +2 -2
  453. package/dist/upload/fal-transport.d.ts +6 -0
  454. package/dist/upload/fal-transport.js +2 -1
  455. package/dist/upload/index.d.ts +2 -2
  456. package/dist/upload/index.js +4 -7
  457. package/dist/upload/kie-upload.d.ts +1 -1
  458. package/dist/upload/kie-upload.js +34 -12
  459. package/dist/upload/media-binary.js +1 -0
  460. package/dist/upload/media-fields.js +7 -2
  461. package/dist/upload/preprocess-core.d.ts +2 -0
  462. package/dist/upload/preprocess-core.js +2 -0
  463. package/dist/upload/preprocess.d.ts +1 -1
  464. package/dist/upload/preprocess.js +12 -3
  465. package/dist/upload/provider-preprocessors/apimart.d.ts +1 -1
  466. package/dist/upload/provider-preprocessors/apimart.js +13 -5
  467. package/dist/upload/provider-preprocessors/bailian.d.ts +8 -0
  468. package/dist/upload/provider-preprocessors/bailian.js +45 -0
  469. package/dist/upload/provider-preprocessors/kie.d.ts +1 -1
  470. package/dist/upload/provider-preprocessors/kie.js +26 -9
  471. package/dist/upload/provider-preprocessors/ppio.d.ts +1 -2
  472. package/dist/upload/provider-preprocessors/ppio.js +2 -29
  473. package/dist/upload/provider-preprocessors/public-host.d.ts +5 -0
  474. package/dist/upload/provider-preprocessors/public-host.js +7 -0
  475. package/dist/upload/provider-preprocessors/volcengine.d.ts +5 -0
  476. package/dist/upload/provider-preprocessors/volcengine.js +10 -0
  477. package/dist/upload/public-host-upload.d.ts +7 -0
  478. package/dist/upload/public-host-upload.js +55 -0
  479. package/dist/upload/upload-response.js +12 -7
  480. package/docs/README.md +26 -26
  481. package/docs/consumers.md +150 -124
  482. package/docs/llm-adaptation/README.md +180 -166
  483. package/docs/llm-adaptation//344/276/233/345/272/224/345/225/206/DeepSeek.md +108 -104
  484. package/docs/llm-adaptation//344/276/233/345/272/224/345/225/206/Kimi.md +94 -76
  485. package/docs/llm-adaptation//344/276/233/345/272/224/345/225/206/MiniMax.md +89 -84
  486. package/docs/llm-adaptation//344/276/233/345/272/224/345/225/206//345/260/217/347/261/263MiMo.md +126 -126
  487. package/docs/llm-adaptation//344/276/233/345/272/224/345/225/206//346/231/272/350/260/261GLM.md +238 -234
  488. package/docs/llm-adaptation//344/276/233/345/272/224/345/225/206//347/201/253/345/261/261/345/274/225/346/223/216.md +131 -87
  489. package/docs/llm-adaptation//344/276/233/345/272/224/345/225/206//347/231/276/347/202/274Qwen.md +112 -84
  490. package/docs/llm-adaptation//346/226/207/346/241/243/351/207/207/351/233/206/346/211/213/345/206/214.md +88 -88
  491. package/docs/model-adaptation/Bria-Eraser/Bria-Eraser_Fal.md +32 -32
  492. package/docs/model-adaptation/Bria-/345/210/233/346/204/217/346/224/276/345/244/247/Bria-/345/210/233/346/204/217/346/224/276/345/244/247_Fal.md +31 -31
  493. package/docs/model-adaptation/ControlLight/ControlLight_Fal.md +85 -85
  494. package/docs/model-adaptation/Eleven-v4/Eleven-v4_Fal.md +49 -0
  495. package/docs/model-adaptation/FLUX-2-/345/244/232/350/247/222/345/272/246/FLUX-2-/345/244/232/350/247/222/345/272/246_Fal.md +107 -107
  496. package/docs/model-adaptation/FLUX-3/FLUX-3_APIMart.md +65 -0
  497. package/docs/model-adaptation/FLUX-3/FLUX-3_Fal.md +48 -0
  498. package/docs/model-adaptation/FLUX-3-Klein/FLUX-3-Klein_KIE.md +38 -0
  499. package/docs/model-adaptation/FLUX-3-Video/FLUX-3-Video_APIMart.md +84 -0
  500. package/docs/model-adaptation/FLUX-3-Video/FLUX-3-Video_Fal.md +80 -0
  501. package/docs/model-adaptation/Finegrain-Eraser/Finegrain-Eraser_Fal.md +31 -31
  502. package/docs/model-adaptation/Flux-Pro-Erase/Flux-Pro-Erase_Fal.md +34 -34
  503. package/docs/model-adaptation/Fun-ASR/Fun-ASR_/347/231/276/347/202/274.md +47 -47
  504. package/docs/model-adaptation/Fun-ASR-Flash-2026-06-15/Fun-ASR-Flash-2026-06-15_/347/231/276/347/202/274.md +45 -45
  505. package/docs/model-adaptation/Fun-ASR-Realtime/Fun-ASR-Realtime_/347/231/276/347/202/274.md +57 -57
  506. package/docs/model-adaptation/Fun-ASR-Realtime-2026-02-28/Fun-ASR-Realtime-2026-02-28_/347/231/276/347/202/274.md +39 -39
  507. package/docs/model-adaptation/GLM-5.3-Flash/GLM-5.3-Flash_/346/231/272/350/260/261.md +217 -213
  508. package/docs/model-adaptation/GPT-Image-2/GPT-Image-2_APIMart.md +173 -173
  509. package/docs/model-adaptation/GPT-Image-2/GPT-Image-2_Fal.md +94 -94
  510. package/docs/model-adaptation/GPT-Image-2/GPT-Image-2_Grsai.md +138 -137
  511. package/docs/model-adaptation/GPT-Image-2/GPT-Image-2_KIE.md +97 -93
  512. package/docs/model-adaptation/GPT-Image-2.5/GPT-Image-2.5_APIMart.md +66 -66
  513. package/docs/model-adaptation/GPT-Image-2.5/GPT-Image-2.5_Fal.md +55 -55
  514. package/docs/model-adaptation/GPT-Image-2.5/GPT-Image-2.5_Grsai.md +59 -53
  515. package/docs/model-adaptation/GPT-Image-2.5/GPT-Image-2.5_KIE.md +55 -55
  516. package/docs/model-adaptation/GPT-Image-2.6/GPT-Image-2.6_APIMart.md +101 -0
  517. package/docs/model-adaptation/GPT-Image-2.6/GPT-Image-2.6_Fal.md +55 -0
  518. package/docs/model-adaptation/GPT-Image-2.6/GPT-Image-2.6_Grsai.md +32 -0
  519. package/docs/model-adaptation/GPT-Image-2.6/GPT-Image-2.6_KIE.md +51 -0
  520. package/docs/model-adaptation/GPT-OSS-20B/GPT-OSS-20B_Groq.md +62 -62
  521. package/docs/model-adaptation/Gemini-3.8-Flash-Lite-TTS/Gemini-3.8-Flash-Lite-TTS_KIE.md +22 -0
  522. package/docs/model-adaptation/Gemini-3.8-Flash-TTS/Gemini-3.8-Flash-TTS_KIE.md +38 -0
  523. package/docs/model-adaptation/Gemini-Omni-1.2-Flash/Gemini-Omni-1.2-Flash_APIMart.md +79 -0
  524. package/docs/model-adaptation/Gemini-Omni-1.2-Flash/Gemini-Omni-1.2-Flash_Fal.md +60 -0
  525. package/docs/model-adaptation/Gemini-Omni-Flash/Gemini-Omni-Flash_APIMart.md +131 -124
  526. package/docs/model-adaptation/Gemini-Omni-Flash/Gemini-Omni-Flash_Fal.md +84 -84
  527. package/docs/model-adaptation/Gemini-Omni-Flash/Gemini-Omni-Flash_KIE.md +132 -129
  528. package/docs/model-adaptation/Grok-Imagine/Grok-Imagine_KIE.md +38 -36
  529. package/docs/model-adaptation/Grok-Imagine-2.0/Grok-Imagine-2.0_APIMart.md +250 -250
  530. package/docs/model-adaptation/Grok-Imagine-2.0/Grok-Imagine-2.0_Fal.md +84 -84
  531. package/docs/model-adaptation/Grok-Imagine-2.0/Grok-Imagine-2.0_KIE.md +105 -105
  532. package/docs/model-adaptation/Grok-Imagine-Video-1.5/Grok-Imagine-Video-1.5_APIMart.md +68 -0
  533. package/docs/model-adaptation/Grok-Imagine-Video-1.5/Grok-Imagine-Video-1.5_Fal.md +47 -0
  534. package/docs/model-adaptation/Grok-Imagine-Video-1.5/Grok-Imagine-Video-1.5_KIE.md +37 -0
  535. package/docs/model-adaptation/Hailuo-02/Hailuo-02_Fal.md +95 -93
  536. package/docs/model-adaptation/Hailuo-02/Hailuo-02_KIE.md +58 -56
  537. package/docs/model-adaptation/Hailuo-2.3/Hailuo-2.3_Fal.md +88 -88
  538. package/docs/model-adaptation/Hailuo-2.3/Hailuo-2.3_KIE.md +51 -51
  539. package/docs/model-adaptation/HappyHorse-1.1/HappyHorse-1.1_APIMart.md +66 -0
  540. package/docs/model-adaptation/HappyHorse-1.1/HappyHorse-1.1_KIE.md +31 -27
  541. package/docs/model-adaptation/IC-Light-v2/IC-Light-v2_Fal.md +99 -99
  542. package/docs/model-adaptation/Ideogram-/345/233/276/347/211/207/346/224/276/345/244/247/Ideogram-/345/233/276/347/211/207/346/224/276/345/244/247_Fal.md +41 -41
  543. package/docs/model-adaptation/Image-Apps-v2-/345/225/206/345/223/201/346/221/204/345/275/261/Image-Apps-v2-/345/225/206/345/223/201/346/221/204/345/275/261_Fal.md +72 -72
  544. package/docs/model-adaptation/Image-Apps-v2-/346/211/251/345/233/276/Image-Apps-v2-/346/211/251/345/233/276_Fal.md +93 -93
  545. package/docs/model-adaptation/Image-Apps-v2-/347/205/247/347/211/207/344/277/256/345/244/215/Image-Apps-v2-/347/205/247/347/211/207/344/277/256/345/244/215_Fal.md +86 -86
  546. package/docs/model-adaptation/Image-Apps-v2-/351/207/215/346/211/223/345/205/211/Image-Apps-v2-/351/207/215/346/211/223/345/205/211_Fal.md +84 -84
  547. package/docs/model-adaptation/Kling-3.0/Kling-3.0_APIMart.md +112 -112
  548. package/docs/model-adaptation/Kling-3.0/Kling-3.0_Fal.md +91 -89
  549. package/docs/model-adaptation/Kling-3.0/Kling-3.0_KIE.md +106 -106
  550. package/docs/model-adaptation/Kling-3.0/Kling-3.0_/346/264/276/346/254/247/344/272/221.md +120 -119
  551. package/docs/model-adaptation/Kling-3.0-Omni/Kling-3.0-Omni_APIMart.md +130 -125
  552. package/docs/model-adaptation/Kling-3.0-Omni/Kling-3.0-Omni_Fal.md +107 -107
  553. package/docs/model-adaptation/Kling-3.0-Omni/Kling-3.0-Omni_KIE.md +148 -143
  554. package/docs/model-adaptation/Kling-3.0-Turbo/Kling-3.0-Turbo_APIMart.md +88 -85
  555. package/docs/model-adaptation/Kling-3.0-Turbo/Kling-3.0-Turbo_Fal.md +86 -83
  556. package/docs/model-adaptation/Kling-3.0-Turbo/Kling-3.0-Turbo_KIE.md +84 -84
  557. package/docs/model-adaptation/Kling-4.0/Kling-4.0_APIMart.md +76 -0
  558. package/docs/model-adaptation/Kling-4.0/Kling-4.0_Fal.md +115 -0
  559. package/docs/model-adaptation/Kling-4.0/Kling-4.0_KIE.md +61 -0
  560. package/docs/model-adaptation/Kling-4.0-Flash/Kling-4.0-Flash_Fal.md +55 -0
  561. package/docs/model-adaptation/Kling-4.0-Flash/Kling-4.0-Flash_KIE.md +33 -0
  562. package/docs/model-adaptation/LTX-2.3/LTX-2.3_Fal.md +121 -0
  563. package/docs/model-adaptation/Midjourney/Midjourney_APIMart.md +402 -396
  564. package/docs/model-adaptation/MiniMax-H3/MiniMax-H3_APIMart.md +237 -234
  565. package/docs/model-adaptation/MiniMax-H3/MiniMax-H3_Fal.md +112 -108
  566. package/docs/model-adaptation/MiniMax-H3/MiniMax-H3_KIE.md +118 -111
  567. package/docs/model-adaptation/MiniMax-H3/MiniMax-H3_/347/231/276/347/202/274.md +65 -0
  568. package/docs/model-adaptation/MiniMax-H3-Max/MiniMax-H3-Max_APIMart.md +78 -0
  569. package/docs/model-adaptation/MiniMax-H3-Max/MiniMax-H3-Max_Fal.md +62 -0
  570. package/docs/model-adaptation/MiniMax-Speech/MiniMax-Speech_/346/264/276/346/254/247/344/272/221.md +170 -170
  571. package/docs/model-adaptation/Nano-Banana-2/Nano-Banana-2_APIMart.md +89 -89
  572. package/docs/model-adaptation/Nano-Banana-2/Nano-Banana-2_Fal.md +99 -99
  573. package/docs/model-adaptation/Nano-Banana-2/Nano-Banana-2_Grsai.md +82 -82
  574. package/docs/model-adaptation/Nano-Banana-2/Nano-Banana-2_KIE.md +72 -70
  575. package/docs/model-adaptation/Nano-Banana-2-Lite/Nano-Banana-2-Lite_APIMart.md +79 -79
  576. package/docs/model-adaptation/Nano-Banana-2-Lite/Nano-Banana-2-Lite_Grsai.md +65 -65
  577. package/docs/model-adaptation/Nano-Banana-2-Lite/Nano-Banana-2-Lite_KIE.md +64 -64
  578. package/docs/model-adaptation/Nano-Banana-2.1/Nano-Banana-2.1_APIMart.md +35 -0
  579. package/docs/model-adaptation/Nano-Banana-2.1/Nano-Banana-2.1_Fal.md +37 -0
  580. package/docs/model-adaptation/Nano-Banana-2.1/Nano-Banana-2.1_Grsai.md +35 -0
  581. package/docs/model-adaptation/Nano-Banana-2.1/Nano-Banana-2.1_KIE.md +36 -0
  582. package/docs/model-adaptation/Nano-Banana-Pro/Nano-Banana-Pro_APIMart.md +83 -83
  583. package/docs/model-adaptation/Nano-Banana-Pro/Nano-Banana-Pro_Fal.md +89 -89
  584. package/docs/model-adaptation/Nano-Banana-Pro/Nano-Banana-Pro_Grsai.md +82 -82
  585. package/docs/model-adaptation/Nano-Banana-Pro/Nano-Banana-Pro_KIE.md +64 -64
  586. package/docs/model-adaptation/Pixelcut-/350/203/214/346/231/257/347/247/273/351/231/244/Pixelcut-/350/203/214/346/231/257/347/247/273/351/231/244_Fal.md +79 -79
  587. package/docs/model-adaptation/Qwen-Audio-3.1-TTS-Plus/Qwen-Audio-3.1-TTS-Plus_/347/231/276/347/202/274.md +59 -0
  588. package/docs/model-adaptation/Qwen-Image-3.0/Qwen-Image-3.0_APIMart.md +117 -117
  589. package/docs/model-adaptation/Qwen-Image-3.0/Qwen-Image-3.0_Fal.md +85 -84
  590. package/docs/model-adaptation/Qwen-Image-3.0/Qwen-Image-3.0_KIE.md +103 -103
  591. package/docs/model-adaptation/Qwen-Image-3.0/Qwen-Image-3.0_/347/231/276/347/202/274.md +138 -138
  592. package/docs/model-adaptation/Qwen-Image-Edit-2511-/345/244/232/350/247/222/345/272/246/Qwen-Image-Edit-2511-/345/244/232/350/247/222/345/272/246_Fal.md +57 -57
  593. package/docs/model-adaptation/Qwen-MT-Flash/Qwen-MT-Flash_/347/231/276/347/202/274.md +68 -68
  594. package/docs/model-adaptation/Qwen-MT-Lite/Qwen-MT-Lite_/347/231/276/347/202/274.md +40 -40
  595. package/docs/model-adaptation/Qwen-MT-Plus/Qwen-MT-Plus_/347/231/276/347/202/274.md +40 -40
  596. package/docs/model-adaptation/Qwen3-ASR-Flash/Qwen3-ASR-Flash_/347/231/276/347/202/274.md +44 -44
  597. package/docs/model-adaptation/Qwen3-ASR-Flash-2026-02-10/Qwen3-ASR-Flash-2026-02-10_/347/231/276/347/202/274.md +37 -37
  598. package/docs/model-adaptation/Qwen3-ASR-Flash-Filetrans/Qwen3-ASR-Flash-Filetrans_/347/231/276/347/202/274.md +45 -45
  599. package/docs/model-adaptation/Qwen3-ASR-Flash-Realtime/Qwen3-ASR-Flash-Realtime_/347/231/276/347/202/274.md +58 -58
  600. package/docs/model-adaptation/Qwen3-ASR-Flash-Realtime-2026-02-10/Qwen3-ASR-Flash-Realtime-2026-02-10_/347/231/276/347/202/274.md +37 -37
  601. package/docs/model-adaptation/README.md +371 -328
  602. package/docs/model-adaptation/Seed-ICL-2.0/Seed-ICL-2.0_/347/201/253/345/261/261/345/274/225/346/223/216.md +65 -0
  603. package/docs/model-adaptation/SeedASR-2.0-File/SeedASR-2.0-File_/347/201/253/345/261/261/345/274/225/346/223/216.md +115 -115
  604. package/docs/model-adaptation/SeedASR-2.0-Realtime/SeedASR-2.0-Realtime_/347/201/253/345/261/261/345/274/225/346/223/216.md +147 -147
  605. package/docs/model-adaptation/SeedVR2-/345/233/276/347/211/207/346/224/276/345/244/247/SeedVR2-/345/233/276/347/211/207/346/224/276/345/244/247_Fal.md +45 -45
  606. package/docs/model-adaptation/Seedance-2.0/Seedance-2.0_APIMart.md +121 -121
  607. package/docs/model-adaptation/Seedance-2.0/Seedance-2.0_Fal.md +97 -97
  608. package/docs/model-adaptation/Seedance-2.0/Seedance-2.0_KIE.md +87 -86
  609. package/docs/model-adaptation/Seedance-2.0/Seedance-2.0_/347/201/253/345/261/261/345/274/225/346/223/216.md +101 -0
  610. package/docs/model-adaptation/Seedance-2.0-Fast/Seedance-2.0-Fast_APIMart.md +89 -89
  611. package/docs/model-adaptation/Seedance-2.0-Fast/Seedance-2.0-Fast_Fal.md +95 -95
  612. package/docs/model-adaptation/Seedance-2.0-Fast/Seedance-2.0-Fast_KIE.md +79 -78
  613. package/docs/model-adaptation/Seedance-2.0-Fast/Seedance-2.0-Fast_/347/201/253/345/261/261/345/274/225/346/223/216.md +98 -0
  614. package/docs/model-adaptation/Seedance-2.0-Mini/Seedance-2.0-Mini_APIMart.md +93 -89
  615. package/docs/model-adaptation/Seedance-2.0-Mini/Seedance-2.0-Mini_Fal.md +96 -96
  616. package/docs/model-adaptation/Seedance-2.0-Mini/Seedance-2.0-Mini_KIE.md +79 -78
  617. package/docs/model-adaptation/Seedance-2.0-Mini/Seedance-2.0-Mini_/347/201/253/345/261/261/345/274/225/346/223/216.md +98 -0
  618. package/docs/model-adaptation/Seedance-2.5/Seedance-2.5_APIMart.md +217 -212
  619. package/docs/model-adaptation/Seedance-2.5/Seedance-2.5_Fal.md +98 -94
  620. package/docs/model-adaptation/Seedance-2.5/Seedance-2.5_KIE.md +94 -89
  621. package/docs/model-adaptation/Seedance-2.5/Seedance-2.5_/347/201/253/345/261/261/345/274/225/346/223/216.md +102 -0
  622. package/docs/model-adaptation/Seedream-5.0-Flash/Seedream-5.0-Flash_APIMart.md +64 -0
  623. package/docs/model-adaptation/Seedream-5.0-Flash/Seedream-5.0-Flash_/347/201/253/345/261/261/345/274/225/346/223/216.md +18 -18
  624. package/docs/model-adaptation/Seedream-5.0-Lite/Seedream-5.0-Lite_APIMart.md +113 -106
  625. package/docs/model-adaptation/Seedream-5.0-Lite/Seedream-5.0-Lite_Fal.md +91 -91
  626. package/docs/model-adaptation/Seedream-5.0-Lite/Seedream-5.0-Lite_KIE.md +89 -89
  627. package/docs/model-adaptation/Seedream-5.0-Lite/Seedream-5.0-Lite_/347/201/253/345/261/261/345/274/225/346/223/216.md +110 -108
  628. package/docs/model-adaptation/Seedream-5.0-Pro/Seedream-5.0-Pro_APIMart.md +194 -194
  629. package/docs/model-adaptation/Seedream-5.0-Pro/Seedream-5.0-Pro_Fal.md +100 -100
  630. package/docs/model-adaptation/Seedream-5.0-Pro/Seedream-5.0-Pro_KIE.md +141 -141
  631. package/docs/model-adaptation/Seedream-5.0-Pro/Seedream-5.0-Pro_/347/201/253/345/261/261/345/274/225/346/223/216.md +137 -137
  632. package/docs/model-adaptation/SenseVoiceSmall/SenseVoiceSmall_/347/241/205/345/237/272/346/265/201/345/212/250.md +73 -73
  633. package/docs/model-adaptation/TTS-/345/244/232/344/276/233/345/272/224/345/225/206-2026-09.md +52 -6
  634. package/docs/model-adaptation/TTS-/346/227/266/351/227/264/346/210/263-2026-10.md +36 -0
  635. package/docs/model-adaptation/Topaz-/345/233/276/347/211/207/346/224/276/345/244/247/Topaz-/345/233/276/347/211/207/346/224/276/345/244/247_Fal.md +87 -87
  636. package/docs/model-adaptation/Topaz-/351/200/217/346/230/216/345/233/276/346/224/276/345/244/247/Topaz-/351/200/217/346/230/216/345/233/276/346/224/276/345/244/247_Fal.md +34 -34
  637. package/docs/model-adaptation/Veo-3.1/Veo-3.1_APIMart.md +90 -0
  638. package/docs/model-adaptation/Wan-2.7-Image/Wan-2.7-Image_APIMart.md +81 -0
  639. package/docs/model-adaptation/Wan-3.0/Wan-3.0_APIMart.md +74 -0
  640. package/docs/model-adaptation/Wan-3.0/Wan-3.0_Fal.md +60 -0
  641. package/docs/model-adaptation/Wan-3.0/Wan-3.0_Grsai.md +35 -0
  642. package/docs/model-adaptation/Wan-3.0/Wan-3.0_KIE.md +38 -0
  643. package/docs/model-adaptation/Wan-3.0/Wan-3.0_/347/231/276/347/202/274.md +96 -0
  644. package/docs/model-adaptation/Wan-3.0-Prime/Wan-3.0-Prime_KIE.md +20 -0
  645. package/docs/model-adaptation/Whisper-Large-v3/Whisper-Large-v3_Groq.md +80 -80
  646. package/docs/model-adaptation/Whisper-Large-v3-Turbo/Whisper-Large-v3-Turbo_Groq.md +79 -79
  647. package/docs/model-adaptation/Z-Image-Turbo/Z-Image-Turbo_APIMart.md +88 -88
  648. package/docs/model-adaptation/Z-Image-Turbo/Z-Image-Turbo_Fal.md +103 -95
  649. package/docs/model-adaptation/Z-Image-Turbo/Z-Image-Turbo_KIE.md +71 -71
  650. package/docs/model-adaptation/Z-Image-Turbo/Z-Image-Turbo_/347/231/276/347/202/274.md +122 -122
  651. package/docs/model-adaptation/Z-Image-Turbo/Z-Image-Turbo_/351/255/224/346/220/255.md +99 -97
  652. package/docs/model-adaptation//344/276/233/345/272/224/345/225/206/APIMart.md +240 -240
  653. package/docs/model-adaptation//344/276/233/345/272/224/345/225/206/Fal.md +190 -172
  654. package/docs/model-adaptation//344/276/233/345/272/224/345/225/206/Groq.md +136 -121
  655. package/docs/model-adaptation//344/276/233/345/272/224/345/225/206/Grsai.md +217 -217
  656. package/docs/model-adaptation//344/276/233/345/272/224/345/225/206/KIE.md +159 -131
  657. package/docs/model-adaptation//344/276/233/345/272/224/345/225/206//345/200/231/351/200/211/344/276/233/345/272/224/345/225/206/350/260/203/347/240/224-/345/233/276/347/211/207/345/267/245/345/205/267.md +151 -151
  658. package/docs/model-adaptation//344/276/233/345/272/224/345/225/206//345/277/253/351/200/237/351/200/202/351/205/215/344/276/233/345/272/224/345/225/206.md +65 -65
  659. package/docs/model-adaptation//344/276/233/345/272/224/345/225/206//346/264/276/346/254/247/344/272/221.md +170 -147
  660. package/docs/model-adaptation//344/276/233/345/272/224/345/225/206//347/201/253/345/261/261/345/274/225/346/223/216.md +191 -183
  661. package/docs/model-adaptation//344/276/233/345/272/224/345/225/206//347/231/276/347/202/274.md +339 -282
  662. package/docs/model-adaptation//344/276/233/345/272/224/345/225/206//347/241/205/345/237/272/346/265/201/345/212/250.md +180 -153
  663. package/docs/model-adaptation//344/276/233/345/272/224/345/225/206//351/255/224/346/220/255.md +205 -207
  664. package/docs/model-adaptation//346/226/207/346/241/243/351/207/207/351/233/206/346/211/213/345/206/214.md +339 -338
  665. package/docs/model-adaptation//351/200/217/350/247/206/345/217/230/346/215/242//351/200/217/350/247/206/345/217/230/346/215/242_Fal.md +59 -59
  666. package/docs//346/216/245/345/205/245/346/214/207/345/215/227/Electron.md +77 -77
  667. package/docs//346/216/245/345/205/245/346/214/207/345/215/227/Tauri.md +81 -81
  668. package/docs//346/216/245/345/205/245/346/214/207/345/215/227/UXP.md +169 -169
  669. package/docs//346/216/245/345/205/245/346/214/207/345/215/227//344/276/233/345/272/224/345/225/206/345/237/237/345/220/215.md +83 -83
  670. package/docs//346/216/245/345/205/245/346/214/207/345/215/227//351/224/231/350/257/257/345/244/204/347/220/206.md +72 -72
  671. package/examples/form-renderer/README.md +17 -17
  672. package/examples/form-renderer/cli.ts +32 -32
  673. package/examples/form-renderer/index.ts +144 -144
  674. package/examples/form-renderer/package.json +16 -16
  675. package/examples/form-renderer/tsconfig.json +14 -14
  676. package/examples/llm-chat/README.md +38 -38
  677. package/examples/llm-chat/index.ts +100 -100
  678. package/examples/llm-chat/package.json +19 -19
  679. package/examples/llm-chat/tsconfig.json +14 -14
  680. package/examples/minimal-node/README.md +31 -31
  681. package/examples/minimal-node/index.ts +138 -138
  682. package/examples/minimal-node/package.json +17 -17
  683. package/examples/minimal-node/tsconfig.json +14 -14
  684. package/package.json +259 -258
  685. package/dist/catalog/grsai/gptImage25Sizes.d.ts +0 -1
  686. package/dist/catalog/grsai/gptImage25Sizes.js +0 -76
  687. package/dist/catalog/kie/eleven-turbo-2.5-tts.model.d.ts +0 -2
  688. package/dist/catalog/kie/eleven-turbo-2.5-tts.model.js +0 -29
  689. package/dist/catalog/modelscope/qwen-image-edit-2509.model.d.ts +0 -5
  690. package/dist/catalog/modelscope/qwen-image.model.d.ts +0 -5
  691. package/dist/catalog/ppio/minimax-hailuo-2.3.model.d.ts +0 -7
  692. package/dist/catalog/ppio/minimax-hailuo-2.3.model.js +0 -114
  693. package/dist/catalog/ppio/wan-2.5-preview.model.d.ts +0 -7
  694. package/dist/catalog/ppio/wan-2.5-preview.model.js +0 -198
  695. package/dist/catalog/ppio/wan-2.6.model.d.ts +0 -7
  696. package/dist/catalog/ppio/wan-2.6.model.js +0 -206
  697. package/dist/catalog/ppio/wan-2.7.model.d.ts +0 -2
  698. package/dist/catalog/ppio/wan-2.7.model.js +0 -373
  699. package/docs/model-adaptation/Hailuo-2.3/Hailuo-2.3_/346/264/276/346/254/247/344/272/221.md +0 -70
  700. package/docs/model-adaptation/TeleSpeechASR/TeleSpeechASR_/347/241/205/345/237/272/346/265/201/345/212/250.md +0 -76
  701. package/docs/model-adaptation/Wan-2.5-Preview/Wan-2.5-Preview_/346/264/276/346/254/247/344/272/221.md +0 -82
  702. package/docs/model-adaptation/Wan-2.6/Wan-2.6_/346/264/276/346/254/247/344/272/221.md +0 -84
  703. package/docs/model-adaptation/Wan-2.7/Wan-2.7_/346/264/276/346/254/247/344/272/221.md +0 -122
  704. /package/dist/upload/{fal-legacy.d.ts → fal-host-fetch.d.ts} +0 -0
@@ -1,79 +1,79 @@
1
- # Nano Banana 2 Lite · APIMart
2
-
3
- | 项目 | 内容 |
4
- |---|---|
5
- | 最后更新 | 2026-08-28 |
6
- | 模态 | 图片 |
7
- | 供应商 | APIMart(聚合平台) |
8
- | 平台模型 ID | `gemini-3.1-flash-lite-image`(官方渠道)/ `gemini-3.1-flash-lite-image-ext`(常规 EXT 渠道) |
9
- | 接口形态 | **异步任务** |
10
- | 文档可见性 | 公开,无需登录 |
11
- | 价格可见性 | 公开,无需登录 |
12
- | 项目对照 | [catalog/apimart/nano-banana-2-lite.model.ts](../../../src/catalog/apimart/nano-banana-2-lite.model.ts),`canonicalModelId: 'nano-banana-2-lite'`,与 [Nano Banana 2](../Nano-Banana-2/Nano-Banana-2_APIMart.md) 是**两个独立的产品模型**,不是同一模型下的渠道/分辨率选项 |
13
-
14
- > Nano Banana 2 Lite 是 Gemini 3.1 系列里**最快、最便宜**的图像模型,走 Developer API 的 `interactions` 端点,主打规模化低成本出图。它与 Nano Banana 2 主模型共享同一份 API 文档页(`generation-lite` 是主文档页的姊妹页),但**能力集合、限制、计费方式都不同**,本项目在代码里已经把它拆成独立模型(`canonicalModelId: nano-banana-2-lite`),本文件把它对应拆成独立文档,不再挂在 Nano Banana 2 文件里。
15
-
16
- ## 1. 接入协议
17
-
18
- - **Base URL**:`https://api.apimart.ai`
19
- - **鉴权**:`Authorization: Bearer <API_KEY>`
20
- - **提交**:`POST /v1/images/generations` → `{ code, data: [{ status: "submitted", task_id }] }`
21
- - **查询**:`GET /v1/tasks/{task_id}`,读 `result.images`
22
- - **回调**:支持 `webhook` 参数(base 地址,平台回调 `webhook + /callback`),桌面端不用,走轮询
23
-
24
- ## 2. 与 Nano Banana 2 主模型的能力差异(文档明列)
25
-
26
- | 项 | 主模型(Nano Banana 2) | Lite |
27
- |---|---|---|
28
- | 分辨率 | 0.5K / 1K / 2K / 4K | **仅 1K**。传 2K/4K/0.5K 会**静默降级为 1K,不报错**,前端不应暴露分辨率选项 |
29
- | 比例 | 15 个(含 1:4 / 4:1 / 1:8 / 8:1 极端比例) | **11 个**(`auto`、`1:1`、`3:2`、`2:3`、`4:3`、`3:4`、`16:9`、`9:16`、`5:4`、`4:5`、`21:9`),**无极端比例** |
30
- | `n` | 只能 1 | **1–4**(`n>1` 后端并发多次上游请求,按实际成功张数计费;文档建议前端固定传 1) |
31
- | `google_search` / `google_image_search` | 支持 | **不支持**。上游未开放 Search 工具(会返回 "Search as tool is not enabled for this model"),平台适配器也不下发。**传了不报错、照常出图,但没有任何搜索增强效果** |
32
- | `official_fallback` | 支持 | **不支持**,且无 `-official` 变体 |
33
- | 计费 | 按张固定价 | **按 token** |
34
- | `mask_url` 局部重绘 | 不支持 | 不支持(Gemini 系列走 aspect ratio + 参考图,不走蒙版) |
35
-
36
- ## 3. 请求参数
37
-
38
- | 字段 | 类型 | 必填 | 默认 | 取值与说明 |
39
- |---|---|---|---|---|
40
- | `model` | string | 必填 | `gemini-3.1-flash-lite-image` | 官方渠道;常规渠道使用 EXT 别名 `gemini-3.1-flash-lite-image-ext` |
41
- | `prompt` | string | 必填 | — | 图像生成描述 |
42
- | `size` | string | 可选 | — | 11 个比例(见第 2 节),无极端比例;`auto` 行为与主模型一致,建议始终显式指定 |
43
- | `n` | integer | 可选 | `1` | 1–4,建议前端固定传 1 |
44
- | `image_urls` | array | 可选 | — | 参考图,最多 **14 张**;单张 ≤ 10 MB;格式 jpeg/png/webp;支持公网 URL 或完整 Data URI |
45
- | `nsfw_check` | boolean | 可选 | `false` | `true` 时用 `omni-moderation-latest` 预审 |
46
- | `webhook` | string | 可选 | — | 回调基址,桌面端不使用 |
47
-
48
- ## 4. 价格
49
-
50
- 来源:[APIMart 定价中心](https://apimart.ai/zh/pricing)与[Nano Banana 2 模型页的 Lite 档](https://apimart.ai/zh/model/nano-banana-3-api)(2026-08-28,1 Credit ≈ $0.1)。
51
-
52
- | 计费口径 | 我们的价格 | 官方价 | 节省 |
53
- |---|---|---|---|
54
- | `NANO-BANANA-2-LITE-EXT`(按张,1K) | 0.125 Credits/张 ≈ **$0.0125/张** | $0.015625 | 20% |
55
- | `NANO-BANANA-2-LITE`(官方渠道,按 token)文本/图片输入 | 2 Credits/M ≈ $0.2/M | — | — |
56
- | `NANO-BANANA-2-LITE`(官方渠道,按 token)文本输出 | 12 Credits/M ≈ $1.2/M | — | — |
57
- | `NANO-BANANA-2-LITE`(官方渠道,按 token)图片输出 | 240 Credits/M ≈ **$24/M** | — | — |
58
-
59
- SDK 对官方渠道采用模型页当前估算 **$0.032/张**;实际账单仍按 token 结算。
60
-
61
- ## 5. 水印
62
-
63
- 所有 Lite 生成的图片含 Google **SynthID** 隐形水印(上游行为,**无法关闭**)。
64
-
65
- ## 6. 适配要点
66
-
67
- - 本项目默认**绝对不显示**:`seed`、负面提示词。本模型没有这两个字段。
68
- - **必须与 Nano Banana 2 主模型分开建模**:分辨率档位、比例集合、`n` 上限、搜索增强、计费方式全都不同,这点在代码里已经落实(`nano-banana-2-lite.model.ts` 独立文件、独立 `canonicalModelId`),文档现在也拆开,避免下次调研时把两者当成同一模型的参数分支去理解。
69
- - 「传高分辨率静默降级」和「传 `google_search` 静默无效」两处是**沉默失败**,UI 上不要暴露这些开关,否则用户会以为生效了。
70
- - SDK 用首位 `apimartNanoBanana2LiteChannel` 参数表达双渠道,默认 `standard` 保持 0.1.5 的 EXT 请求;`official` 精确映射到无 `-official` 后缀的 `gemini-3.1-flash-lite-image`,估价同步切换为 token 模型页单张估算。
71
-
72
- ## 7. 原始链接索引
73
-
74
- | 信息 | 链接 | 是否需登录 |
75
- |---|---|---|
76
- | Nano Banana Lite 图像生成 | https://docs.apimart.ai/cn/api-reference/images/gemini-3.1-flash/generation-lite | 否 |
77
- | 获取任务状态 | https://docs.apimart.ai/cn/api-reference/tasks/status | 否 |
78
- | 定价中心(搜 NANO-BANANA-2-LITE-EXT / NANO-BANANA-2-LITE) | https://apimart.ai/zh/pricing | 否 |
79
- | API Key 管理 | https://apimart.ai/keys | **是** |
1
+ # Nano Banana 2 Lite · APIMart
2
+
3
+ | 项目 | 内容 |
4
+ |---|---|
5
+ | 最后更新 | 2026-08-28 |
6
+ | 模态 | 图片 |
7
+ | 供应商 | APIMart(聚合平台) |
8
+ | 平台模型 ID | `gemini-3.1-flash-lite-image`(官方渠道)/ `gemini-3.1-flash-lite-image-ext`(常规 EXT 渠道) |
9
+ | 接口形态 | **异步任务** |
10
+ | 文档可见性 | 公开,无需登录 |
11
+ | 价格可见性 | 公开,无需登录 |
12
+ | 项目对照 | [catalog/apimart/nano-banana-2-lite.model.ts](../../../src/catalog/apimart/nano-banana-2-lite.model.ts),`canonicalModelId: 'nano-banana-2-lite'`,与 [Nano Banana 2](../Nano-Banana-2/Nano-Banana-2_APIMart.md) 是**两个独立的产品模型**,不是同一模型下的渠道/分辨率选项 |
13
+
14
+ > Nano Banana 2 Lite 是 Gemini 3.1 系列里**最快、最便宜**的图像模型,走 Developer API 的 `interactions` 端点,主打规模化低成本出图。它与 Nano Banana 2 主模型共享同一份 API 文档页(`generation-lite` 是主文档页的姊妹页),但**能力集合、限制、计费方式都不同**,本项目在代码里已经把它拆成独立模型(`canonicalModelId: nano-banana-2-lite`),本文件把它对应拆成独立文档,不再挂在 Nano Banana 2 文件里。
15
+
16
+ ## 1. 接入协议
17
+
18
+ - **Base URL**:`https://api.apimart.ai`
19
+ - **鉴权**:`Authorization: Bearer <API_KEY>`
20
+ - **提交**:`POST /v1/images/generations` → `{ code, data: [{ status: "submitted", task_id }] }`
21
+ - **查询**:`GET /v1/tasks/{task_id}`,读 `result.images`
22
+ - **回调**:支持 `webhook` 参数(base 地址,平台回调 `webhook + /callback`),桌面端不用,走轮询
23
+
24
+ ## 2. 与 Nano Banana 2 主模型的能力差异(文档明列)
25
+
26
+ | 项 | 主模型(Nano Banana 2) | Lite |
27
+ |---|---|---|
28
+ | 分辨率 | 0.5K / 1K / 2K / 4K | **仅 1K**。传 2K/4K/0.5K 会**静默降级为 1K,不报错**,前端不应暴露分辨率选项 |
29
+ | 比例 | 15 个(含 1:4 / 4:1 / 1:8 / 8:1 极端比例) | **11 个**(`auto`、`1:1`、`3:2`、`2:3`、`4:3`、`3:4`、`16:9`、`9:16`、`5:4`、`4:5`、`21:9`),**无极端比例** |
30
+ | `n` | 只能 1 | **1–4**(`n>1` 后端并发多次上游请求,按实际成功张数计费;文档建议前端固定传 1) |
31
+ | `google_search` / `google_image_search` | 支持 | **不支持**。上游未开放 Search 工具(会返回 "Search as tool is not enabled for this model"),平台适配器也不下发。**传了不报错、照常出图,但没有任何搜索增强效果** |
32
+ | `official_fallback` | 支持 | **不支持**,且无 `-official` 变体 |
33
+ | 计费 | 按张固定价 | **按 token** |
34
+ | `mask_url` 局部重绘 | 不支持 | 不支持(Gemini 系列走 aspect ratio + 参考图,不走蒙版) |
35
+
36
+ ## 3. 请求参数
37
+
38
+ | 字段 | 类型 | 必填 | 默认 | 取值与说明 |
39
+ |---|---|---|---|---|
40
+ | `model` | string | 必填 | `gemini-3.1-flash-lite-image` | 官方渠道;常规渠道使用 EXT 别名 `gemini-3.1-flash-lite-image-ext` |
41
+ | `prompt` | string | 必填 | — | 图像生成描述 |
42
+ | `size` | string | 可选 | — | 11 个比例(见第 2 节),无极端比例;`auto` 行为与主模型一致,建议始终显式指定 |
43
+ | `n` | integer | 可选 | `1` | 1–4,建议前端固定传 1 |
44
+ | `image_urls` | array | 可选 | — | 参考图,最多 **14 张**;单张 ≤ 10 MB;格式 jpeg/png/webp;支持公网 URL 或完整 Data URI |
45
+ | `nsfw_check` | boolean | 可选 | `false` | `true` 时用 `omni-moderation-latest` 预审 |
46
+ | `webhook` | string | 可选 | — | 回调基址,桌面端不使用 |
47
+
48
+ ## 4. 价格
49
+
50
+ 来源:[APIMart 定价中心](https://apimart.ai/zh/pricing)与[Nano Banana 2 模型页的 Lite 档](https://apimart.ai/zh/model/nano-banana-3-api)(2026-08-28,1 Credit ≈ $0.1)。
51
+
52
+ | 计费口径 | 我们的价格 | 官方价 | 节省 |
53
+ |---|---|---|---|
54
+ | `NANO-BANANA-2-LITE-EXT`(按张,1K) | 0.125 Credits/张 ≈ **$0.0125/张** | $0.015625 | 20% |
55
+ | `NANO-BANANA-2-LITE`(官方渠道,按 token)文本/图片输入 | 2 Credits/M ≈ $0.2/M | — | — |
56
+ | `NANO-BANANA-2-LITE`(官方渠道,按 token)文本输出 | 12 Credits/M ≈ $1.2/M | — | — |
57
+ | `NANO-BANANA-2-LITE`(官方渠道,按 token)图片输出 | 240 Credits/M ≈ **$24/M** | — | — |
58
+
59
+ SDK 对官方渠道采用模型页当前估算 **$0.032/张**;实际账单仍按 token 结算。
60
+
61
+ ## 5. 水印
62
+
63
+ 所有 Lite 生成的图片含 Google **SynthID** 隐形水印(上游行为,**无法关闭**)。
64
+
65
+ ## 6. 适配要点
66
+
67
+ - 本项目默认**绝对不显示**:`seed`、负面提示词。本模型没有这两个字段。
68
+ - **必须与 Nano Banana 2 主模型分开建模**:分辨率档位、比例集合、`n` 上限、搜索增强、计费方式全都不同,这点在代码里已经落实(`nano-banana-2-lite.model.ts` 独立文件、独立 `canonicalModelId`),文档现在也拆开,避免下次调研时把两者当成同一模型的参数分支去理解。
69
+ - 「传高分辨率静默降级」和「传 `google_search` 静默无效」两处是**沉默失败**,UI 上不要暴露这些开关,否则用户会以为生效了。
70
+ - SDK 用首位 `apimartNanoBanana2LiteChannel` 参数表达双渠道,默认 `standard` 保持 0.1.5 的 EXT 请求;`official` 精确映射到无 `-official` 后缀的 `gemini-3.1-flash-lite-image`,估价同步切换为 token 模型页单张估算。
71
+
72
+ ## 7. 原始链接索引
73
+
74
+ | 信息 | 链接 | 是否需登录 |
75
+ |---|---|---|
76
+ | Nano Banana Lite 图像生成 | https://docs.apimart.ai/cn/api-reference/images/gemini-3.1-flash/generation-lite | 否 |
77
+ | 获取任务状态 | https://docs.apimart.ai/cn/api-reference/tasks/status | 否 |
78
+ | 定价中心(搜 NANO-BANANA-2-LITE-EXT / NANO-BANANA-2-LITE) | https://apimart.ai/zh/pricing | 否 |
79
+ | API Key 管理 | https://apimart.ai/keys | **是** |
@@ -1,65 +1,65 @@
1
- # Nano Banana 2 Lite · Grsai
2
-
3
- | 项目 | 内容 |
4
- |---|---|
5
- | 最后更新 | 2026-08-26 |
6
- | 模态 | 图片 |
7
- | 供应商 | Grsai(聚合中转,详见 [Grsai 基础文档](../供应商/Grsai.md)) |
8
- | 平台模型 ID(渠道) | `nano-banana-2-lite`(只有这一个渠道,见下方排除说明) |
9
- | 接口形态 | 提交 `POST /v1/api/generate` + 轮询 `GET /v1/api/result`(新版统一接口,`replyType` 三选一) |
10
- | 文档可见性 | 公开,无需登录 |
11
- | 价格可见性 | 公开,无需登录(dashboard「模型列表」页) |
12
- | 项目当前状态 | 已接入,[catalog/grsai/nano-banana-2-lite.model.ts](../../../src/catalog/grsai/nano-banana-2-lite.model.ts),`canonicalModelId: nano-banana-2-lite` |
13
-
14
- > 本项目把 Nano Banana 2 Lite 当作独立产品模型(`canonicalModelId: nano-banana-2-lite`),与 [Nano Banana 2](../Nano-Banana-2/Nano-Banana-2_Grsai.md) 主模型分开建档,这个 Grsai 平台模型名原本记录在 Nano Banana 2 的 Grsai 文档里,现拆分到本文件,与 APIMart / KIE 的文档结构保持一致。
15
-
16
- ## 1. `nano-banana-fast` 已被明确排除,不要与本模型混淆
17
-
18
- dashboard「模型列表」页还有一个 `nano-banana-fast`,积分消耗(440/次)、价格区间(¥0.022~¥0.044/次)、能力标签都与 `nano-banana-2-lite` **完全相同**,非常容易被当成同一个模型的两个入口收进 schema。
19
-
20
- **它不是 Nano Banana 2 Lite,本项目不适配它**:`nano-banana-fast` 属于最早期「香蕉 1」世代的命名——2026-07-01 公告显示,谷歌官方下架 `gemini-2.5-flash-image`(香蕉 1)后,Grsai 下架了 `nano-banana`,`nano-banana-fast` 这个名字保留了下来并「切换底层模型」,此后实际跑在新的 Gemini 3.1 Lite 底层上,只是名字还留着旧世代的痕迹。本项目适配范围只到 Nano Banana 第 2 代与 Nano Banana Pro,不包含初代「香蕉」体系的任何遗留命名。完整排除记录见 [Grsai 基础文档 §7](../供应商/Grsai.md)。
21
-
22
- 后续调研如果发现价格/规格与 `nano-banana-2-lite` 一样接近的新名字,先去 Grsai 基础文档 §7 确认是否已经记录过,不要重复讨论是否该收进来。
23
-
24
- ## 2. 请求参数(新版统一接口)
25
-
26
- `POST /v1/api/generate`:
27
-
28
- | 字段 | 类型 | 必填 | 说明 |
29
- |---|---|---|---|
30
- | `model` | string | 必填 | `nano-banana-2-lite` |
31
- | `prompt` | string | 必填 | 提示词 |
32
- | `images` | array\<string\> | 可选 | 参考图,base64 或 URL 混填,无需单独上传 |
33
- | `aspectRatio` | string | 可选 | 通用 11 档(`auto`/`1:1`/`16:9`/`9:16`/`4:3`/`3:4`/`3:2`/`2:3`/`5:4`/`4:5`/`21:9`);极端比例(`1:4`/`4:1`/`1:8`/`8:1`)文档标注为「nano-banana-2 系列额外支持」,Lite 是否包含在内未逐渠道验证 |
34
- | `replyType` | string | 可选 | `json` / `stream` / `async` |
35
-
36
- 代码没有为本模型注册 `imageSize` 参数、也不发送该字段——dashboard 页面未给这个渠道标注分辨率档位标签,类比 APIMart/KIE 的 Lite 均固定 1K,选择不暴露而不是猜一个可能报错的值。若后续证实 Grsai 这一档确实支持可选分辨率,再补参数。
37
-
38
- ## 3. 价格
39
-
40
- 来源:[dashboard 模型列表](https://grsai.com/zh/dashboard/models)(2026-08-26 实测,未登录可见)。价格区间由「积分消耗 × 积分单价区间」得出,详见 [Grsai 基础文档 §5.1](../供应商/Grsai.md)。
41
-
42
- | 渠道 | 积分消耗 | 价格区间 | 支持分辨率 |
43
- |---|---|---|---|
44
- | `nano-banana-2-lite` | 440/次 | ¥0.022~¥0.044/次 | 未标注(推断仅默认档) |
45
-
46
- 作为对照,同为 Lite 定位的其他供应商价格:APIMart EXT 渠道 **$0.0125/张**(约¥0.09,2026-08-22 汇率粗算)、KIE **$0.02/张**(约¥0.14)。Grsai 的 ¥0.022~¥0.044 区间在同类里明显更低,与「渠道更便宜」的定位一致。
47
-
48
- ## 4. 适配要点
49
-
50
- - 本项目默认**绝对不显示**:`seed`、负面提示词。本渠道没有这两个字段。
51
- - **不要把 `nano-banana-fast` 收进本模型的渠道枚举**,它属于已排除的初代「香蕉」命名,见第 1 节与 [Grsai 基础文档 §7](../供应商/Grsai.md)。
52
- - 代码没有暴露分辨率参数(见第 2 节),本渠道上分辨率参数的真实行为(报错 / 静默降级 / 直接忽略)未实测,接入前建议先用真实任务核实是否真的可以传 `imageSize` 拿到更高分辨率。
53
- - `pricing.calculator` 固定返回区间上限(无优惠价)¥0.044。
54
- - 与 [Nano Banana 2 主模型的 Grsai 文档](../Nano-Banana-2/Nano-Banana-2_Grsai.md) 共享同一套响应结构、状态枚举、结果链接有效期等不确定项,见 [Grsai 基础文档](../供应商/Grsai.md) 第 3、8 节,不在本文件重复。
55
-
56
- ## 5. 原始链接索引
57
-
58
- | 信息 | 链接 | 是否需登录 |
59
- |---|---|---|
60
- | nano-banana 接口(新版统一生成,含渠道枚举与比例说明) | https://qmy27nhsd9.apifox.cn/452392911e0 | 否 |
61
- | 异步生成结果查询接口 | https://qmy27nhsd9.apifox.cn/452409577e0 | 否 |
62
- | Nano Banana API 旧版文档 | https://grsai.ai/zh/dashboard/documents/nano-banana | 否 |
63
- | dashboard 模型列表(当前权威价格) | https://grsai.com/zh/dashboard/models | 否 |
64
- | dashboard 公告(`nano-banana-fast` 排除依据的来源公告) | https://grsai.com/zh/dashboard/announcements | 否 |
65
- | API Key 管理 | https://grsai.ai/zh/dashboard/api-keys | **是** |
1
+ # Nano Banana 2 Lite · Grsai
2
+
3
+ | 项目 | 内容 |
4
+ |---|---|
5
+ | 最后更新 | 2026-08-26 |
6
+ | 模态 | 图片 |
7
+ | 供应商 | Grsai(聚合中转,详见 [Grsai 基础文档](../供应商/Grsai.md)) |
8
+ | 平台模型 ID(渠道) | `nano-banana-2-lite`(只有这一个渠道,见下方排除说明) |
9
+ | 接口形态 | 提交 `POST /v1/api/generate` + 轮询 `GET /v1/api/result`(新版统一接口,`replyType` 三选一) |
10
+ | 文档可见性 | 公开,无需登录 |
11
+ | 价格可见性 | 公开,无需登录(dashboard「模型列表」页) |
12
+ | 项目当前状态 | 已接入,[catalog/grsai/nano-banana-2-lite.model.ts](../../../src/catalog/grsai/nano-banana-2-lite.model.ts),`canonicalModelId: nano-banana-2-lite` |
13
+
14
+ > 本项目把 Nano Banana 2 Lite 当作独立产品模型(`canonicalModelId: nano-banana-2-lite`),与 [Nano Banana 2](../Nano-Banana-2/Nano-Banana-2_Grsai.md) 主模型分开建档,这个 Grsai 平台模型名原本记录在 Nano Banana 2 的 Grsai 文档里,现拆分到本文件,与 APIMart / KIE 的文档结构保持一致。
15
+
16
+ ## 1. `nano-banana-fast` 已被明确排除,不要与本模型混淆
17
+
18
+ dashboard「模型列表」页还有一个 `nano-banana-fast`,积分消耗(440/次)、价格区间(¥0.022~¥0.044/次)、能力标签都与 `nano-banana-2-lite` **完全相同**,非常容易被当成同一个模型的两个入口收进 schema。
19
+
20
+ **它不是 Nano Banana 2 Lite,本项目不适配它**:`nano-banana-fast` 属于最早期「香蕉 1」世代的命名——2026-07-01 公告显示,谷歌官方下架 `gemini-2.5-flash-image`(香蕉 1)后,Grsai 下架了 `nano-banana`,`nano-banana-fast` 这个名字保留了下来并「切换底层模型」,此后实际跑在新的 Gemini 3.1 Lite 底层上,只是名字还留着旧世代的痕迹。本项目适配范围只到 Nano Banana 第 2 代与 Nano Banana Pro,不包含初代「香蕉」体系的任何遗留命名。完整排除记录见 [Grsai 基础文档 §7](../供应商/Grsai.md)。
21
+
22
+ 后续调研如果发现价格/规格与 `nano-banana-2-lite` 一样接近的新名字,先去 Grsai 基础文档 §7 确认是否已经记录过,不要重复讨论是否该收进来。
23
+
24
+ ## 2. 请求参数(新版统一接口)
25
+
26
+ `POST /v1/api/generate`:
27
+
28
+ | 字段 | 类型 | 必填 | 说明 |
29
+ |---|---|---|---|
30
+ | `model` | string | 必填 | `nano-banana-2-lite` |
31
+ | `prompt` | string | 必填 | 提示词 |
32
+ | `images` | array\<string\> | 可选 | 参考图,base64 或 URL 混填,无需单独上传 |
33
+ | `aspectRatio` | string | 可选 | 通用 11 档(`auto`/`1:1`/`16:9`/`9:16`/`4:3`/`3:4`/`3:2`/`2:3`/`5:4`/`4:5`/`21:9`);极端比例(`1:4`/`4:1`/`1:8`/`8:1`)文档标注为「nano-banana-2 系列额外支持」,Lite 是否包含在内未逐渠道验证 |
34
+ | `replyType` | string | 可选 | `json` / `stream` / `async` |
35
+
36
+ 代码没有为本模型注册 `imageSize` 参数、也不发送该字段——dashboard 页面未给这个渠道标注分辨率档位标签,类比 APIMart/KIE 的 Lite 均固定 1K,选择不暴露而不是猜一个可能报错的值。若后续证实 Grsai 这一档确实支持可选分辨率,再补参数。
37
+
38
+ ## 3. 价格
39
+
40
+ 来源:[dashboard 模型列表](https://grsai.com/zh/dashboard/models)(2026-08-26 实测,未登录可见)。价格区间由「积分消耗 × 积分单价区间」得出,详见 [Grsai 基础文档 §5.1](../供应商/Grsai.md)。
41
+
42
+ | 渠道 | 积分消耗 | 价格区间 | 支持分辨率 |
43
+ |---|---|---|---|
44
+ | `nano-banana-2-lite` | 440/次 | ¥0.022~¥0.044/次 | 未标注(推断仅默认档) |
45
+
46
+ 作为对照,同为 Lite 定位的其他供应商价格:APIMart EXT 渠道 **$0.0125/张**(约¥0.09,2026-08-22 汇率粗算)、KIE **$0.02/张**(约¥0.14)。Grsai 的 ¥0.022~¥0.044 区间在同类里明显更低,与「渠道更便宜」的定位一致。
47
+
48
+ ## 4. 适配要点
49
+
50
+ - 本项目默认**绝对不显示**:`seed`、负面提示词。本渠道没有这两个字段。
51
+ - **不要把 `nano-banana-fast` 收进本模型的渠道枚举**,它属于已排除的初代「香蕉」命名,见第 1 节与 [Grsai 基础文档 §7](../供应商/Grsai.md)。
52
+ - 代码没有暴露分辨率参数(见第 2 节),本渠道上分辨率参数的真实行为(报错 / 静默降级 / 直接忽略)未实测,接入前建议先用真实任务核实是否真的可以传 `imageSize` 拿到更高分辨率。
53
+ - `pricing.calculator` 固定返回区间上限(无优惠价)¥0.044。
54
+ - 与 [Nano Banana 2 主模型的 Grsai 文档](../Nano-Banana-2/Nano-Banana-2_Grsai.md) 共享同一套响应结构、状态枚举、结果链接有效期等不确定项,见 [Grsai 基础文档](../供应商/Grsai.md) 第 3、8 节,不在本文件重复。
55
+
56
+ ## 5. 原始链接索引
57
+
58
+ | 信息 | 链接 | 是否需登录 |
59
+ |---|---|---|
60
+ | nano-banana 接口(新版统一生成,含渠道枚举与比例说明) | https://qmy27nhsd9.apifox.cn/452392911e0 | 否 |
61
+ | 异步生成结果查询接口 | https://qmy27nhsd9.apifox.cn/452409577e0 | 否 |
62
+ | Nano Banana API 旧版文档 | https://grsai.ai/zh/dashboard/documents/nano-banana | 否 |
63
+ | dashboard 模型列表(当前权威价格) | https://grsai.com/zh/dashboard/models | 否 |
64
+ | dashboard 公告(`nano-banana-fast` 排除依据的来源公告) | https://grsai.com/zh/dashboard/announcements | 否 |
65
+ | API Key 管理 | https://grsai.ai/zh/dashboard/api-keys | **是** |
@@ -1,64 +1,64 @@
1
- # Nano Banana 2 Lite · KIE
2
-
3
- | 项目 | 内容 |
4
- |---|---|
5
- | 最后更新 | 2026-08-26 |
6
- | 模态 | 图片 |
7
- | 供应商 | KIE.ai(聚合平台) |
8
- | 平台模型 ID | `nano-banana-2-lite` |
9
- | 接口形态 | **异步任务**(`createTask` + `recordInfo`) |
10
- | 文档可见性 | 公开,无需登录 |
11
- | 价格可见性 | 公开,无需登录 |
12
- | 项目对照 | [catalog/kie/nano-banana-2-lite.model.ts](../../../src/catalog/kie/nano-banana-2-lite.model.ts),`canonicalModelId: 'nano-banana-2-lite'`,与 [Nano Banana 2](../Nano-Banana-2/Nano-Banana-2_KIE.md) 是**两个独立的产品模型**,不是同一模型下的分辨率选项 |
13
-
14
- ## 1. 接入协议
15
-
16
- - **Base URL**:`https://api.kie.ai`
17
- - **鉴权**:`Authorization: Bearer <API_KEY>`
18
- - **提交**:`POST /api/v1/jobs/createTask`,体为 `{ model: 'nano-banana-2-lite', input }`
19
- - **查询**:`GET /api/v1/jobs/recordInfo?taskId=...`
20
- - **结果**:`JSON.parse(resultJson)` → `{ resultUrls: [...] }`
21
-
22
- ## 2. 与 Nano Banana 2 主模型的差异
23
-
24
- | 字段 | 主模型(`nano-banana-2`) | Lite(`nano-banana-2-lite`) |
25
- |---|---|---|
26
- | 参考图字段名 | `input.image_input` | **`input.image_urls`**(字段名不同,容易写错) |
27
- | 参考图数量上限 | 14 张 | **10 张** |
28
- | `input.resolution` | 支持(`1K`/`2K`/`4K`) | **没有** |
29
- | `input.output_format` | 支持(`jpg`/`png`) | **没有** |
30
- | `input.aspect_ratio` 必填性 | 可选,默认 `auto` | **必填**,默认 `auto` |
31
-
32
- ## 3. 请求参数
33
-
34
- | 字段 | 类型 | 必填 | 默认 | 取值与说明 |
35
- |---|---|---|---|---|
36
- | `input.prompt` | string | 必填 | — | 最多 20000 字符 |
37
- | `input.aspect_ratio` | string | **必填** | `auto` | 15 个取值:`1:1`、`2:3`、`3:2`、`1:4`、`4:1`、`3:4`、`4:3`、`4:5`、`5:4`、`1:8`、`8:1`、`9:16`、`16:9`、`21:9`、`auto`(含极端比例,与主模型一致) |
38
- | `input.image_urls` | array | 可选 | `[]` | 最多 **10 张**。纯文生图可传空数组或不传。支持 `image/jpeg`、`image/png`、`image/webp`;单张 ≤ 30 MB |
39
-
40
- ## 4. 响应结构
41
-
42
- `state=success` 后 `JSON.parse(resultJson)` → `{ "resultUrls": ["https://..."] }`,与主模型完全一致。
43
-
44
- ## 5. 价格
45
-
46
- 来源:[KIE 定价页](https://kie.ai/pricing)(2026-08-22 读取,搜索 `nano banana`;1 Credit = $0.005)。定价页**未单独列出 `nano-banana-2-lite` 条目**,当前代码固定价 **$0.02/张**(见 [catalog/kie/nano-banana-2-lite.model.ts](../../../src/catalog/kie/nano-banana-2-lite.model.ts) 的 `pricing.calculator`),这个数字未在定价页找到直接对应来源,接入前建议用真实任务核实一次实际扣费。
47
-
48
- ## 6. 适配要点
49
-
50
- - 本项目默认**绝对不显示**:`seed`、负面提示词。本模型没有这两个字段。
51
- - **参考图字段名与主模型不同**(`image_urls` vs `image_input`),数量上限也不同(10 vs 14),是最容易写错的一处。
52
- - 没有 `resolution`、没有 `output_format`,不要照抄主模型的参数面板。
53
- - `aspect_ratio` 在 Lite 上是必填(虽然有默认值 `auto`),建模时仍要按必填处理请求体拼装。
54
- - `resultJson` 是 JSON 字符串,必须二次 parse,与主模型一致。
55
-
56
- ## 7. 原始链接索引
57
-
58
- | 信息 | 链接 | 是否需登录 |
59
- |---|---|---|
60
- | Nano Banana 2 Lite | https://docs.kie.ai/cn/market/google/nano-banana-2-lite | 否 |
61
- | 获取任务详情 | https://docs.kie.ai/cn/market/common/get-task-detail | 否 |
62
- | 通用 API 快速入门 | https://docs.kie.ai/cn/common-api/quickstart | 否 |
63
- | 定价页(搜 `nano banana`,未见独立 Lite 条目) | https://kie.ai/pricing | 否 |
64
- | API Key 管理 | https://kie.ai/api-key | **是** |
1
+ # Nano Banana 2 Lite · KIE
2
+
3
+ | 项目 | 内容 |
4
+ |---|---|
5
+ | 最后更新 | 2026-08-26 |
6
+ | 模态 | 图片 |
7
+ | 供应商 | KIE.ai(聚合平台) |
8
+ | 平台模型 ID | `nano-banana-2-lite` |
9
+ | 接口形态 | **异步任务**(`createTask` + `recordInfo`) |
10
+ | 文档可见性 | 公开,无需登录 |
11
+ | 价格可见性 | 公开,无需登录 |
12
+ | 项目对照 | [catalog/kie/nano-banana-2-lite.model.ts](../../../src/catalog/kie/nano-banana-2-lite.model.ts),`canonicalModelId: 'nano-banana-2-lite'`,与 [Nano Banana 2](../Nano-Banana-2/Nano-Banana-2_KIE.md) 是**两个独立的产品模型**,不是同一模型下的分辨率选项 |
13
+
14
+ ## 1. 接入协议
15
+
16
+ - **Base URL**:`https://api.kie.ai`
17
+ - **鉴权**:`Authorization: Bearer <API_KEY>`
18
+ - **提交**:`POST /api/v1/jobs/createTask`,体为 `{ model: 'nano-banana-2-lite', input }`
19
+ - **查询**:`GET /api/v1/jobs/recordInfo?taskId=...`
20
+ - **结果**:`JSON.parse(resultJson)` → `{ resultUrls: [...] }`
21
+
22
+ ## 2. 与 Nano Banana 2 主模型的差异
23
+
24
+ | 字段 | 主模型(`nano-banana-2`) | Lite(`nano-banana-2-lite`) |
25
+ |---|---|---|
26
+ | 参考图字段名 | `input.image_input` | **`input.image_urls`**(字段名不同,容易写错) |
27
+ | 参考图数量上限 | 14 张 | **10 张** |
28
+ | `input.resolution` | 支持(`1K`/`2K`/`4K`) | **没有** |
29
+ | `input.output_format` | 支持(`jpg`/`png`) | **没有** |
30
+ | `input.aspect_ratio` 必填性 | 可选,默认 `auto` | **必填**,默认 `auto` |
31
+
32
+ ## 3. 请求参数
33
+
34
+ | 字段 | 类型 | 必填 | 默认 | 取值与说明 |
35
+ |---|---|---|---|---|
36
+ | `input.prompt` | string | 必填 | — | 最多 20000 字符 |
37
+ | `input.aspect_ratio` | string | **必填** | `auto` | 15 个取值:`1:1`、`2:3`、`3:2`、`1:4`、`4:1`、`3:4`、`4:3`、`4:5`、`5:4`、`1:8`、`8:1`、`9:16`、`16:9`、`21:9`、`auto`(含极端比例,与主模型一致) |
38
+ | `input.image_urls` | array | 可选 | `[]` | 最多 **10 张**。纯文生图可传空数组或不传。支持 `image/jpeg`、`image/png`、`image/webp`;单张 ≤ 30 MB |
39
+
40
+ ## 4. 响应结构
41
+
42
+ `state=success` 后 `JSON.parse(resultJson)` → `{ "resultUrls": ["https://..."] }`,与主模型完全一致。
43
+
44
+ ## 5. 价格
45
+
46
+ 来源:[KIE 定价页](https://kie.ai/pricing)(2026-08-22 读取,搜索 `nano banana`;1 Credit = $0.005)。定价页**未单独列出 `nano-banana-2-lite` 条目**,当前代码固定价 **$0.02/张**(见 [catalog/kie/nano-banana-2-lite.model.ts](../../../src/catalog/kie/nano-banana-2-lite.model.ts) 的 `pricing.calculator`),这个数字未在定价页找到直接对应来源,接入前建议用真实任务核实一次实际扣费。
47
+
48
+ ## 6. 适配要点
49
+
50
+ - 本项目默认**绝对不显示**:`seed`、负面提示词。本模型没有这两个字段。
51
+ - **参考图字段名与主模型不同**(`image_urls` vs `image_input`),数量上限也不同(10 vs 14),是最容易写错的一处。
52
+ - 没有 `resolution`、没有 `output_format`,不要照抄主模型的参数面板。
53
+ - `aspect_ratio` 在 Lite 上是必填(虽然有默认值 `auto`),建模时仍要按必填处理请求体拼装。
54
+ - `resultJson` 是 JSON 字符串,必须二次 parse,与主模型一致。
55
+
56
+ ## 7. 原始链接索引
57
+
58
+ | 信息 | 链接 | 是否需登录 |
59
+ |---|---|---|
60
+ | Nano Banana 2 Lite | https://docs.kie.ai/cn/market/google/nano-banana-2-lite | 否 |
61
+ | 获取任务详情 | https://docs.kie.ai/cn/market/common/get-task-detail | 否 |
62
+ | 通用 API 快速入门 | https://docs.kie.ai/cn/common-api/quickstart | 否 |
63
+ | 定价页(搜 `nano banana`,未见独立 Lite 条目) | https://kie.ai/pricing | 否 |
64
+ | API Key 管理 | https://kie.ai/api-key | **是** |
@@ -0,0 +1,35 @@
1
+ # Nano Banana 2.1 — APIMart
2
+
3
+ 采集日期:2026-10-12。BrowserOS neo 公开页面,只读;没有登录、读取凭据或发起生成。
4
+
5
+ ## 请求与计价契约
6
+
7
+ Base URL `https://api.apimart.ai`;POST `/v1/images/generations`,Bearer 鉴权。官方 model `gemini-nano-banana-2.1`、Ext `gemini-nano-banana-2.1-ext`。`prompt` 必填 string;`size` 可选,默认 auto,支持 1:1/2:3/3:2/1:4/4:1/3:4/4:3/4:5/5:4/1:8/8:1/9:16/16:9/21:9;`resolution` 1K(默认)/2K/4K。Ext 的 1:4/4:1/1:8/8:1 仅 1K。`n` 官方整数 1–4(默认1),Ext 仅1;`image_urls` 可选 string[],数量未声明,单张20MB,Ext总计50MB。`official_fallback` Ext可选 boolean,默认false,开启后转官方须按Token计费;本实现固定false,避免渠道切换与估价失配。`webhook` 未接入,使用正式共享轮询服务。
8
+
9
+ 价格:https://apimart.ai/zh/model/nano-banana-2-1 。Ext 1K/2K/4K 为 $0.020/$0.025/$0.030 每张。官方按实际Token结算,模型卡金卡档输出图像参考 $0.02688/$0.04032/$0.09072;仅作输出估算,输入与思考另计,不能承诺按张固定价或把会员折扣推成全账号价格。每个输出都即时下载;营销页72小时与任务字段`expires_at`/接口24小时有差异,以实际有效期字段为准。
10
+
11
+ ## 事件契约矩阵
12
+
13
+ | 事件/状态 | 传输形态 | 前置状态 | 字段路径与类型(必需性) | 缺省/空值语义 | 合法下一状态 | 应用输出 | 副作用与终态 | 连接生命周期 |
14
+ |---|---|---|---|---|---|---|---|---|
15
+ | 提交响应 | POST /v1/images/generations;GET /v1/tasks/{id} | 未提交 | task_id:string(提交必需);status:string(查询必需);result.images[].url:string[](成功必需) | 缺标识且缺有效媒体明确报错;不自动重提 | pending/processing/completed | pending任务标识或有效同步结果 | 保存可恢复查询的标识;仅提交一次 | 单次HTTP结束 |
16
+ | pending | 状态查询JSON | 同一任务已提交/待处理 | task_id:string(提交必需);status:string(查询必需);result.images[].url:string[](成功必需) | 成功结果必需;未完成可省略result,不能用缺结果判断失败 | pending/processing/completed/failed | pending,无媒体输出 | 继续同一任务查询,非终态 | 每次HTTP结束,间隔后重查 |
17
+ | processing | 状态查询JSON | 同一任务已提交/待处理 | task_id:string(提交必需);status:string(查询必需);result.images[].url:string[](成功必需) | 成功结果必需;未完成可省略result,不能用缺结果判断失败 | pending/processing/completed/failed | pending,无媒体输出 | 继续同一任务查询,非终态 | 每次HTTP结束,间隔后重查 |
18
+ | completed | 状态查询JSON | 同一任务已提交/待处理 | task_id:string(提交必需);status:string(查询必需);result.images[].url:string[](成功必需) | 成功结果必需;未完成可省略result,不能用缺结果判断失败;空成功终态是负例,不是合法成功 | 终态 | 全部结果URL,不裁剪 | 停止轮询,释放计时器/abort监听 | HTTP结束 |
19
+ | failed | 失败结果JSON/HTTP错误 | 同一任务已提交/待处理 | 错误字段文案可省略;失败状态/结果错误必须明确 | 可无媒体;错误文案缺省使用供应商失败说明 | 终态 | 统一错误,无媒体 | 停止轮询,释放计时器/abort监听 | HTTP结束 |
20
+
21
+ 不变量:提交必须获得有效任务标识或同步有效结果。仅任务标识不能充当有效final;结果数量不擅自裁剪。重复待处理状态合法;乱序、终态后修改、先终态后另发结果的官方保证未说明。可凭原任务标识重新查询,不自动重提扣费请求。取消使用本地AbortSignal释放轮询与监听;除Fal官方队列取消接口外,供应商是否停止云端扣费未说明,本批不改远端取消实现。网络断开及查询超时使用已有统一错误/重试与恢复机制,不写第二套轮询或日志。
22
+
23
+ ## Fixture 与验证
24
+
25
+ `tests/fixtures/nano-banana-2.1/`按页面JSON示例留存官方字面内容(URL/ID不可联网替换),字段表构造另标,负例独立标synthetic-negative。请求、枚举、数量边界、价格及四渠道全部结果/空终态/错误/取消由精确测试覆盖;断牙验证临时移除APIMart空结果拒绝不变量并确认失败后恢复。
26
+
27
+ ## 选型与能力覆盖
28
+
29
+ 复用现有供应商adapter、共享轮询和上传服务;无新网络库或自研协议。模型差异写catalog,中文/英文与渠道联动写presentation;现有通用模型发现与生成操作覆盖本批,属于已有能力的数据扩充,无需专用Agent工具。
30
+
31
+ ## 原始链接索引
32
+
33
+ - [请求契约](https://docs.apimart.ai/cn/api-reference/images/gemini-nano-banana-2.1/generation.md):无需登录。
34
+ - [轮询/队列契约](https://docs.apimart.ai/cn/api-reference/tasks/status):无需登录。
35
+ - 本文内模型页/公告/价格链接:无需登录;真实生成与账单另需用户授权,未验。
@@ -0,0 +1,37 @@
1
+ # Nano Banana 2.1 — Fal
2
+
3
+ 采集日期:2026-10-12。BrowserOS neo 公开页面,只读;没有登录、读取凭据或发起生成。
4
+
5
+ ## 请求与计价契约
6
+
7
+ Base URL `https://queue.fal.run`,POST `/google/nano-banana-2.1`(生成)或 `/google/nano-banana-2.1/edit`(编辑),`Authorization: Key ...`。编辑官方schema:https://fal.ai/models/google/nano-banana-2.1/edit/llms.txt 。`prompt`必填string;`num_images`整数1–4、默认1;`aspect_ratio`默认auto,14种比例同APIMart;`resolution`默认1K,1K/2K/4K;`output_format`png(默认)/jpeg/webp;`safety_tolerance`字符串1–6、默认4(本实现省略使用默认);`sync_mode`默认false(省略,使用queue);`system_prompt`可选string默认空;`limit_generations`默认true;`enable_web_search`默认false;`thinking_level`minimal/medium(默认)/high,不能发送off。
8
+
9
+ 编辑额外接受`image_urls` string[],官方未给数量上限;有`video_url`或`pdf_url`时可以不传图。视频单份15MB、PDF单份15MB;PDF走file-upload与官方供应商上传,不提供URL输入框。没有audio_url。无素材走生成;图片、视频或PDF任一种即编辑。
10
+
11
+ 价格与官方折算:https://fal.ai/models/google/nano-banana-2.1 。每百万输入文本/图片Token $1.764,文字/思考输出$8.823,图像输出$35.294;图像输出约1120/1680/3780Token。官方代表性成本(100Token短提示词、medium思考)1K/2K/4K约$0.040/$0.059/$0.134;两张1K参考图增加约$0.004。calculator用该官方代表值及每参考图约$0.002,不作为固定单张账单。搜索、思考没有固定附加费,只改变实际Token。视频/PDF、长提示词、搜索与high思考可能超出代表估价,实际usage为准。
12
+
13
+ ## 事件契约矩阵
14
+
15
+ | 事件/状态 | 传输形态 | 前置状态 | 字段路径与类型(必需性) | 缺省/空值语义 | 合法下一状态 | 应用输出 | 副作用与终态 | 连接生命周期 |
16
+ |---|---|---|---|---|---|---|---|---|
17
+ | 提交响应 | POST queue端点;GET status_url;完成后GET response_url | 未提交 | request_id或status_url:string(提交至少其一);status:string(查询必需);images[].url:string(成功结果必需) | 缺标识且缺有效媒体明确报错;不自动重提 | IN_QUEUE/IN_PROGRESS/COMPLETED | pending任务标识或有效同步结果 | 保存可恢复查询的标识;仅提交一次 | 单次HTTP结束 |
18
+ | IN_QUEUE | 状态查询JSON | 同一任务已提交/待处理 | request_id或status_url:string(提交至少其一);status:string(查询必需);images[].url:string(成功结果必需) | 状态完成不等于有效图像;需要额外结果请求。FAILED/ERROR只属共享parser防御分支,官方队列文档未列为状态 | IN_QUEUE/IN_PROGRESS/COMPLETED/COMPLETED后结果错误/HTTP错误 | pending,无媒体输出 | 继续同一任务查询,非终态 | 每次HTTP结束,间隔后重查 |
19
+ | IN_PROGRESS | 状态查询JSON | 同一任务已提交/待处理 | request_id或status_url:string(提交至少其一);status:string(查询必需);images[].url:string(成功结果必需) | 状态完成不等于有效图像;需要额外结果请求。FAILED/ERROR只属共享parser防御分支,官方队列文档未列为状态 | IN_QUEUE/IN_PROGRESS/COMPLETED/COMPLETED后结果错误/HTTP错误 | pending,无媒体输出 | 继续同一任务查询,非终态 | 每次HTTP结束,间隔后重查 |
20
+ | COMPLETED | 状态查询JSON与额外结果JSON | 同一任务已提交/待处理 | request_id或status_url:string(提交至少其一);status:string(查询必需);images[].url:string(成功结果必需) | 状态完成不等于有效图像;需要额外结果请求。FAILED/ERROR只属共享parser防御分支,官方队列文档未列为状态;空成功终态是负例,不是合法成功 | 终态 | 全部结果URL,不裁剪 | 停止轮询,释放计时器/abort监听 | HTTP结束 |
21
+ | COMPLETED后结果错误/HTTP错误 | 失败结果JSON/HTTP错误 | 同一任务已提交/待处理 | 错误字段文案可省略;失败状态/结果错误必须明确 | 可无媒体;错误文案缺省使用供应商失败说明 | 终态 | 统一错误,无媒体 | 停止轮询,释放计时器/abort监听 | HTTP结束 |
22
+
23
+ 不变量:提交必须获得有效任务标识或同步有效结果。仅任务标识不能充当有效final;结果数量不擅自裁剪。重复待处理状态合法;乱序、终态后修改、先终态后另发结果的官方保证未说明。Fal COMPLETED需另取结果,不把状态请求自身当图像。可凭原任务标识重新查询,不自动重提扣费请求。取消使用本地AbortSignal释放轮询与监听;除Fal官方队列取消接口外,供应商是否停止云端扣费未说明,本批不改远端取消实现。网络断开及查询超时使用已有统一错误/重试与恢复机制,不写第二套轮询或日志。
24
+
25
+ ## Fixture 与验证
26
+
27
+ `tests/fixtures/nano-banana-2.1/`按页面JSON示例留存官方字面内容(URL/ID不可联网替换),字段表构造另标,负例独立标synthetic-negative。请求、枚举、数量边界、价格及四渠道全部结果/空终态/错误/取消由精确测试覆盖;断牙验证临时移除APIMart空结果拒绝不变量并确认失败后恢复。
28
+
29
+ ## 选型与能力覆盖
30
+
31
+ 复用现有供应商adapter、共享轮询和上传服务;无新网络库或自研协议。模型差异写catalog,中文/英文与渠道联动写presentation;现有通用模型发现与生成操作覆盖本批,属于已有能力的数据扩充,无需专用Agent工具。
32
+
33
+ ## 原始链接索引
34
+
35
+ - [请求契约](https://fal.ai/models/google/nano-banana-2.1/llms.txt):无需登录。
36
+ - [轮询/队列契约](https://fal.ai/docs/documentation/model-apis/inference/queue):无需登录。
37
+ - 本文内模型页/公告/价格链接:无需登录;真实生成与账单另需用户授权,未验。
@@ -0,0 +1,35 @@
1
+ # Nano Banana 2.1 — Grsai
2
+
3
+ 采集日期:2026-10-12。BrowserOS neo 公开页面,只读;没有登录、读取凭据或发起生成。
4
+
5
+ ## 请求与计价契约
6
+
7
+ Base URL `https://grsaiapi.com`,国内`https://grsai.dakka.com.cn`。POST `/v1/api/generate`,Bearer鉴权。model `nano-banana-2.1`由2026-10-07官方公告确认:https://grsai.ai/zh/dashboard/announcements ,公告明确接口不变,只替换model(旧接口枚举尚未列新版,记录该滞后,不拿旧模型能力推断新版)。`prompt`必填;`images`可选string[],URL/base64,数量未声明;`aspectRatio`默认省略/auto,10种常规比例与Nano2系列4种极端比例;`imageSize`1K/2K/4K。`replyType`json/stream/async,本宿主共享provider固定async,GET `/v1/api/result?id=...`恢复查询。
8
+
9
+ 价格:https://grsai.ai/zh/dashboard/models :各分辨率1200积分/次,页面套餐参考汇率20000积分/元约¥0.06;沿既有基础充值档10000积分/元估算¥0.12,不将优惠套餐价格当作所有账号实扣。原API文档同步成功例用于parser对照;async提交running与400 failed也按官方折叠响应页补采字面样本;多结果状态链另按字段表构造,不冒充真实生成。
10
+
11
+ ## 事件契约矩阵
12
+
13
+ | 事件/状态 | 传输形态 | 前置状态 | 字段路径与类型(必需性) | 缺省/空值语义 | 合法下一状态 | 应用输出 | 副作用与终态 | 连接生命周期 |
14
+ |---|---|---|---|---|---|---|---|---|
15
+ | 提交响应 | POST /v1/api/generate;GET /v1/api/result?id=... | 未提交 | id:string(提交必需);status:string(查询必需);results[].url:string(成功必需) | 缺标识且缺有效媒体明确报错;不自动重提 | running/succeeded | pending任务标识或有效同步结果 | 保存可恢复查询的标识;仅提交一次 | 单次HTTP结束 |
16
+ | running | 状态查询JSON | 同一任务已提交/待处理 | id:string(提交必需);status:string(查询必需);results[].url:string(成功必需) | 未完成可省略results;成功必须有非空媒体URL,空结果明确失败 | running/succeeded/failed/violation | pending,无媒体输出 | 继续同一任务查询,非终态 | 每次HTTP结束,间隔后重查 |
17
+ | succeeded | 状态查询JSON | 同一任务已提交/待处理 | id:string(提交必需);status:string(查询必需);results[].url:string(成功必需) | 未完成可省略results;成功必须有非空媒体URL,空结果明确失败;空成功终态是负例,不是合法成功 | 终态 | 全部结果URL,不裁剪 | 停止轮询,释放计时器/abort监听 | HTTP结束 |
18
+ | failed | 失败结果JSON/HTTP错误 | 同一任务已提交/待处理 | 错误字段文案可省略;失败状态/结果错误必须明确 | 可无媒体;错误文案缺省使用供应商失败说明 | 终态 | 统一错误,无媒体 | 停止轮询,释放计时器/abort监听 | HTTP结束 |
19
+ | violation | 审核违规结果JSON | 同一任务已提交/待处理 | 错误字段文案可省略;失败状态/结果错误必须明确 | 可无媒体;错误文案缺省使用供应商失败说明 | 终态 | 统一错误,无媒体 | 停止轮询,释放计时器/abort监听 | HTTP结束 |
20
+
21
+ 不变量:提交必须获得有效任务标识或同步有效结果。仅任务标识不能充当有效final;结果数量不擅自裁剪。重复待处理状态合法;乱序、终态后修改、先终态后另发结果的官方保证未说明。可凭原任务标识重新查询,不自动重提扣费请求。取消使用本地AbortSignal释放轮询与监听;除Fal官方队列取消接口外,供应商是否停止云端扣费未说明,本批不改远端取消实现。网络断开及查询超时使用已有统一错误/重试与恢复机制,不写第二套轮询或日志。
22
+
23
+ ## Fixture 与验证
24
+
25
+ `tests/fixtures/nano-banana-2.1/`按页面JSON示例留存官方字面内容(URL/ID不可联网替换),字段表构造另标,负例独立标synthetic-negative。请求、枚举、数量边界、价格及四渠道全部结果/空终态/错误/取消由精确测试覆盖;断牙验证临时移除APIMart空结果拒绝不变量并确认失败后恢复。
26
+
27
+ ## 选型与能力覆盖
28
+
29
+ 复用现有供应商adapter、共享轮询和上传服务;无新网络库或自研协议。模型差异写catalog,中文/英文与渠道联动写presentation;现有通用模型发现与生成操作覆盖本批,属于已有能力的数据扩充,无需专用Agent工具。
30
+
31
+ ## 原始链接索引
32
+
33
+ - [请求契约](https://qmy27nhsd9.apifox.cn/452392911e0):无需登录。
34
+ - [轮询/队列契约](https://qmy27nhsd9.apifox.cn/452409577e0):无需登录。
35
+ - 本文内模型页/公告/价格链接:无需登录;真实生成与账单另需用户授权,未验。
@@ -0,0 +1,36 @@
1
+ # Nano Banana 2.1 — KIE
2
+
3
+ 采集日期:2026-10-12。BrowserOS neo 公开页面,只读;没有登录、读取凭据或发起生成。
4
+
5
+ ## 请求与计价契约
6
+
7
+ Base URL `https://api.kie.ai`;POST `/api/v1/jobs/createTask`,Bearer鉴权;model `nano-banana-2-1`,`input` object。`prompt` 必填string,最多20000字符,超长明确报错,不截断。`image_input` 可选string[],最多10张,jpeg/png/webp,单张30MB。`aspect_ratio` 默认auto,14种比例同APIMart;`resolution` 默认1K,1K/2K/4K;`output_format` 默认jpg,jpg/png。没有n、搜索、思考、遮罩字段,营销介绍的mask能力不能凭介绍新增请求字段。`callBackUrl` 可选但宿主不使用,复用轮询。
8
+
9
+ 价格:https://kie.ai/nano-banana-2-1 :1K/2K/4K 分别4/6/9 credits,即 $0.020/$0.030/$0.045 每张。GET `/api/v1/jobs/recordInfo?taskId=...`,HTTP200仍须检查code;成功`data.resultJson`为JSON字符串,媒体位于`resultUrls`数组。结果保留14天,宿主即时下载。
10
+
11
+ ## 事件契约矩阵
12
+
13
+ | 事件/状态 | 传输形态 | 前置状态 | 字段路径与类型(必需性) | 缺省/空值语义 | 合法下一状态 | 应用输出 | 副作用与终态 | 连接生命周期 |
14
+ |---|---|---|---|---|---|---|---|---|
15
+ | 提交响应 | POST /api/v1/jobs/createTask;GET /api/v1/jobs/recordInfo?taskId=... | 未提交 | data.taskId:string(提交必需);data.state:string(查询必需);data.resultJson:string(成功必需,内含resultUrls:string[]) | 缺标识且缺有效媒体明确报错;不自动重提 | waiting/queuing/generating/success | pending任务标识或有效同步结果 | 保存可恢复查询的标识;仅提交一次 | 单次HTTP结束 |
16
+ | waiting | 状态查询JSON | 同一任务已提交/待处理 | data.taskId:string(提交必需);data.state:string(查询必需);data.resultJson:string(成功必需,内含resultUrls:string[]) | 失败时resultJson可为null或空串;成功时必须解析出非空结果 | waiting/queuing/generating/success/fail | pending,无媒体输出 | 继续同一任务查询,非终态 | 每次HTTP结束,间隔后重查 |
17
+ | queuing | 状态查询JSON | 同一任务已提交/待处理 | data.taskId:string(提交必需);data.state:string(查询必需);data.resultJson:string(成功必需,内含resultUrls:string[]) | 失败时resultJson可为null或空串;成功时必须解析出非空结果 | waiting/queuing/generating/success/fail | pending,无媒体输出 | 继续同一任务查询,非终态 | 每次HTTP结束,间隔后重查 |
18
+ | generating | 状态查询JSON | 同一任务已提交/待处理 | data.taskId:string(提交必需);data.state:string(查询必需);data.resultJson:string(成功必需,内含resultUrls:string[]) | 失败时resultJson可为null或空串;成功时必须解析出非空结果 | waiting/queuing/generating/success/fail | pending,无媒体输出 | 继续同一任务查询,非终态 | 每次HTTP结束,间隔后重查 |
19
+ | success | 状态查询JSON | 同一任务已提交/待处理 | data.taskId:string(提交必需);data.state:string(查询必需);data.resultJson:string(成功必需,内含resultUrls:string[]) | 失败时resultJson可为null或空串;成功时必须解析出非空结果;空成功终态是负例,不是合法成功 | 终态 | 全部结果URL,不裁剪 | 停止轮询,释放计时器/abort监听 | HTTP结束 |
20
+ | fail | 失败结果JSON/HTTP错误 | 同一任务已提交/待处理 | 错误字段文案可省略;失败状态/结果错误必须明确 | 可无媒体;错误文案缺省使用供应商失败说明 | 终态 | 统一错误,无媒体 | 停止轮询,释放计时器/abort监听 | HTTP结束 |
21
+
22
+ 不变量:提交必须获得有效任务标识或同步有效结果。仅任务标识不能充当有效final;结果数量不擅自裁剪。重复待处理状态合法;乱序、终态后修改、先终态后另发结果的官方保证未说明。可凭原任务标识重新查询,不自动重提扣费请求。取消使用本地AbortSignal释放轮询与监听;除Fal官方队列取消接口外,供应商是否停止云端扣费未说明,本批不改远端取消实现。网络断开及查询超时使用已有统一错误/重试与恢复机制,不写第二套轮询或日志。
23
+
24
+ ## Fixture 与验证
25
+
26
+ `tests/fixtures/nano-banana-2.1/`按页面JSON示例留存官方字面内容(URL/ID不可联网替换),字段表构造另标,负例独立标synthetic-negative。请求、枚举、数量边界、价格及四渠道全部结果/空终态/错误/取消由精确测试覆盖;断牙验证临时移除APIMart空结果拒绝不变量并确认失败后恢复。
27
+
28
+ ## 选型与能力覆盖
29
+
30
+ 复用现有供应商adapter、共享轮询和上传服务;无新网络库或自研协议。模型差异写catalog,中文/英文与渠道联动写presentation;现有通用模型发现与生成操作覆盖本批,属于已有能力的数据扩充,无需专用Agent工具。
31
+
32
+ ## 原始链接索引
33
+
34
+ - [请求契约](https://docs.kie.ai/market/google/nanobanana-2-1.md):无需登录。
35
+ - [轮询/队列契约](https://docs.kie.ai/market/common/get-task-detail.md):无需登录。
36
+ - 本文内模型页/公告/价格链接:无需登录;真实生成与账单另需用户授权,未验。