@henjicc/ai-sdk 0.2.8 → 0.3.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 (236) hide show
  1. package/CHANGELOG.md +153 -143
  2. package/README.md +486 -461
  3. package/dist/capabilities/embedding/bailian.d.ts +23 -0
  4. package/dist/capabilities/embedding/bailian.js +10 -0
  5. package/dist/capabilities/embedding/bigmodel.d.ts +9 -0
  6. package/dist/capabilities/embedding/bigmodel.js +5 -0
  7. package/dist/capabilities/embedding/index.d.ts +1 -0
  8. package/dist/capabilities/embedding/index.js +1 -0
  9. package/dist/capabilities/embedding/ppio.d.ts +7 -0
  10. package/dist/capabilities/embedding/ppio.js +5 -0
  11. package/dist/capabilities/embedding/siliconflow.d.ts +21 -0
  12. package/dist/capabilities/embedding/siliconflow.js +10 -0
  13. package/dist/capabilities/embedding/volcengine.d.ts +10 -0
  14. package/dist/capabilities/embedding/volcengine.js +6 -0
  15. package/dist/capabilities/rerank/bailian.d.ts +21 -0
  16. package/dist/capabilities/rerank/bailian.js +14 -0
  17. package/dist/capabilities/rerank/bigmodel.d.ts +9 -0
  18. package/dist/capabilities/rerank/bigmodel.js +5 -0
  19. package/dist/capabilities/rerank/index.d.ts +1 -0
  20. package/dist/capabilities/rerank/index.js +1 -0
  21. package/dist/capabilities/rerank/ppio.d.ts +7 -0
  22. package/dist/capabilities/rerank/ppio.js +5 -0
  23. package/dist/capabilities/rerank/siliconflow.d.ts +21 -0
  24. package/dist/capabilities/rerank/siliconflow.js +10 -0
  25. package/dist/capabilities/retrieval/http.d.ts +3 -0
  26. package/dist/capabilities/retrieval/http.js +48 -0
  27. package/dist/capabilities/retrieval/module.d.ts +11 -0
  28. package/dist/capabilities/retrieval/module.js +110 -0
  29. package/dist/capabilities/retrieval/types.d.ts +54 -0
  30. package/dist/capabilities/retrieval/types.js +1 -0
  31. package/dist/capabilities/retrieval/validation.d.ts +10 -0
  32. package/dist/capabilities/retrieval/validation.js +65 -0
  33. package/dist/capabilities/types.d.ts +1 -1
  34. package/dist/catalog/apimart/gpt-image-2.5.model.d.ts +2 -0
  35. package/dist/catalog/apimart/gpt-image-2.5.model.js +51 -0
  36. package/dist/catalog/fal/gpt-image-2.5.model.d.ts +2 -0
  37. package/dist/catalog/fal/gpt-image-2.5.model.js +53 -0
  38. package/dist/catalog/fal/ic-light-v2.model.js +9 -13
  39. package/dist/catalog/grsai/gpt-image-2.5.model.d.ts +2 -0
  40. package/dist/catalog/grsai/gpt-image-2.5.model.js +54 -0
  41. package/dist/catalog/grsai/gptImage25Sizes.d.ts +1 -0
  42. package/dist/catalog/grsai/gptImage25Sizes.js +76 -0
  43. package/dist/catalog/index.js +112 -104
  44. package/dist/catalog/kie/gpt-image-2.5.model.d.ts +2 -0
  45. package/dist/catalog/kie/gpt-image-2.5.model.js +38 -0
  46. package/dist/catalog/shared/gptImage25.d.ts +16 -0
  47. package/dist/catalog/shared/gptImage25.js +48 -0
  48. package/dist/catalog/shared/gptImage25Pricing.d.ts +12 -0
  49. package/dist/catalog/shared/gptImage25Pricing.js +508 -0
  50. package/dist/llm/defaults.d.ts +1 -1
  51. package/dist/llm/defaults.js +1 -1
  52. package/dist/llm/modelCatalogEntries.js +16 -0
  53. package/dist/llm/providerPresets.js +2 -2
  54. package/dist/packs/models/apimart/gpt-image-2.5.d.ts +6 -0
  55. package/dist/packs/models/apimart/gpt-image-2.5.js +7 -0
  56. package/dist/packs/models/fal/gpt-image-2.5.d.ts +6 -0
  57. package/dist/packs/models/fal/gpt-image-2.5.js +7 -0
  58. package/dist/packs/models/grsai/gpt-image-2.5.d.ts +6 -0
  59. package/dist/packs/models/grsai/gpt-image-2.5.js +7 -0
  60. package/dist/packs/models/kie/gpt-image-2.5.d.ts +6 -0
  61. package/dist/packs/models/kie/gpt-image-2.5.js +7 -0
  62. package/dist/packs/provider-packs/apimart.d.ts +1 -1
  63. package/dist/packs/provider-packs/apimart.js +21 -20
  64. package/dist/packs/provider-packs/fal.d.ts +1 -1
  65. package/dist/packs/provider-packs/fal.js +37 -36
  66. package/dist/packs/provider-packs/grsai.d.ts +1 -1
  67. package/dist/packs/provider-packs/grsai.js +6 -5
  68. package/dist/packs/provider-packs/kie.d.ts +1 -1
  69. package/dist/packs/provider-packs/kie.js +28 -27
  70. package/dist/packs/tool-models/fal/{qwen-image-edit-2509-multiple-angles.d.ts → qwen-image-edit-2511-multiple-angles.d.ts} +1 -1
  71. package/dist/packs/tool-models/fal/{qwen-image-edit-2509-multiple-angles.js → qwen-image-edit-2511-multiple-angles.js} +1 -1
  72. package/dist/packs/tool-packs/fal-multi-angle-tools.js +1 -1
  73. package/dist/tool-packs/fal-multi-angle/models/qwen-image-edit-2511-multiple-angles.model.d.ts +2 -0
  74. package/dist/tool-packs/fal-multi-angle/models/{qwen-image-edit-2509-multiple-angles.model.js → qwen-image-edit-2511-multiple-angles.model.js} +20 -17
  75. package/docs/README.md +26 -26
  76. package/docs/consumers.md +54 -48
  77. package/docs/llm-adaptation/README.md +139 -139
  78. package/docs/llm-adaptation//344/276/233/345/272/224/345/225/206/DeepSeek.md +103 -91
  79. package/docs/llm-adaptation//344/276/233/345/272/224/345/225/206/Kimi.md +75 -75
  80. package/docs/llm-adaptation//344/276/233/345/272/224/345/225/206/MiniMax.md +84 -84
  81. package/docs/llm-adaptation//344/276/233/345/272/224/345/225/206//345/260/217/347/261/263MiMo.md +85 -85
  82. package/docs/llm-adaptation//344/276/233/345/272/224/345/225/206//346/231/272/350/260/261GLM.md +232 -232
  83. 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 +87 -87
  84. package/docs/llm-adaptation//344/276/233/345/272/224/345/225/206//347/231/276/347/202/274Qwen.md +84 -84
  85. 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
  86. package/docs/model-adaptation/Bria-Eraser/Bria-Eraser_Fal.md +32 -32
  87. 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
  88. package/docs/model-adaptation/ControlLight/ControlLight_Fal.md +85 -85
  89. 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
  90. package/docs/model-adaptation/Finegrain-Eraser/Finegrain-Eraser_Fal.md +31 -31
  91. package/docs/model-adaptation/Flux-Pro-Erase/Flux-Pro-Erase_Fal.md +34 -34
  92. package/docs/model-adaptation/Fun-ASR/Fun-ASR_/347/231/276/347/202/274.md +43 -43
  93. package/docs/model-adaptation/Fun-ASR-Flash-2026-06-15/Fun-ASR-Flash-2026-06-15_/347/231/276/347/202/274.md +41 -41
  94. package/docs/model-adaptation/Fun-ASR-Realtime/Fun-ASR-Realtime_/347/231/276/347/202/274.md +37 -37
  95. 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
  96. package/docs/model-adaptation/GLM-5.3-Flash/GLM-5.3-Flash_/346/231/272/350/260/261.md +207 -207
  97. package/docs/model-adaptation/GPT-Image-2/GPT-Image-2_APIMart.md +173 -173
  98. package/docs/model-adaptation/GPT-Image-2/GPT-Image-2_Fal.md +94 -94
  99. package/docs/model-adaptation/GPT-Image-2/GPT-Image-2_Grsai.md +137 -137
  100. package/docs/model-adaptation/GPT-Image-2/GPT-Image-2_KIE.md +93 -93
  101. package/docs/model-adaptation/GPT-Image-2.5/GPT-Image-2.5_APIMart.md +66 -0
  102. package/docs/model-adaptation/GPT-Image-2.5/GPT-Image-2.5_Fal.md +55 -0
  103. package/docs/model-adaptation/GPT-Image-2.5/GPT-Image-2.5_Grsai.md +53 -0
  104. package/docs/model-adaptation/GPT-Image-2.5/GPT-Image-2.5_KIE.md +55 -0
  105. package/docs/model-adaptation/GPT-OSS-20B/GPT-OSS-20B_Groq.md +62 -62
  106. package/docs/model-adaptation/Gemini-Omni-Flash/Gemini-Omni-Flash_APIMart.md +124 -124
  107. package/docs/model-adaptation/Gemini-Omni-Flash/Gemini-Omni-Flash_Fal.md +84 -84
  108. package/docs/model-adaptation/Gemini-Omni-Flash/Gemini-Omni-Flash_KIE.md +129 -129
  109. package/docs/model-adaptation/Grok-Imagine/Grok-Imagine_KIE.md +36 -36
  110. package/docs/model-adaptation/Grok-Imagine-2.0/Grok-Imagine-2.0_APIMart.md +250 -250
  111. package/docs/model-adaptation/Grok-Imagine-2.0/Grok-Imagine-2.0_Fal.md +84 -84
  112. package/docs/model-adaptation/Grok-Imagine-2.0/Grok-Imagine-2.0_KIE.md +105 -105
  113. package/docs/model-adaptation/Hailuo-02/Hailuo-02_Fal.md +93 -93
  114. package/docs/model-adaptation/Hailuo-02/Hailuo-02_KIE.md +56 -56
  115. package/docs/model-adaptation/Hailuo-2.3/Hailuo-2.3_Fal.md +88 -88
  116. package/docs/model-adaptation/Hailuo-2.3/Hailuo-2.3_KIE.md +51 -51
  117. package/docs/model-adaptation/Hailuo-2.3/Hailuo-2.3_/346/264/276/346/254/247/344/272/221.md +70 -70
  118. package/docs/model-adaptation/IC-Light-v2/IC-Light-v2_Fal.md +97 -94
  119. 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
  120. 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
  121. 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
  122. 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
  123. 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
  124. package/docs/model-adaptation/Kling-3.0/Kling-3.0_APIMart.md +112 -112
  125. package/docs/model-adaptation/Kling-3.0/Kling-3.0_Fal.md +89 -89
  126. package/docs/model-adaptation/Kling-3.0/Kling-3.0_KIE.md +106 -106
  127. package/docs/model-adaptation/Kling-3.0/Kling-3.0_/346/264/276/346/254/247/344/272/221.md +119 -119
  128. package/docs/model-adaptation/Kling-3.0-Omni/Kling-3.0-Omni_APIMart.md +125 -125
  129. package/docs/model-adaptation/Kling-3.0-Omni/Kling-3.0-Omni_Fal.md +107 -107
  130. package/docs/model-adaptation/Kling-3.0-Omni/Kling-3.0-Omni_KIE.md +143 -143
  131. package/docs/model-adaptation/Kling-3.0-Turbo/Kling-3.0-Turbo_APIMart.md +85 -85
  132. package/docs/model-adaptation/Kling-3.0-Turbo/Kling-3.0-Turbo_Fal.md +83 -83
  133. package/docs/model-adaptation/Kling-3.0-Turbo/Kling-3.0-Turbo_KIE.md +84 -84
  134. package/docs/model-adaptation/Midjourney/Midjourney_APIMart.md +396 -396
  135. package/docs/model-adaptation/MiniMax-H3/MiniMax-H3_APIMart.md +234 -234
  136. package/docs/model-adaptation/MiniMax-H3/MiniMax-H3_Fal.md +108 -108
  137. package/docs/model-adaptation/MiniMax-H3/MiniMax-H3_KIE.md +111 -111
  138. package/docs/model-adaptation/MiniMax-Speech/MiniMax-Speech_/346/264/276/346/254/247/344/272/221.md +170 -170
  139. package/docs/model-adaptation/Nano-Banana-2/Nano-Banana-2_APIMart.md +89 -89
  140. package/docs/model-adaptation/Nano-Banana-2/Nano-Banana-2_Fal.md +99 -99
  141. package/docs/model-adaptation/Nano-Banana-2/Nano-Banana-2_Grsai.md +82 -82
  142. package/docs/model-adaptation/Nano-Banana-2/Nano-Banana-2_KIE.md +70 -70
  143. package/docs/model-adaptation/Nano-Banana-2-Lite/Nano-Banana-2-Lite_APIMart.md +79 -79
  144. package/docs/model-adaptation/Nano-Banana-2-Lite/Nano-Banana-2-Lite_Grsai.md +65 -65
  145. package/docs/model-adaptation/Nano-Banana-2-Lite/Nano-Banana-2-Lite_KIE.md +64 -64
  146. package/docs/model-adaptation/Nano-Banana-Pro/Nano-Banana-Pro_APIMart.md +83 -83
  147. package/docs/model-adaptation/Nano-Banana-Pro/Nano-Banana-Pro_Fal.md +89 -89
  148. package/docs/model-adaptation/Nano-Banana-Pro/Nano-Banana-Pro_Grsai.md +82 -82
  149. package/docs/model-adaptation/Nano-Banana-Pro/Nano-Banana-Pro_KIE.md +64 -64
  150. 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
  151. package/docs/model-adaptation/Qwen-Image-3.0/Qwen-Image-3.0_APIMart.md +117 -117
  152. package/docs/model-adaptation/Qwen-Image-3.0/Qwen-Image-3.0_Fal.md +84 -84
  153. package/docs/model-adaptation/Qwen-Image-3.0/Qwen-Image-3.0_KIE.md +103 -103
  154. package/docs/model-adaptation/Qwen-Image-3.0/Qwen-Image-3.0_/347/231/276/347/202/274.md +138 -138
  155. 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 -0
  156. package/docs/model-adaptation/Qwen-MT-Flash/Qwen-MT-Flash_/347/231/276/347/202/274.md +47 -47
  157. package/docs/model-adaptation/Qwen-MT-Lite/Qwen-MT-Lite_/347/231/276/347/202/274.md +39 -39
  158. package/docs/model-adaptation/Qwen-MT-Plus/Qwen-MT-Plus_/347/231/276/347/202/274.md +39 -39
  159. package/docs/model-adaptation/Qwen3-ASR-Flash/Qwen3-ASR-Flash_/347/231/276/347/202/274.md +40 -40
  160. package/docs/model-adaptation/Qwen3-ASR-Flash-2026-02-10/Qwen3-ASR-Flash-2026-02-10_/347/231/276/347/202/274.md +33 -33
  161. package/docs/model-adaptation/Qwen3-ASR-Flash-Filetrans/Qwen3-ASR-Flash-Filetrans_/347/231/276/347/202/274.md +41 -41
  162. package/docs/model-adaptation/Qwen3-ASR-Flash-Realtime/Qwen3-ASR-Flash-Realtime_/347/231/276/347/202/274.md +35 -35
  163. 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
  164. package/docs/model-adaptation/README.md +313 -295
  165. 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
  166. 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 +143 -143
  167. 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
  168. package/docs/model-adaptation/Seedance-2.0/Seedance-2.0_APIMart.md +121 -121
  169. package/docs/model-adaptation/Seedance-2.0/Seedance-2.0_Fal.md +97 -97
  170. package/docs/model-adaptation/Seedance-2.0/Seedance-2.0_KIE.md +86 -86
  171. package/docs/model-adaptation/Seedance-2.0-Fast/Seedance-2.0-Fast_APIMart.md +89 -89
  172. package/docs/model-adaptation/Seedance-2.0-Fast/Seedance-2.0-Fast_Fal.md +95 -95
  173. package/docs/model-adaptation/Seedance-2.0-Fast/Seedance-2.0-Fast_KIE.md +78 -78
  174. package/docs/model-adaptation/Seedance-2.0-Mini/Seedance-2.0-Mini_APIMart.md +89 -89
  175. package/docs/model-adaptation/Seedance-2.0-Mini/Seedance-2.0-Mini_Fal.md +96 -96
  176. package/docs/model-adaptation/Seedance-2.0-Mini/Seedance-2.0-Mini_KIE.md +78 -78
  177. package/docs/model-adaptation/Seedance-2.5/Seedance-2.5_APIMart.md +212 -212
  178. package/docs/model-adaptation/Seedance-2.5/Seedance-2.5_Fal.md +94 -94
  179. package/docs/model-adaptation/Seedance-2.5/Seedance-2.5_KIE.md +89 -89
  180. package/docs/model-adaptation/Seedream-5.0-Lite/Seedream-5.0-Lite_APIMart.md +106 -106
  181. package/docs/model-adaptation/Seedream-5.0-Lite/Seedream-5.0-Lite_Fal.md +91 -91
  182. package/docs/model-adaptation/Seedream-5.0-Lite/Seedream-5.0-Lite_KIE.md +89 -89
  183. 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 +108 -108
  184. package/docs/model-adaptation/Seedream-5.0-Pro/Seedream-5.0-Pro_APIMart.md +194 -194
  185. package/docs/model-adaptation/Seedream-5.0-Pro/Seedream-5.0-Pro_Fal.md +100 -100
  186. package/docs/model-adaptation/Seedream-5.0-Pro/Seedream-5.0-Pro_KIE.md +141 -141
  187. 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
  188. package/docs/model-adaptation/SenseVoiceSmall/SenseVoiceSmall_/347/241/205/345/237/272/346/265/201/345/212/250.md +69 -69
  189. package/docs/model-adaptation/TeleSpeechASR/TeleSpeechASR_/347/241/205/345/237/272/346/265/201/345/212/250.md +72 -72
  190. 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
  191. 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
  192. package/docs/model-adaptation/Wan-2.5-Preview/Wan-2.5-Preview_/346/264/276/346/254/247/344/272/221.md +82 -82
  193. package/docs/model-adaptation/Wan-2.6/Wan-2.6_/346/264/276/346/254/247/344/272/221.md +84 -84
  194. package/docs/model-adaptation/Wan-2.7/Wan-2.7_/346/264/276/346/254/247/344/272/221.md +122 -122
  195. package/docs/model-adaptation/Whisper-Large-v3/Whisper-Large-v3_Groq.md +76 -76
  196. package/docs/model-adaptation/Whisper-Large-v3-Turbo/Whisper-Large-v3-Turbo_Groq.md +75 -75
  197. package/docs/model-adaptation/Z-Image-Turbo/Z-Image-Turbo_APIMart.md +88 -88
  198. package/docs/model-adaptation/Z-Image-Turbo/Z-Image-Turbo_Fal.md +95 -95
  199. package/docs/model-adaptation/Z-Image-Turbo/Z-Image-Turbo_KIE.md +71 -71
  200. package/docs/model-adaptation/Z-Image-Turbo/Z-Image-Turbo_/347/231/276/347/202/274.md +122 -122
  201. package/docs/model-adaptation/Z-Image-Turbo/Z-Image-Turbo_/351/255/224/346/220/255.md +97 -97
  202. package/docs/model-adaptation//344/276/233/345/272/224/345/225/206/APIMart.md +238 -238
  203. package/docs/model-adaptation//344/276/233/345/272/224/345/225/206/Fal.md +172 -172
  204. package/docs/model-adaptation//344/276/233/345/272/224/345/225/206/Groq.md +121 -121
  205. package/docs/model-adaptation//344/276/233/345/272/224/345/225/206/Grsai.md +217 -217
  206. package/docs/model-adaptation//344/276/233/345/272/224/345/225/206/KIE.md +131 -131
  207. 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
  208. 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
  209. package/docs/model-adaptation//344/276/233/345/272/224/345/225/206//346/264/276/346/254/247/344/272/221.md +147 -138
  210. 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 +181 -171
  211. package/docs/model-adaptation//344/276/233/345/272/224/345/225/206//347/231/276/347/202/274.md +237 -227
  212. 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 +110 -88
  213. package/docs/model-adaptation//344/276/233/345/272/224/345/225/206//351/255/224/346/220/255.md +207 -207
  214. package/docs/model-adaptation//346/226/207/346/241/243/351/207/207/351/233/206/346/211/213/345/206/214.md +338 -311
  215. 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
  216. package/docs//346/216/245/345/205/245/346/214/207/345/215/227/Electron.md +77 -77
  217. package/docs//346/216/245/345/205/245/346/214/207/345/215/227/Tauri.md +81 -81
  218. package/docs//346/216/245/345/205/245/346/214/207/345/215/227/UXP.md +169 -169
  219. 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
  220. 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
  221. package/examples/form-renderer/README.md +17 -17
  222. package/examples/form-renderer/cli.ts +32 -32
  223. package/examples/form-renderer/index.ts +144 -144
  224. package/examples/form-renderer/package.json +16 -16
  225. package/examples/form-renderer/tsconfig.json +14 -14
  226. package/examples/llm-chat/README.md +32 -32
  227. package/examples/llm-chat/index.ts +100 -100
  228. package/examples/llm-chat/package.json +19 -19
  229. package/examples/llm-chat/tsconfig.json +14 -14
  230. package/examples/minimal-node/README.md +31 -31
  231. package/examples/minimal-node/index.ts +138 -138
  232. package/examples/minimal-node/package.json +17 -17
  233. package/examples/minimal-node/tsconfig.json +14 -14
  234. package/package.json +252 -197
  235. package/dist/tool-packs/fal-multi-angle/models/qwen-image-edit-2509-multiple-angles.model.d.ts +0 -2
  236. package/docs/model-adaptation/Qwen-Image-Edit-2509-/345/244/232/350/247/222/345/272/246/Qwen-Image-Edit-2509-/345/244/232/350/247/222/345/272/246_Fal.md +0 -116
@@ -1,65 +1,65 @@
1
- # 快速适配供应商
2
-
3
- > 目标:在写第一个模型文件前,先把供应商的稳定公共契约接好。后续模型适配只处理模型 ID、路由选择、参数和计价,不再重复写鉴权、上传、轮询与结果解析。
4
- >
5
- > 最后更新:2026-08-26
6
-
7
- ## 1. 先判定供应商是否已适配
8
-
9
- 不要因为设置页能保存 API Key,就宣称供应商已适配。至少要核对下列公共契约:
10
-
11
- | 层级 | 必须确认 |
12
- |---|---|
13
- | 地址 | Base URL、区域/备用线路、相对路由拼接规则 |
14
- | 鉴权 | Header 格式、Key 类型、是否与区域/业务空间绑定 |
15
- | 提交 | 同步/异步、提交方法、任务 ID 路径、是否可安全重试 |
16
- | 查询 | 轮询端点、进行中/成功/失败状态、失败消息路径 |
17
- | 结果 | 图片/视频/音频 URL 路径、string/string[]、JSON 字符串嵌套、有效期 |
18
- | 上传 | 本地路径、Data URI、Base64、公网 URL、官方临时存储的转换规则 |
19
- | 价格 | 公开价格页、可编程价格 API、任务实际扣费字段的优先级 |
20
- | 余额 | 是否可用同一枚生成 API Key 查询;若需云账号 AK/SK,不混入生成适配 |
21
-
22
- 只有“当前已接入模型的必需分支”全部可运行,才标记为“已适配”。供应商未来可能支持、但当前没有模型使用的协议,记录在文档中,不预先造运行时分支。
23
-
24
- ## 2. 供应商基础文档模板
25
-
26
- 每家供应商在本目录保留一份 `<供应商>.md`,固定按下列顺序编写:
27
-
28
- 1. 摘要:`providerId`、类型、鉴权、同步/异步、文档与价格登录状态。
29
- 2. Base URL:主线、区域、备用线路与 Key 绑定关系。
30
- 3. 生成端点:只记公共路由;模型专属路由留在模型文档。
31
- 4. 提交、轮询与回调:任务 ID、状态、结果、错误的精确字段路径。
32
- 5. 文件上传:上传方法、限制、返回值、有效期与生成请求需要的额外 Header。
33
- 6. 结果保存:是否需要二次换取下载链接,以及链接有效期。
34
- 7. 计价和余额:官方价格页、API、任务实际扣费字段;余额只记同 Key 可安全查询的方案。
35
- 8. 项目对照:已接入文件、已覆盖能力、明确欠账。
36
- 9. 原始链接索引:每个链接标注提供的信息与登录要求。
37
-
38
- ## 3. 代码接入顺序
39
-
40
- 1. 在 `packages/ai-sdk/src/providers/<provider>.ts` 实现提交、轮询和结果解析。
41
- 2. 在 `providers/index.ts` 注册生成与续轮询分发。
42
- 3. 如需官方上传,只在 `upload-providers.ts` 实现协议,由 `upload.ts` 统一选择;禁止模型或 UI 自己上传。
43
- 4. 在 `keystore.ts`、`src/core/config/providers.ts`、`settingsStore.ts` 补齐 Key 与供应商元信息。
44
- 5. 先用一个最小模型验证完整链路,再批量增加模型定义。
45
-
46
- 供应商代码不得引用 UI,模型定义不得自行发起 `fetch()`。
47
-
48
- ## 4. 最小验收
49
-
50
- - 提交测试:断言 URL、方法、鉴权和请求体。
51
- - 轮询测试:覆盖进行中、成功、明确失败和查询暂时失败。
52
- - 结果测试:覆盖单 URL、URL 数组和嵌套 JSON 字符串。
53
- - 上传测试:覆盖成功、缺少 URL、鉴权失败和超限。
54
- - 收尾:按 [testing.md](../../../../../docs/rules/testing.md) 选择精确测试与对应 TypeScript 工程,不默认跑全量。
55
-
56
- ## 5. 当前供应商速查
57
-
58
- | 供应商 | 基础文档 | 当前生成运行时 |
59
- |---|---|---|
60
- | APIMart | [APIMart.md](APIMart.md) | 已接入异步提交、轮询、图片上传、余额与大陆备用线路受控切换 |
61
- | KIE | [KIE.md](KIE.md) | 已接入统一 Market 任务、轮询、上传与余额 |
62
- | Fal | [Fal.md](Fal.md) | 已接入直连/队列、轮询与结果解析 |
63
- | 百炼 | [百炼.md](百炼.md) | 已接入当前同步图片模型;区域、临时上传和异步契约见文档 |
64
- | 火山引擎 | [火山引擎.md](火山引擎.md) | 已接入当前同步图片模型;Files API 不视为生成通用上传 |
65
- | Grsai | [Grsai.md](Grsai.md) | 已接入统一生成接口、轮询、双线路探测;余额查询未接入(鉴权方式未确认,见文档第 8 节第 4 项) |
1
+ # 快速适配供应商
2
+
3
+ > 目标:在写第一个模型文件前,先把供应商的稳定公共契约接好。后续模型适配只处理模型 ID、路由选择、参数和计价,不再重复写鉴权、上传、轮询与结果解析。
4
+ >
5
+ > 最后更新:2026-08-26
6
+
7
+ ## 1. 先判定供应商是否已适配
8
+
9
+ 不要因为设置页能保存 API Key,就宣称供应商已适配。至少要核对下列公共契约:
10
+
11
+ | 层级 | 必须确认 |
12
+ |---|---|
13
+ | 地址 | Base URL、区域/备用线路、相对路由拼接规则 |
14
+ | 鉴权 | Header 格式、Key 类型、是否与区域/业务空间绑定 |
15
+ | 提交 | 同步/异步、提交方法、任务 ID 路径、是否可安全重试 |
16
+ | 查询 | 轮询端点、进行中/成功/失败状态、失败消息路径 |
17
+ | 结果 | 图片/视频/音频 URL 路径、string/string[]、JSON 字符串嵌套、有效期 |
18
+ | 上传 | 本地路径、Data URI、Base64、公网 URL、官方临时存储的转换规则 |
19
+ | 价格 | 公开价格页、可编程价格 API、任务实际扣费字段的优先级 |
20
+ | 余额 | 是否可用同一枚生成 API Key 查询;若需云账号 AK/SK,不混入生成适配 |
21
+
22
+ 只有“当前已接入模型的必需分支”全部可运行,才标记为“已适配”。供应商未来可能支持、但当前没有模型使用的协议,记录在文档中,不预先造运行时分支。
23
+
24
+ ## 2. 供应商基础文档模板
25
+
26
+ 每家供应商在本目录保留一份 `<供应商>.md`,固定按下列顺序编写:
27
+
28
+ 1. 摘要:`providerId`、类型、鉴权、同步/异步、文档与价格登录状态。
29
+ 2. Base URL:主线、区域、备用线路与 Key 绑定关系。
30
+ 3. 生成端点:只记公共路由;模型专属路由留在模型文档。
31
+ 4. 提交、轮询与回调:任务 ID、状态、结果、错误的精确字段路径。
32
+ 5. 文件上传:上传方法、限制、返回值、有效期与生成请求需要的额外 Header。
33
+ 6. 结果保存:是否需要二次换取下载链接,以及链接有效期。
34
+ 7. 计价和余额:官方价格页、API、任务实际扣费字段;余额只记同 Key 可安全查询的方案。
35
+ 8. 项目对照:已接入文件、已覆盖能力、明确欠账。
36
+ 9. 原始链接索引:每个链接标注提供的信息与登录要求。
37
+
38
+ ## 3. 代码接入顺序
39
+
40
+ 1. 在 `packages/ai-sdk/src/providers/<provider>.ts` 实现提交、轮询和结果解析。
41
+ 2. 在 `providers/index.ts` 注册生成与续轮询分发。
42
+ 3. 如需官方上传,只在 `upload-providers.ts` 实现协议,由 `upload.ts` 统一选择;禁止模型或 UI 自己上传。
43
+ 4. 在 `keystore.ts`、`src/core/config/providers.ts`、`settingsStore.ts` 补齐 Key 与供应商元信息。
44
+ 5. 先用一个最小模型验证完整链路,再批量增加模型定义。
45
+
46
+ 供应商代码不得引用 UI,模型定义不得自行发起 `fetch()`。
47
+
48
+ ## 4. 最小验收
49
+
50
+ - 提交测试:断言 URL、方法、鉴权和请求体。
51
+ - 轮询测试:覆盖进行中、成功、明确失败和查询暂时失败。
52
+ - 结果测试:覆盖单 URL、URL 数组和嵌套 JSON 字符串。
53
+ - 上传测试:覆盖成功、缺少 URL、鉴权失败和超限。
54
+ - 收尾:按 [testing.md](../../../../../docs/rules/testing.md) 选择精确测试与对应 TypeScript 工程,不默认跑全量。
55
+
56
+ ## 5. 当前供应商速查
57
+
58
+ | 供应商 | 基础文档 | 当前生成运行时 |
59
+ |---|---|---|
60
+ | APIMart | [APIMart.md](APIMart.md) | 已接入异步提交、轮询、图片上传、余额与大陆备用线路受控切换 |
61
+ | KIE | [KIE.md](KIE.md) | 已接入统一 Market 任务、轮询、上传与余额 |
62
+ | Fal | [Fal.md](Fal.md) | 已接入直连/队列、轮询与结果解析 |
63
+ | 百炼 | [百炼.md](百炼.md) | 已接入当前同步图片模型;区域、临时上传和异步契约见文档 |
64
+ | 火山引擎 | [火山引擎.md](火山引擎.md) | 已接入当前同步图片模型;Files API 不视为生成通用上传 |
65
+ | Grsai | [Grsai.md](Grsai.md) | 已接入统一生成接口、轮询、双线路探测;余额查询未接入(鉴权方式未确认,见文档第 8 节第 4 项) |
@@ -1,138 +1,147 @@
1
- # 派欧云 PPIO · 供应商基础文档
2
-
3
- | 项目 | 内容 |
4
- |---|---|
5
- | 最后更新 | 2026-08-30 |
6
- | 供应商类型 | 聚合平台(自建推理集群) |
7
- | 覆盖模态 | 图片、视频、音频 |
8
- | 文档可见性 | 公开,无需登录 |
9
- | 价格可见性 | 公开,无需登录 |
10
- | 结算币种 | 人民币 ¥ |
11
-
12
- ## 1. 接入协议
13
-
14
- - **Base URL**:`https://api.ppio.com/v3`
15
- - **鉴权**:`Authorization: Bearer <API_KEY>`
16
- - **提交**:`POST /v3/async/<model-route>`,返回 `{ "task_id": "..." }`
17
- - **查询**:`GET /v3/async/task-result?task_id=<id>`
18
- - **状态字段**:`/task/status`,枚举 `TASK_STATUS_QUEUED` / `TASK_STATUS_PROCESSING` / `TASK_STATUS_SUCCEED` / `TASK_STATUS_FAILED`
19
- - **结果字段**:`images[].image_url` / `videos[].video_url` / `audios[].audio_url`
20
- - **结果 URL 有效期**:默认 **3600 秒**,必须及时下载持久化
21
-
22
- 部分音频接口同时提供同步版本(`POST /v3/<route>`,无 `async` 段),直接返回结果不需轮询;本项目统一走异步路由。
23
-
24
- ### 域名(已切换)
25
-
26
- 官网与全部文档示例现在使用 `https://api.ppio.com/v3`,`api.ppinfra.com` 在官网已无任何引用。
27
-
28
- **已实测**:两个域名对同一路由的响应完全一致(带无效 Key 请求 `/v3/async/kling-v3.0-std-t2v`,两者都返回 `{"code":403,"reason":"INVALID_API_KEY"}`),即旧域名仍在兼容且路由解析正常。代码已切到官方现行域名 `api.ppio.com`。
29
-
30
- ## 2. 文件上传(重要限制)
31
-
32
- **PPIO 没有提供官方文件上传服务。** 本项目的处理方式定义在 `electron/main/services/ai-runtime/ppio-media.ts`,按字段名和路由决定媒体如何进入请求体:
33
-
34
- | 模式 | 触发条件 | 行为 |
35
- |---|---|---|
36
- | `raw-base64` | 字段名以 `_base64` / `_base64s` 结尾 | 裸 base64 字符串 |
37
- | `public-url` | 字段名以 `_url` / `_urls` 结尾、**任何视频素材**、`reference_voice` 字段,或命中特定路由白名单 | **必须是公网 HTTP(S) URL** |
38
- | `data-uri` | 其余情况(默认) | `data:<mime>;base64,<data>` 内联 |
39
-
40
- `public-url` 模式下,本项目**借用 KIE 的上传服务**换取公网 URL(`upload.ts` → `uploadForPublicUrl` → `uploadToKie`)。因此:
41
-
42
- > **用户如果只配置了 PPIO 的 API Key,没有配置 KIE Key,所有需要公网 URL 的 PPIO 模型都会直接失败**,错误提示为「当前 PPIO 模型字段要求公网 HTTP/HTTPS 媒体 URL。请直接传入公网 URL,或配置 KIE API Key」。
43
-
44
- 这与项目规则「必须调用当前生成供应商自己的官方文件上传服务」存在张力,属于**已知的、供应商能力缺失导致的例外**,不是实现疏漏。新增 PPIO 模型时若涉及视频或 `_url` 字段,需要在产品侧明确这个前置依赖。
45
-
46
- ## 3. 实名认证前置条件
47
-
48
- 部分模型要求**个人或企业实名认证**后才能调用,未认证会直接报错:
49
-
50
- - Wan 2.5 Preview(全部路由)
51
- - MiniMax 声音克隆 `/v3/minimax-voice-cloning`
52
-
53
- 这类限制在模型文档页以 Warning 形式标注,不体现在 API 错误码文档里。
54
-
55
- ## 4. 在售模型清单(2026-08-26)
56
-
57
- PPIO 的媒体模型规模比其他聚合平台小得多,且**图像侧几乎空白**。
58
-
59
- ### 图片(仅 2 条路由)
60
-
61
- | 模型 | 路由 | 价格 |
62
- |---|---|---|
63
- | Qwen-Image 文生图 | `/v3/async/qwen-image-txt2img` | ¥0.145/张 |
64
- | Qwen-Image 图像编辑 | `/v3/async/qwen-image-edit` | ¥0.145/张 |
65
-
66
- 初代 20B Qwen-Image,**不是** Qwen Image 3.0。
67
-
68
- ### 视频
69
-
70
- 在售:Kling 3.0(7 条路由)、Kling 2.5 Turbo Pro、Wan 2.5 Preview、Wan 2.6、Wan 2.7、MiniMax Hailuo 2.3(含 Fast)、PixVerse V4.5。各自价格见对应模型文档。
71
-
72
- ### 音频
73
-
74
- | 模型 | 路由 | 价格 |
75
- |---|---|---|
76
- | MiniMax Speech 2.8 HD | `/v3/[async/]minimax-speech-2.8-hd` | ¥3.5 / 万字符 |
77
- | MiniMax Speech 2.8 Turbo | `/v3/[async/]minimax-speech-2.8-turbo` | ¥2.0 / 万字符 |
78
- | MiniMax speech-2.6-hd | 路由未公开 | ¥3.5 / 万字符 |
79
- | MiniMax speech-2.6-turbo | 路由未公开 | ¥2.0 / 万字符 |
80
- | MiniMax 声音克隆 | `/v3/minimax-voice-cloning` | ¥9.9 / 音色 |
81
- | MiniMax 声音设计 | `/v3/minimax-voice-design` | ¥9.9 / 音色 |
82
- | MiniMax Music | `/v3/minimax-music` | music-2.5/2.5+ ¥1.0/首;music-2.0 ¥0.25/首 |
83
- | MiniMax Lyrics | `/v3/minimax-music-lyrics` | ¥0.05 / 首 |
84
- | Fish Audio TTS | 路由未公开 | ¥105 / 百万字符(≈¥1.05/万字符) |
85
- | Fish Audio Voice Clone | 路由未公开 | ¥0.7 / 音色 |
86
-
87
- **speech-2.6 系列与 Fish Audio 两条在定价页有价、说明仍在售,但文档站已不提供 API 参考页,路由无法确认。** PPIO 对所有未知路径统一返回 400,无法靠探测区分路由是否存在。要接入需要实测或联系 PPIO。
88
-
89
- MiniMax Speech 的公开商品注册表使用 `(单价 × 字符数 + 999999) / 1000000` 结算表达式,代表每次请求的字符费都**向上取整到人民币分**。声音克隆的试听是一次独立 TTS 计费,同样先向上取整到分,再叠加 ¥9.9 音色费。
90
-
91
- > Fish Audio 的 TTS 比 MiniMax Turbo 便宜约一半,声音克隆比 MiniMax 便宜 14 倍。若后续要做成本优化,这是值得优先确认路由的方向。
92
-
93
- ### 主清单模型的覆盖情况
94
-
95
- 项目「常用优秀模型清单」共 18 个,**PPIO 只提供其中 1 个**:
96
-
97
- | 清单模型 | PPIO |
98
- |---|---|
99
- | Kling 3.0 | ✅ 提供,见 [Kling-3.0_派欧云.md](../Kling-3.0/Kling-3.0_派欧云.md) |
100
- | 其余 17 个 | ❌ 全部没有 |
101
-
102
- **Seedream 与 Seedance 曾经上线过后又下架。** `/v3/video/create` 统一视频接口的配置里至今残留 `seedance_v1_pro_t2v`、`seedance_v1_lite_i2v`、`seedance_v1.5_pro_t2v/i2v` 等条目,但它们**不在定价页**,同批残留的还有 `kling2.1_*`、`wan2.2_*`、`minimax_hailuo_02`——这批都是已下架的旧条目。
103
-
104
- > **判定规则:以定价页为准,不要以 `/v3/video/create` 配置为准。** 对照证据:`kling2.5_turbo_pro_*` 同样只存在于统一配置、没有独立文档页,但定价页有价——说明定价页确实覆盖统一接口模型,因此 Seedance 在定价页的缺席是真缺席。
105
-
106
- ## 5. 已适配模型文档索引
107
-
108
- | 模型 | 文档 | 是否在主清单 |
109
- |---|---|---|
110
- | Kling 3.0 | [Kling-3.0_派欧云.md](../Kling-3.0/Kling-3.0_派欧云.md) | ✅ 是 |
111
- | MiniMax Hailuo 2.3 | [Hailuo-2.3_派欧云.md](../Hailuo-2.3/Hailuo-2.3_派欧云.md) | 否 |
112
- | Wan 2.5 Preview | [Wan-2.5-Preview_派欧云.md](../Wan-2.5-Preview/Wan-2.5-Preview_派欧云.md) | 否 |
113
- | Wan 2.6 | [Wan-2.6_派欧云.md](../Wan-2.6/Wan-2.6_派欧云.md) | 否 |
114
- | Wan 2.7 | [Wan-2.7_派欧云.md](../Wan-2.7/Wan-2.7_派欧云.md) | 否 |
115
- | MiniMax Speech | [MiniMax-Speech_派欧云.md](../MiniMax-Speech/MiniMax-Speech_派欧云.md) | 否 |
116
-
117
- ## 6. 适配要点
118
-
119
- - **请求体结构在 Wan 家族内部就不统一**:Wan 2.5 / 2.6 是 `{input: {...}, parameters: {...}}` 嵌套结构,Wan 2.7 是**扁平结构**。同家族不同版本不能共用 builder。
120
- - **同一模型的 t2v 与 i2v 分辨率字段名不同**:t2v 用 `size`(必须填 `1920*1080` 这类具体像素,不接受档位名或比例),i2v 用 `resolution`(枚举 `480P`/`720P`/`1080P`)。Wan 2.5、2.6、2.7 都是这个规律,极易踩坑。
121
- - **计价维度差异大**:Wan 2.5 / 2.6 按**视频条数**计费(分辨率 × 时长查表),Wan 2.7 与 Kling 3.0 按**秒**计费。同供应商内不能套用同一套计价模板。
122
- - **音频开关会改变单价档位**:Kling 3.0 的 `sound` 字段为 `true` 时单价上浮 50%;Wan 2.7 r2v 的 `audio` 字段同样影响费用。计价函数必须读这个字段。
123
- - 项目默认隐藏的参数(`seed`、负面提示词):PPIO 多数模型都提供 `seed` 与 `negative_prompt` 字段,按项目约定**不显示、不请求**。
124
- - `output_format` 按项目约定不显示且不请求。
125
-
126
- ## 7. 原始链接索引
127
-
128
- | 信息 | 链接 | 是否需登录 |
129
- |---|---|---|
130
- | 文档全量索引(llms.txt) | https://ppio.com/docs/llms.txt | 否 |
131
- | 定价页(图像/视频/音频 tab) | https://ppio.com/pricing | 否 |
132
- | 模型注册表 API(定价页自身调用) | https://api-server.ppio.com/v1/product/multimodal-model/list?returnSchema=true | 否 |
133
- | 商品批量价格 API(POST) | https://api-server.ppio.com/v1/product/batch-price | 否 |
134
- | 统一视频接口配置(23 个 model 取值 + JSON Schema) | https://api.ppio.com/v3/admin/video-unify-api/config | 否 |
135
- | LLM 更新日志(含历史上下架记录) | https://ppio.com/docs/announcement/changelog-llm.md | 否 |
136
- | API 鉴权方式 | https://ppio.com/docs/api/authentication | 否 |
137
- | API 错误码 | https://ppio.com/docs/api/error-codes | 否 |
138
- | API Key 管理 | https://ppio.com/settings/key-management | **是** |
1
+ # 派欧云 PPIO · 供应商基础文档
2
+
3
+ | 项目 | 内容 |
4
+ |---|---|
5
+ | 最后更新 | 2026-08-30 |
6
+ | 供应商类型 | 聚合平台(自建推理集群) |
7
+ | 覆盖模态 | 图片、视频、音频 |
8
+ | 文档可见性 | 公开,无需登录 |
9
+ | 价格可见性 | 公开,无需登录 |
10
+ | 结算币种 | 人民币 ¥ |
11
+
12
+ ## 1. 接入协议
13
+
14
+ - **Base URL**:`https://api.ppio.com/v3`
15
+ - **鉴权**:`Authorization: Bearer <API_KEY>`
16
+ - **提交**:`POST /v3/async/<model-route>`,返回 `{ "task_id": "..." }`
17
+ - **查询**:`GET /v3/async/task-result?task_id=<id>`
18
+ - **状态字段**:`/task/status`,枚举 `TASK_STATUS_QUEUED` / `TASK_STATUS_PROCESSING` / `TASK_STATUS_SUCCEED` / `TASK_STATUS_FAILED`
19
+ - **结果字段**:`images[].image_url` / `videos[].video_url` / `audios[].audio_url`
20
+ - **结果 URL 有效期**:默认 **3600 秒**,必须及时下载持久化
21
+
22
+ 部分音频接口同时提供同步版本(`POST /v3/<route>`,无 `async` 段),直接返回结果不需轮询;本项目统一走异步路由。
23
+
24
+ ### 域名(已切换)
25
+
26
+ 官网与全部文档示例现在使用 `https://api.ppio.com/v3`,`api.ppinfra.com` 在官网已无任何引用。
27
+
28
+ **已实测**:两个域名对同一路由的响应完全一致(带无效 Key 请求 `/v3/async/kling-v3.0-std-t2v`,两者都返回 `{"code":403,"reason":"INVALID_API_KEY"}`),即旧域名仍在兼容且路由解析正常。代码已切到官方现行域名 `api.ppio.com`。
29
+
30
+ ## 2. 文件上传(重要限制)
31
+
32
+ **PPIO 没有提供官方文件上传服务。** 本项目的处理方式定义在 `electron/main/services/ai-runtime/ppio-media.ts`,按字段名和路由决定媒体如何进入请求体:
33
+
34
+ | 模式 | 触发条件 | 行为 |
35
+ |---|---|---|
36
+ | `raw-base64` | 字段名以 `_base64` / `_base64s` 结尾 | 裸 base64 字符串 |
37
+ | `public-url` | 字段名以 `_url` / `_urls` 结尾、**任何视频素材**、`reference_voice` 字段,或命中特定路由白名单 | **必须是公网 HTTP(S) URL** |
38
+ | `data-uri` | 其余情况(默认) | `data:<mime>;base64,<data>` 内联 |
39
+
40
+ `public-url` 模式下,本项目**借用 KIE 的上传服务**换取公网 URL(`upload.ts` → `uploadForPublicUrl` → `uploadToKie`)。因此:
41
+
42
+ > **用户如果只配置了 PPIO 的 API Key,没有配置 KIE Key,所有需要公网 URL 的 PPIO 模型都会直接失败**,错误提示为「当前 PPIO 模型字段要求公网 HTTP/HTTPS 媒体 URL。请直接传入公网 URL,或配置 KIE API Key」。
43
+
44
+ 这与项目规则「必须调用当前生成供应商自己的官方文件上传服务」存在张力,属于**已知的、供应商能力缺失导致的例外**,不是实现疏漏。新增 PPIO 模型时若涉及视频或 `_url` 字段,需要在产品侧明确这个前置依赖。
45
+
46
+ ## 3. 实名认证前置条件
47
+
48
+ 部分模型要求**个人或企业实名认证**后才能调用,未认证会直接报错:
49
+
50
+ - Wan 2.5 Preview(全部路由)
51
+ - MiniMax 声音克隆 `/v3/minimax-voice-cloning`
52
+
53
+ 这类限制在模型文档页以 Warning 形式标注,不体现在 API 错误码文档里。
54
+
55
+ ## 4. 在售模型清单(2026-08-26)
56
+
57
+ PPIO 的媒体模型规模比其他聚合平台小得多,且**图像侧几乎空白**。
58
+
59
+ ### 图片(仅 2 条路由)
60
+
61
+ | 模型 | 路由 | 价格 |
62
+ |---|---|---|
63
+ | Qwen-Image 文生图 | `/v3/async/qwen-image-txt2img` | ¥0.145/张 |
64
+ | Qwen-Image 图像编辑 | `/v3/async/qwen-image-edit` | ¥0.145/张 |
65
+
66
+ 初代 20B Qwen-Image,**不是** Qwen Image 3.0。
67
+
68
+ ### 视频
69
+
70
+ 在售:Kling 3.0(7 条路由)、Kling 2.5 Turbo Pro、Wan 2.5 Preview、Wan 2.6、Wan 2.7、MiniMax Hailuo 2.3(含 Fast)、PixVerse V4.5。各自价格见对应模型文档。
71
+
72
+ ### 音频
73
+
74
+ | 模型 | 路由 | 价格 |
75
+ |---|---|---|
76
+ | MiniMax Speech 2.8 HD | `/v3/[async/]minimax-speech-2.8-hd` | ¥3.5 / 万字符 |
77
+ | MiniMax Speech 2.8 Turbo | `/v3/[async/]minimax-speech-2.8-turbo` | ¥2.0 / 万字符 |
78
+ | MiniMax speech-2.6-hd | 路由未公开 | ¥3.5 / 万字符 |
79
+ | MiniMax speech-2.6-turbo | 路由未公开 | ¥2.0 / 万字符 |
80
+ | MiniMax 声音克隆 | `/v3/minimax-voice-cloning` | ¥9.9 / 音色 |
81
+ | MiniMax 声音设计 | `/v3/minimax-voice-design` | ¥9.9 / 音色 |
82
+ | MiniMax Music | `/v3/minimax-music` | music-2.5/2.5+ ¥1.0/首;music-2.0 ¥0.25/首 |
83
+ | MiniMax Lyrics | `/v3/minimax-music-lyrics` | ¥0.05 / 首 |
84
+ | Fish Audio TTS | 路由未公开 | ¥105 / 百万字符(≈¥1.05/万字符) |
85
+ | Fish Audio Voice Clone | 路由未公开 | ¥0.7 / 音色 |
86
+
87
+ **speech-2.6 系列与 Fish Audio 两条在定价页有价、说明仍在售,但文档站已不提供 API 参考页,路由无法确认。** PPIO 对所有未知路径统一返回 400,无法靠探测区分路由是否存在。要接入需要实测或联系 PPIO。
88
+
89
+ MiniMax Speech 的公开商品注册表使用 `(单价 × 字符数 + 999999) / 1000000` 结算表达式,代表每次请求的字符费都**向上取整到人民币分**。声音克隆的试听是一次独立 TTS 计费,同样先向上取整到分,再叠加 ¥9.9 音色费。
90
+
91
+ > Fish Audio 的 TTS 比 MiniMax Turbo 便宜约一半,声音克隆比 MiniMax 便宜 14 倍。若后续要做成本优化,这是值得优先确认路由的方向。
92
+
93
+ ### 主清单模型的覆盖情况
94
+
95
+ 项目「常用优秀模型清单」共 18 个,**PPIO 只提供其中 1 个**:
96
+
97
+ | 清单模型 | PPIO |
98
+ |---|---|
99
+ | Kling 3.0 | ✅ 提供,见 [Kling-3.0_派欧云.md](../Kling-3.0/Kling-3.0_派欧云.md) |
100
+ | 其余 17 个 | ❌ 全部没有 |
101
+
102
+ **Seedream 与 Seedance 曾经上线过后又下架。** `/v3/video/create` 统一视频接口的配置里至今残留 `seedance_v1_pro_t2v`、`seedance_v1_lite_i2v`、`seedance_v1.5_pro_t2v/i2v` 等条目,但它们**不在定价页**,同批残留的还有 `kling2.1_*`、`wan2.2_*`、`minimax_hailuo_02`——这批都是已下架的旧条目。
103
+
104
+ > **判定规则:以定价页为准,不要以 `/v3/video/create` 配置为准。** 对照证据:`kling2.5_turbo_pro_*` 同样只存在于统一配置、没有独立文档页,但定价页有价——说明定价页确实覆盖统一接口模型,因此 Seedance 在定价页的缺席是真缺席。
105
+
106
+ ## 5. 已适配模型文档索引
107
+
108
+ | 模型 | 文档 | 是否在主清单 |
109
+ |---|---|---|
110
+ | Kling 3.0 | [Kling-3.0_派欧云.md](../Kling-3.0/Kling-3.0_派欧云.md) | ✅ 是 |
111
+ | MiniMax Hailuo 2.3 | [Hailuo-2.3_派欧云.md](../Hailuo-2.3/Hailuo-2.3_派欧云.md) | 否 |
112
+ | Wan 2.5 Preview | [Wan-2.5-Preview_派欧云.md](../Wan-2.5-Preview/Wan-2.5-Preview_派欧云.md) | 否 |
113
+ | Wan 2.6 | [Wan-2.6_派欧云.md](../Wan-2.6/Wan-2.6_派欧云.md) | 否 |
114
+ | Wan 2.7 | [Wan-2.7_派欧云.md](../Wan-2.7/Wan-2.7_派欧云.md) | 否 |
115
+ | MiniMax Speech | [MiniMax-Speech_派欧云.md](../MiniMax-Speech/MiniMax-Speech_派欧云.md) | 否 |
116
+
117
+ ## 6. 适配要点
118
+
119
+ - **请求体结构在 Wan 家族内部就不统一**:Wan 2.5 / 2.6 是 `{input: {...}, parameters: {...}}` 嵌套结构,Wan 2.7 是**扁平结构**。同家族不同版本不能共用 builder。
120
+ - **同一模型的 t2v 与 i2v 分辨率字段名不同**:t2v 用 `size`(必须填 `1920*1080` 这类具体像素,不接受档位名或比例),i2v 用 `resolution`(枚举 `480P`/`720P`/`1080P`)。Wan 2.5、2.6、2.7 都是这个规律,极易踩坑。
121
+ - **计价维度差异大**:Wan 2.5 / 2.6 按**视频条数**计费(分辨率 × 时长查表),Wan 2.7 与 Kling 3.0 按**秒**计费。同供应商内不能套用同一套计价模板。
122
+ - **音频开关会改变单价档位**:Kling 3.0 的 `sound` 字段为 `true` 时单价上浮 50%;Wan 2.7 r2v 的 `audio` 字段同样影响费用。计价函数必须读这个字段。
123
+ - 项目默认隐藏的参数(`seed`、负面提示词):PPIO 多数模型都提供 `seed` 与 `negative_prompt` 字段,按项目约定**不显示、不请求**。
124
+ - `output_format` 按项目约定不显示且不请求。
125
+
126
+ ## 7. 原始链接索引
127
+
128
+ | 信息 | 链接 | 是否需登录 |
129
+ |---|---|---|
130
+ | 文档全量索引(llms.txt) | https://ppio.com/docs/llms.txt | 否 |
131
+ | 定价页(图像/视频/音频 tab) | https://ppio.com/pricing | 否 |
132
+ | 模型注册表 API(定价页自身调用) | https://api-server.ppio.com/v1/product/multimodal-model/list?returnSchema=true | 否 |
133
+ | 商品批量价格 API(POST) | https://api-server.ppio.com/v1/product/batch-price | 否 |
134
+ | 统一视频接口配置(23 个 model 取值 + JSON Schema) | https://api.ppio.com/v3/admin/video-unify-api/config | 否 |
135
+ | LLM 更新日志(含历史上下架记录) | https://ppio.com/docs/announcement/changelog-llm.md | 否 |
136
+ | API 鉴权方式 | https://ppio.com/docs/api/authentication | 否 |
137
+ | API 错误码 | https://ppio.com/docs/api/error-codes | 否 |
138
+ | API Key 管理 | https://ppio.com/settings/key-management | **是** |
139
+ # 2026-09-11:文本检索能力
140
+
141
+ 公开来源:https://ppio.com/model/embedding/baai/bge-m3 、https://ppio.com/model/reranker/baai/bge-reranker-v2-m3 、https://ppio.com/docs/models/reference-llm-create-rerank 、https://ppio.com/docs/announcement/announcement 。
142
+
143
+ - Bearer JSON POST,根地址 `https://api.ppio.com/openai/v1`;Embedding `/embeddings`,Rerank `/rerank`。注意与旧文档 `/v3/openai` 不混用。
144
+ - `baai/bge-m3`:input 字符串或数组,encoding_format=float;8192 token上下文,返回 data[].embedding/index。输入0.07元/百万 token,输出0。
145
+ - `baai/bge-reranker-v2-m3`:model/query/documents/top_n;返回 results[].index/relevance_score、可选 document.text、usage.prompt_tokens/completion_tokens/total_tokens。模型页显示输入/输出均0.07元/百万 token。未公布最大文档数量,不猜限制。
146
+ - `qwen/qwen3-reranker-8b` 已在2026-01-08下线公告中列出,不因旧上架文章仍可搜索就重新加入。
147
+ - 同步成功必须有合法结果;错误响应、缺失/重复/越界索引、非有限数值拒绝。取消沿用 AbortSignal,不自动截断或重试。SDK 返回对应输入文本,不依赖供应商是否回传原文。