@henjicc/ai-sdk 0.2.8 → 0.4.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.
- package/CHANGELOG.md +157 -141
- package/README.md +497 -455
- package/dist/capabilities/embedding/bailian.d.ts +23 -0
- package/dist/capabilities/embedding/bailian.js +10 -0
- package/dist/capabilities/embedding/bigmodel.d.ts +9 -0
- package/dist/capabilities/embedding/bigmodel.js +5 -0
- package/dist/capabilities/embedding/index.d.ts +1 -0
- package/dist/capabilities/embedding/index.js +1 -0
- package/dist/capabilities/embedding/ppio.d.ts +7 -0
- package/dist/capabilities/embedding/ppio.js +5 -0
- package/dist/capabilities/embedding/siliconflow.d.ts +21 -0
- package/dist/capabilities/embedding/siliconflow.js +10 -0
- package/dist/capabilities/embedding/volcengine.d.ts +10 -0
- package/dist/capabilities/embedding/volcengine.js +6 -0
- package/dist/capabilities/rerank/bailian.d.ts +21 -0
- package/dist/capabilities/rerank/bailian.js +14 -0
- package/dist/capabilities/rerank/bigmodel.d.ts +9 -0
- package/dist/capabilities/rerank/bigmodel.js +5 -0
- package/dist/capabilities/rerank/index.d.ts +1 -0
- package/dist/capabilities/rerank/index.js +1 -0
- package/dist/capabilities/rerank/ppio.d.ts +7 -0
- package/dist/capabilities/rerank/ppio.js +5 -0
- package/dist/capabilities/rerank/siliconflow.d.ts +21 -0
- package/dist/capabilities/rerank/siliconflow.js +10 -0
- package/dist/capabilities/retrieval/http.d.ts +3 -0
- package/dist/capabilities/retrieval/http.js +48 -0
- package/dist/capabilities/retrieval/module.d.ts +11 -0
- package/dist/capabilities/retrieval/module.js +110 -0
- package/dist/capabilities/retrieval/types.d.ts +54 -0
- package/dist/capabilities/retrieval/types.js +1 -0
- package/dist/capabilities/retrieval/validation.d.ts +10 -0
- package/dist/capabilities/retrieval/validation.js +65 -0
- package/dist/capabilities/types.d.ts +1 -1
- package/dist/catalog/apimart/gpt-image-2.5.model.d.ts +2 -0
- package/dist/catalog/apimart/gpt-image-2.5.model.js +51 -0
- package/dist/catalog/fal/gpt-image-2.5.model.d.ts +2 -0
- package/dist/catalog/fal/gpt-image-2.5.model.js +53 -0
- package/dist/catalog/fal/ic-light-v2.model.js +9 -13
- package/dist/catalog/grsai/gpt-image-2.5.model.d.ts +2 -0
- package/dist/catalog/grsai/gpt-image-2.5.model.js +54 -0
- package/dist/catalog/grsai/gptImage25Sizes.d.ts +1 -0
- package/dist/catalog/grsai/gptImage25Sizes.js +76 -0
- package/dist/catalog/index.js +112 -104
- package/dist/catalog/kie/gpt-image-2.5.model.d.ts +2 -0
- package/dist/catalog/kie/gpt-image-2.5.model.js +38 -0
- package/dist/catalog/shared/gptImage25.d.ts +16 -0
- package/dist/catalog/shared/gptImage25.js +48 -0
- package/dist/catalog/shared/gptImage25Pricing.d.ts +12 -0
- package/dist/catalog/shared/gptImage25Pricing.js +508 -0
- package/dist/llm/defaults.d.ts +1 -1
- package/dist/llm/defaults.js +1 -1
- package/dist/llm/discovery.d.ts +2 -0
- package/dist/llm/discovery.js +16 -5
- package/dist/llm/modelCatalogEntries.js +32 -0
- package/dist/llm/providerPresets.d.ts +3 -1
- package/dist/llm/providerPresets.js +6 -3
- package/dist/llm/providerReasoningRequest.js +14 -1
- package/dist/llm/siliconflow/index.d.ts +21 -0
- package/dist/llm/siliconflow/index.js +32 -0
- package/dist/llm/siliconflow/preset.d.ts +6 -0
- package/dist/llm/siliconflow/preset.js +33 -0
- package/dist/packs/models/apimart/gpt-image-2.5.d.ts +6 -0
- package/dist/packs/models/apimart/gpt-image-2.5.js +7 -0
- package/dist/packs/models/fal/gpt-image-2.5.d.ts +6 -0
- package/dist/packs/models/fal/gpt-image-2.5.js +7 -0
- package/dist/packs/models/grsai/gpt-image-2.5.d.ts +6 -0
- package/dist/packs/models/grsai/gpt-image-2.5.js +7 -0
- package/dist/packs/models/kie/gpt-image-2.5.d.ts +6 -0
- package/dist/packs/models/kie/gpt-image-2.5.js +7 -0
- package/dist/packs/provider-packs/apimart.d.ts +1 -1
- package/dist/packs/provider-packs/apimart.js +21 -20
- package/dist/packs/provider-packs/fal.d.ts +1 -1
- package/dist/packs/provider-packs/fal.js +37 -36
- package/dist/packs/provider-packs/grsai.d.ts +1 -1
- package/dist/packs/provider-packs/grsai.js +6 -5
- package/dist/packs/provider-packs/kie.d.ts +1 -1
- package/dist/packs/provider-packs/kie.js +28 -27
- package/dist/packs/tool-models/fal/{qwen-image-edit-2509-multiple-angles.d.ts → qwen-image-edit-2511-multiple-angles.d.ts} +1 -1
- package/dist/packs/tool-models/fal/{qwen-image-edit-2509-multiple-angles.js → qwen-image-edit-2511-multiple-angles.js} +1 -1
- package/dist/packs/tool-packs/fal-multi-angle-tools.js +1 -1
- package/dist/tool-packs/fal-multi-angle/models/qwen-image-edit-2511-multiple-angles.model.d.ts +2 -0
- 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
- package/docs/README.md +26 -26
- package/docs/consumers.md +56 -48
- package/docs/llm-adaptation/README.md +139 -137
- package/docs/llm-adaptation//344/276/233/345/272/224/345/225/206/DeepSeek.md +103 -91
- package/docs/llm-adaptation//344/276/233/345/272/224/345/225/206/Kimi.md +75 -75
- package/docs/llm-adaptation//344/276/233/345/272/224/345/225/206/MiniMax.md +84 -84
- package/docs/llm-adaptation//344/276/233/345/272/224/345/225/206//345/260/217/347/261/263MiMo.md +85 -85
- package/docs/llm-adaptation//344/276/233/345/272/224/345/225/206//346/231/272/350/260/261GLM.md +232 -232
- 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
- package/docs/llm-adaptation//344/276/233/345/272/224/345/225/206//347/231/276/347/202/274Qwen.md +84 -84
- 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
- package/docs/model-adaptation/Bria-Eraser/Bria-Eraser_Fal.md +32 -32
- 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
- package/docs/model-adaptation/ControlLight/ControlLight_Fal.md +85 -85
- 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
- package/docs/model-adaptation/Finegrain-Eraser/Finegrain-Eraser_Fal.md +31 -31
- package/docs/model-adaptation/Flux-Pro-Erase/Flux-Pro-Erase_Fal.md +34 -34
- package/docs/model-adaptation/Fun-ASR/Fun-ASR_/347/231/276/347/202/274.md +43 -43
- 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
- package/docs/model-adaptation/Fun-ASR-Realtime/Fun-ASR-Realtime_/347/231/276/347/202/274.md +37 -37
- 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
- package/docs/model-adaptation/GLM-5.3-Flash/GLM-5.3-Flash_/346/231/272/350/260/261.md +207 -207
- package/docs/model-adaptation/GPT-Image-2/GPT-Image-2_APIMart.md +173 -173
- package/docs/model-adaptation/GPT-Image-2/GPT-Image-2_Fal.md +94 -94
- package/docs/model-adaptation/GPT-Image-2/GPT-Image-2_Grsai.md +137 -137
- package/docs/model-adaptation/GPT-Image-2/GPT-Image-2_KIE.md +93 -93
- package/docs/model-adaptation/GPT-Image-2.5/GPT-Image-2.5_APIMart.md +66 -0
- package/docs/model-adaptation/GPT-Image-2.5/GPT-Image-2.5_Fal.md +55 -0
- package/docs/model-adaptation/GPT-Image-2.5/GPT-Image-2.5_Grsai.md +53 -0
- package/docs/model-adaptation/GPT-Image-2.5/GPT-Image-2.5_KIE.md +55 -0
- package/docs/model-adaptation/GPT-OSS-20B/GPT-OSS-20B_Groq.md +62 -62
- package/docs/model-adaptation/Gemini-Omni-Flash/Gemini-Omni-Flash_APIMart.md +124 -124
- package/docs/model-adaptation/Gemini-Omni-Flash/Gemini-Omni-Flash_Fal.md +84 -84
- package/docs/model-adaptation/Gemini-Omni-Flash/Gemini-Omni-Flash_KIE.md +129 -129
- package/docs/model-adaptation/Grok-Imagine/Grok-Imagine_KIE.md +36 -36
- package/docs/model-adaptation/Grok-Imagine-2.0/Grok-Imagine-2.0_APIMart.md +250 -250
- package/docs/model-adaptation/Grok-Imagine-2.0/Grok-Imagine-2.0_Fal.md +84 -84
- package/docs/model-adaptation/Grok-Imagine-2.0/Grok-Imagine-2.0_KIE.md +105 -105
- package/docs/model-adaptation/Hailuo-02/Hailuo-02_Fal.md +93 -93
- package/docs/model-adaptation/Hailuo-02/Hailuo-02_KIE.md +56 -56
- package/docs/model-adaptation/Hailuo-2.3/Hailuo-2.3_Fal.md +88 -88
- package/docs/model-adaptation/Hailuo-2.3/Hailuo-2.3_KIE.md +51 -51
- package/docs/model-adaptation/Hailuo-2.3/Hailuo-2.3_/346/264/276/346/254/247/344/272/221.md +70 -70
- package/docs/model-adaptation/IC-Light-v2/IC-Light-v2_Fal.md +97 -94
- 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
- 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
- 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
- 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
- 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
- package/docs/model-adaptation/Kling-3.0/Kling-3.0_APIMart.md +112 -112
- package/docs/model-adaptation/Kling-3.0/Kling-3.0_Fal.md +89 -89
- package/docs/model-adaptation/Kling-3.0/Kling-3.0_KIE.md +106 -106
- package/docs/model-adaptation/Kling-3.0/Kling-3.0_/346/264/276/346/254/247/344/272/221.md +119 -119
- package/docs/model-adaptation/Kling-3.0-Omni/Kling-3.0-Omni_APIMart.md +125 -125
- package/docs/model-adaptation/Kling-3.0-Omni/Kling-3.0-Omni_Fal.md +107 -107
- package/docs/model-adaptation/Kling-3.0-Omni/Kling-3.0-Omni_KIE.md +143 -143
- package/docs/model-adaptation/Kling-3.0-Turbo/Kling-3.0-Turbo_APIMart.md +85 -85
- package/docs/model-adaptation/Kling-3.0-Turbo/Kling-3.0-Turbo_Fal.md +83 -83
- package/docs/model-adaptation/Kling-3.0-Turbo/Kling-3.0-Turbo_KIE.md +84 -84
- package/docs/model-adaptation/Midjourney/Midjourney_APIMart.md +396 -396
- package/docs/model-adaptation/MiniMax-H3/MiniMax-H3_APIMart.md +234 -234
- package/docs/model-adaptation/MiniMax-H3/MiniMax-H3_Fal.md +108 -108
- package/docs/model-adaptation/MiniMax-H3/MiniMax-H3_KIE.md +111 -111
- package/docs/model-adaptation/MiniMax-Speech/MiniMax-Speech_/346/264/276/346/254/247/344/272/221.md +170 -170
- package/docs/model-adaptation/Nano-Banana-2/Nano-Banana-2_APIMart.md +89 -89
- package/docs/model-adaptation/Nano-Banana-2/Nano-Banana-2_Fal.md +99 -99
- package/docs/model-adaptation/Nano-Banana-2/Nano-Banana-2_Grsai.md +82 -82
- package/docs/model-adaptation/Nano-Banana-2/Nano-Banana-2_KIE.md +70 -70
- package/docs/model-adaptation/Nano-Banana-2-Lite/Nano-Banana-2-Lite_APIMart.md +79 -79
- package/docs/model-adaptation/Nano-Banana-2-Lite/Nano-Banana-2-Lite_Grsai.md +65 -65
- package/docs/model-adaptation/Nano-Banana-2-Lite/Nano-Banana-2-Lite_KIE.md +64 -64
- package/docs/model-adaptation/Nano-Banana-Pro/Nano-Banana-Pro_APIMart.md +83 -83
- package/docs/model-adaptation/Nano-Banana-Pro/Nano-Banana-Pro_Fal.md +89 -89
- package/docs/model-adaptation/Nano-Banana-Pro/Nano-Banana-Pro_Grsai.md +82 -82
- package/docs/model-adaptation/Nano-Banana-Pro/Nano-Banana-Pro_KIE.md +64 -64
- 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
- package/docs/model-adaptation/Qwen-Image-3.0/Qwen-Image-3.0_APIMart.md +117 -117
- package/docs/model-adaptation/Qwen-Image-3.0/Qwen-Image-3.0_Fal.md +84 -84
- package/docs/model-adaptation/Qwen-Image-3.0/Qwen-Image-3.0_KIE.md +103 -103
- package/docs/model-adaptation/Qwen-Image-3.0/Qwen-Image-3.0_/347/231/276/347/202/274.md +138 -138
- 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
- package/docs/model-adaptation/Qwen-MT-Flash/Qwen-MT-Flash_/347/231/276/347/202/274.md +47 -47
- package/docs/model-adaptation/Qwen-MT-Lite/Qwen-MT-Lite_/347/231/276/347/202/274.md +39 -39
- package/docs/model-adaptation/Qwen-MT-Plus/Qwen-MT-Plus_/347/231/276/347/202/274.md +39 -39
- package/docs/model-adaptation/Qwen3-ASR-Flash/Qwen3-ASR-Flash_/347/231/276/347/202/274.md +40 -40
- 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
- package/docs/model-adaptation/Qwen3-ASR-Flash-Filetrans/Qwen3-ASR-Flash-Filetrans_/347/231/276/347/202/274.md +41 -41
- package/docs/model-adaptation/Qwen3-ASR-Flash-Realtime/Qwen3-ASR-Flash-Realtime_/347/231/276/347/202/274.md +35 -35
- 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
- package/docs/model-adaptation/README.md +313 -295
- 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
- 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
- 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
- package/docs/model-adaptation/Seedance-2.0/Seedance-2.0_APIMart.md +121 -121
- package/docs/model-adaptation/Seedance-2.0/Seedance-2.0_Fal.md +97 -97
- package/docs/model-adaptation/Seedance-2.0/Seedance-2.0_KIE.md +86 -86
- package/docs/model-adaptation/Seedance-2.0-Fast/Seedance-2.0-Fast_APIMart.md +89 -89
- package/docs/model-adaptation/Seedance-2.0-Fast/Seedance-2.0-Fast_Fal.md +95 -95
- package/docs/model-adaptation/Seedance-2.0-Fast/Seedance-2.0-Fast_KIE.md +78 -78
- package/docs/model-adaptation/Seedance-2.0-Mini/Seedance-2.0-Mini_APIMart.md +89 -89
- package/docs/model-adaptation/Seedance-2.0-Mini/Seedance-2.0-Mini_Fal.md +96 -96
- package/docs/model-adaptation/Seedance-2.0-Mini/Seedance-2.0-Mini_KIE.md +78 -78
- package/docs/model-adaptation/Seedance-2.5/Seedance-2.5_APIMart.md +212 -212
- package/docs/model-adaptation/Seedance-2.5/Seedance-2.5_Fal.md +94 -94
- package/docs/model-adaptation/Seedance-2.5/Seedance-2.5_KIE.md +89 -89
- package/docs/model-adaptation/Seedream-5.0-Lite/Seedream-5.0-Lite_APIMart.md +106 -106
- package/docs/model-adaptation/Seedream-5.0-Lite/Seedream-5.0-Lite_Fal.md +91 -91
- package/docs/model-adaptation/Seedream-5.0-Lite/Seedream-5.0-Lite_KIE.md +89 -89
- 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
- package/docs/model-adaptation/Seedream-5.0-Pro/Seedream-5.0-Pro_APIMart.md +194 -194
- package/docs/model-adaptation/Seedream-5.0-Pro/Seedream-5.0-Pro_Fal.md +100 -100
- package/docs/model-adaptation/Seedream-5.0-Pro/Seedream-5.0-Pro_KIE.md +141 -141
- 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
- package/docs/model-adaptation/SenseVoiceSmall/SenseVoiceSmall_/347/241/205/345/237/272/346/265/201/345/212/250.md +69 -69
- package/docs/model-adaptation/TeleSpeechASR/TeleSpeechASR_/347/241/205/345/237/272/346/265/201/345/212/250.md +72 -72
- 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
- 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
- package/docs/model-adaptation/Wan-2.5-Preview/Wan-2.5-Preview_/346/264/276/346/254/247/344/272/221.md +82 -82
- package/docs/model-adaptation/Wan-2.6/Wan-2.6_/346/264/276/346/254/247/344/272/221.md +84 -84
- package/docs/model-adaptation/Wan-2.7/Wan-2.7_/346/264/276/346/254/247/344/272/221.md +122 -122
- package/docs/model-adaptation/Whisper-Large-v3/Whisper-Large-v3_Groq.md +76 -76
- package/docs/model-adaptation/Whisper-Large-v3-Turbo/Whisper-Large-v3-Turbo_Groq.md +75 -75
- package/docs/model-adaptation/Z-Image-Turbo/Z-Image-Turbo_APIMart.md +88 -88
- package/docs/model-adaptation/Z-Image-Turbo/Z-Image-Turbo_Fal.md +95 -95
- package/docs/model-adaptation/Z-Image-Turbo/Z-Image-Turbo_KIE.md +71 -71
- package/docs/model-adaptation/Z-Image-Turbo/Z-Image-Turbo_/347/231/276/347/202/274.md +122 -122
- package/docs/model-adaptation/Z-Image-Turbo/Z-Image-Turbo_/351/255/224/346/220/255.md +97 -97
- package/docs/model-adaptation//344/276/233/345/272/224/345/225/206/APIMart.md +238 -238
- package/docs/model-adaptation//344/276/233/345/272/224/345/225/206/Fal.md +172 -172
- package/docs/model-adaptation//344/276/233/345/272/224/345/225/206/Groq.md +121 -121
- package/docs/model-adaptation//344/276/233/345/272/224/345/225/206/Grsai.md +217 -217
- package/docs/model-adaptation//344/276/233/345/272/224/345/225/206/KIE.md +131 -131
- 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
- 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
- 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
- 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
- package/docs/model-adaptation//344/276/233/345/272/224/345/225/206//347/231/276/347/202/274.md +237 -227
- 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 +140 -75
- package/docs/model-adaptation//344/276/233/345/272/224/345/225/206//351/255/224/346/220/255.md +207 -207
- 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
- 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
- package/docs//346/216/245/345/205/245/346/214/207/345/215/227/Electron.md +77 -77
- package/docs//346/216/245/345/205/245/346/214/207/345/215/227/Tauri.md +81 -81
- package/docs//346/216/245/345/205/245/346/214/207/345/215/227/UXP.md +169 -169
- 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
- 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
- package/examples/form-renderer/README.md +17 -17
- package/examples/form-renderer/cli.ts +32 -32
- package/examples/form-renderer/index.ts +144 -144
- package/examples/form-renderer/package.json +16 -16
- package/examples/form-renderer/tsconfig.json +14 -14
- package/examples/llm-chat/README.md +32 -32
- package/examples/llm-chat/index.ts +100 -100
- package/examples/llm-chat/package.json +19 -19
- package/examples/llm-chat/tsconfig.json +14 -14
- package/examples/minimal-node/README.md +31 -31
- package/examples/minimal-node/index.ts +138 -138
- package/examples/minimal-node/package.json +17 -17
- package/examples/minimal-node/tsconfig.json +14 -14
- package/package.json +255 -195
- package/dist/tool-packs/fal-multi-angle/models/qwen-image-edit-2509-multiple-angles.model.d.ts +0 -2
- 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
|
@@ -32,6 +32,15 @@ function pickEffort(effort, supported) {
|
|
|
32
32
|
return picked;
|
|
33
33
|
}
|
|
34
34
|
const PROVIDER_REASONING_BODY = {
|
|
35
|
+
// 硅基流动的思考开关与原厂不同;强度字段只发送给端点文档明确列举的模型。
|
|
36
|
+
siliconflow: (reasoning, body) => ({
|
|
37
|
+
enable_thinking: reasoning.enabled,
|
|
38
|
+
...(reasoning.enabled && typeof body.model === 'string' && [
|
|
39
|
+
'deepseek-ai/deepseek-v4-flash', 'pro/deepseek-ai/deepseek-v4', 'pro/zai-org/glm-5.2',
|
|
40
|
+
].includes(body.model.toLowerCase())
|
|
41
|
+
? { reasoning_effort: reasoning.effort === 'xhigh' || reasoning.effort === 'max' ? 'max' : 'high' }
|
|
42
|
+
: {}),
|
|
43
|
+
}),
|
|
35
44
|
// DeepSeek:官方要求 thinking 与 reasoning_effort 同时传;文档没有列举离散档位,
|
|
36
45
|
// 沿用此前 SDK 路径已有的 high / max 两档映射。
|
|
37
46
|
deepseek: reasoning => (reasoning.enabled
|
|
@@ -97,5 +106,9 @@ export function applyProviderReasoningRequestBody(providerId, adapter, body, rea
|
|
|
97
106
|
return body;
|
|
98
107
|
const key = resolveReasoningKey(providerId, adapter);
|
|
99
108
|
const build = key ? PROVIDER_REASONING_BODY[key] : defaultReasoningBody;
|
|
100
|
-
|
|
109
|
+
if (key === 'siliconflow') {
|
|
110
|
+
const { thinking: _thinking, reasoning_effort: _effort, ...clean } = body;
|
|
111
|
+
return { ...clean, ...build(reasoning, clean) };
|
|
112
|
+
}
|
|
113
|
+
return { ...body, ...build(reasoning, body) };
|
|
101
114
|
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { RuntimeContext } from '../../runtime/RuntimeContext.js';
|
|
2
|
+
import { type LlmChatExecutionOptions, type LlmChatStreamHooks } from '../chat.js';
|
|
3
|
+
import type { LlmChatRequestDto, LlmStreamEmitter } from '../chatTypes.js';
|
|
4
|
+
import { type DiscoverModelsOptions } from '../discovery.js';
|
|
5
|
+
export * from './preset.js';
|
|
6
|
+
export type SiliconflowChatRequest = Omit<LlmChatRequestDto, 'providerId' | 'providerFamilyId' | 'modelId' | 'adapter' | 'baseUrl'> & {
|
|
7
|
+
providerId?: string;
|
|
8
|
+
modelId?: string;
|
|
9
|
+
baseUrl?: string;
|
|
10
|
+
};
|
|
11
|
+
/** 未知动态模型仍可调用;能力不按名字猜测,可由宿主显式提供。 */
|
|
12
|
+
export declare function createSiliconflowChatRequest(request: SiliconflowChatRequest): LlmChatRequestDto;
|
|
13
|
+
export declare function runSiliconflowChatStream(request: SiliconflowChatRequest, taskId: string, emit: LlmStreamEmitter, runtime: RuntimeContext, options?: LlmChatExecutionOptions & {
|
|
14
|
+
hooks?: LlmChatStreamHooks;
|
|
15
|
+
}): Promise<import("../index.js").LlmChatStreamOutcome>;
|
|
16
|
+
/** 分类在服务器端完成;保留不在内置预设中的新模型,不自动注册或发起推理。 */
|
|
17
|
+
export declare function discoverSiliconflowModels(runtime: RuntimeContext, options?: Omit<DiscoverModelsOptions, 'providerFamilyId' | 'endpointProfile' | 'requireCredential'> & {
|
|
18
|
+
baseUrl?: string;
|
|
19
|
+
providerId?: string;
|
|
20
|
+
}): Promise<import("../index.js").DiscoveredModelItem[]>;
|
|
21
|
+
export type { RuntimeContext, LlmStreamEmitter, LlmChatExecutionOptions, LlmChatStreamHooks };
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { createLlmCapabilitiesForModel } from '../defaults.js';
|
|
2
|
+
import { runLlmChatStream } from '../chat.js';
|
|
3
|
+
import { discoverModels } from '../discovery.js';
|
|
4
|
+
import { SILICONFLOW_BASE_URL, SILICONFLOW_DEFAULT_MODEL_ID, SILICONFLOW_PROVIDER_PRESET } from './preset.js';
|
|
5
|
+
export * from './preset.js';
|
|
6
|
+
/** 未知动态模型仍可调用;能力不按名字猜测,可由宿主显式提供。 */
|
|
7
|
+
export function createSiliconflowChatRequest(request) {
|
|
8
|
+
const modelId = request.modelId?.trim() || SILICONFLOW_DEFAULT_MODEL_ID;
|
|
9
|
+
const known = SILICONFLOW_PROVIDER_PRESET.modelIds.includes(modelId);
|
|
10
|
+
return {
|
|
11
|
+
...request,
|
|
12
|
+
providerId: request.providerId ?? 'siliconflow',
|
|
13
|
+
providerFamilyId: 'siliconflow',
|
|
14
|
+
modelId,
|
|
15
|
+
adapter: 'openai',
|
|
16
|
+
baseUrl: request.baseUrl?.trim() || SILICONFLOW_BASE_URL,
|
|
17
|
+
capabilities: request.capabilities ?? (known ? {
|
|
18
|
+
...createLlmCapabilitiesForModel(modelId),
|
|
19
|
+
...SILICONFLOW_PROVIDER_PRESET.modelCapabilities?.[modelId],
|
|
20
|
+
} : undefined),
|
|
21
|
+
reasoning: request.reasoning ?? (known ? { ...SILICONFLOW_PROVIDER_PRESET.reasoning } : undefined),
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
export async function runSiliconflowChatStream(request, taskId, emit, runtime, options = {}) {
|
|
25
|
+
const { hooks = {}, ...execution } = options;
|
|
26
|
+
return runLlmChatStream(createSiliconflowChatRequest(request), taskId, emit, runtime, hooks, execution);
|
|
27
|
+
}
|
|
28
|
+
/** 分类在服务器端完成;保留不在内置预设中的新模型,不自动注册或发起推理。 */
|
|
29
|
+
export async function discoverSiliconflowModels(runtime, options = {}) {
|
|
30
|
+
const { baseUrl = SILICONFLOW_BASE_URL, providerId = 'siliconflow', ...discovery } = options;
|
|
31
|
+
return discoverModels(providerId, baseUrl, runtime, { ...discovery, providerFamilyId: 'siliconflow', requireCredential: true });
|
|
32
|
+
}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { LlmProviderPreset } from '../providerPresets.js';
|
|
2
|
+
export declare const SILICONFLOW_PROVIDER_ID = "siliconflow";
|
|
3
|
+
export declare const SILICONFLOW_BASE_URL = "https://api.siliconflow.cn/v1";
|
|
4
|
+
export declare const SILICONFLOW_DEFAULT_MODEL_ID = "deepseek-ai/DeepSeek-V4-Flash";
|
|
5
|
+
/** 国内托管能力以硅基流动为准,不继承原厂专属协议与未确认的输出上限。 */
|
|
6
|
+
export declare const SILICONFLOW_PROVIDER_PRESET: LlmProviderPreset;
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { findProviderMetadata } from '../../providers/metadata.js';
|
|
2
|
+
export const SILICONFLOW_PROVIDER_ID = 'siliconflow';
|
|
3
|
+
export const SILICONFLOW_BASE_URL = 'https://api.siliconflow.cn/v1';
|
|
4
|
+
export const SILICONFLOW_DEFAULT_MODEL_ID = 'deepseek-ai/DeepSeek-V4-Flash';
|
|
5
|
+
const metadata = findProviderMetadata(SILICONFLOW_PROVIDER_ID);
|
|
6
|
+
if (!metadata)
|
|
7
|
+
throw new Error('[provider_metadata_missing] siliconflow');
|
|
8
|
+
/** 国内托管能力以硅基流动为准,不继承原厂专属协议与未确认的输出上限。 */
|
|
9
|
+
export const SILICONFLOW_PROVIDER_PRESET = {
|
|
10
|
+
providerId: SILICONFLOW_PROVIDER_ID,
|
|
11
|
+
displayName: '硅基流动',
|
|
12
|
+
adapter: 'openai',
|
|
13
|
+
apiProtocol: 'openai-compatible',
|
|
14
|
+
baseUrl: SILICONFLOW_BASE_URL,
|
|
15
|
+
reasoning: { enabled: true, effort: 'high' },
|
|
16
|
+
reasoningConfigurable: true,
|
|
17
|
+
modelIds: [
|
|
18
|
+
SILICONFLOW_DEFAULT_MODEL_ID,
|
|
19
|
+
'zai-org/GLM-5.3',
|
|
20
|
+
'moonshotai/Kimi-K2.7-Code',
|
|
21
|
+
'Qwen/Qwen3.8-27B',
|
|
22
|
+
],
|
|
23
|
+
modelCapabilities: {
|
|
24
|
+
'zai-org/GLM-5.3': {
|
|
25
|
+
image: false, video: false, audio: false, file: false,
|
|
26
|
+
sampling: true, contextWindow: 1_048_576, maxOutputTokens: null,
|
|
27
|
+
},
|
|
28
|
+
},
|
|
29
|
+
websiteUrl: metadata.websiteUrl,
|
|
30
|
+
apiKeyUrl: metadata.apiKeyUrl,
|
|
31
|
+
docs: 'docs/model-adaptation/供应商/硅基流动.md',
|
|
32
|
+
note: '预设只列常用模型;通过模型发现获取账号可用清单。这里的 DeepSeek V4 Flash 与 DeepSeek 官方 V4.1 Flash 是不同模型。',
|
|
33
|
+
};
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
/** 由 scripts/generate-catalog-index.cjs 自动生成;`pack` 是完整执行单元,`model` 仅供低层目录用途。 */
|
|
2
|
+
import model from '../../../catalog/apimart/gpt-image-2.5.model.js';
|
|
3
|
+
import type { GenerationClientProviderRegistration, GenerationPack } from '../../../generation/core.js';
|
|
4
|
+
export { model };
|
|
5
|
+
export declare const provider: GenerationClientProviderRegistration;
|
|
6
|
+
export declare const pack: GenerationPack;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/** 由 scripts/generate-catalog-index.cjs 自动生成;`pack` 是完整执行单元,`model` 仅供低层目录用途。 */
|
|
2
|
+
import model from '../../../catalog/apimart/gpt-image-2.5.model.js';
|
|
3
|
+
import * as adapter from '../../../providers/apimart.js';
|
|
4
|
+
import { preprocess } from '../../../upload/provider-preprocessors/apimart.js';
|
|
5
|
+
export { model };
|
|
6
|
+
export const provider = { id: 'apimart', adapter, preprocess };
|
|
7
|
+
export const pack = { models: [model], providers: [provider] };
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
/** 由 scripts/generate-catalog-index.cjs 自动生成;`pack` 是完整执行单元,`model` 仅供低层目录用途。 */
|
|
2
|
+
import model from '../../../catalog/fal/gpt-image-2.5.model.js';
|
|
3
|
+
import type { GenerationClientProviderRegistration, GenerationPack } from '../../../generation/core.js';
|
|
4
|
+
export { model };
|
|
5
|
+
export declare const provider: GenerationClientProviderRegistration;
|
|
6
|
+
export declare const pack: GenerationPack;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/** 由 scripts/generate-catalog-index.cjs 自动生成;`pack` 是完整执行单元,`model` 仅供低层目录用途。 */
|
|
2
|
+
import model from '../../../catalog/fal/gpt-image-2.5.model.js';
|
|
3
|
+
import * as adapter from '../../../providers/fal.js';
|
|
4
|
+
import { preprocess } from '../../../upload/provider-preprocessors/fal.js';
|
|
5
|
+
export { model };
|
|
6
|
+
export const provider = { id: 'fal', adapter, preprocess };
|
|
7
|
+
export const pack = { models: [model], providers: [provider] };
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
/** 由 scripts/generate-catalog-index.cjs 自动生成;`pack` 是完整执行单元,`model` 仅供低层目录用途。 */
|
|
2
|
+
import model from '../../../catalog/grsai/gpt-image-2.5.model.js';
|
|
3
|
+
import type { GenerationClientProviderRegistration, GenerationPack } from '../../../generation/core.js';
|
|
4
|
+
export { model };
|
|
5
|
+
export declare const provider: GenerationClientProviderRegistration;
|
|
6
|
+
export declare const pack: GenerationPack;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/** 由 scripts/generate-catalog-index.cjs 自动生成;`pack` 是完整执行单元,`model` 仅供低层目录用途。 */
|
|
2
|
+
import model from '../../../catalog/grsai/gpt-image-2.5.model.js';
|
|
3
|
+
import * as adapter from '../../../providers/grsai.js';
|
|
4
|
+
import { preprocess } from '../../../upload/provider-preprocessors/data-uri.js';
|
|
5
|
+
export { model };
|
|
6
|
+
export const provider = { id: 'grsai', adapter, preprocess };
|
|
7
|
+
export const pack = { models: [model], providers: [provider] };
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
/** 由 scripts/generate-catalog-index.cjs 自动生成;`pack` 是完整执行单元,`model` 仅供低层目录用途。 */
|
|
2
|
+
import model from '../../../catalog/kie/gpt-image-2.5.model.js';
|
|
3
|
+
import type { GenerationClientProviderRegistration, GenerationPack } from '../../../generation/core.js';
|
|
4
|
+
export { model };
|
|
5
|
+
export declare const provider: GenerationClientProviderRegistration;
|
|
6
|
+
export declare const pack: GenerationPack;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/** 由 scripts/generate-catalog-index.cjs 自动生成;`pack` 是完整执行单元,`model` 仅供低层目录用途。 */
|
|
2
|
+
import model from '../../../catalog/kie/gpt-image-2.5.model.js';
|
|
3
|
+
import * as adapter from '../../../providers/kie.js';
|
|
4
|
+
import { preprocess } from '../../../upload/provider-preprocessors/kie.js';
|
|
5
|
+
export { model };
|
|
6
|
+
export const provider = { id: 'kie', adapter, preprocess };
|
|
7
|
+
export const pack = { models: [model], providers: [provider] };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import type { GenerationPack } from '../../generation/core.js';
|
|
2
|
-
export declare const models: readonly [import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition];
|
|
2
|
+
export declare const models: readonly [import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition];
|
|
3
3
|
export declare const pack: GenerationPack;
|
|
4
4
|
export default pack;
|
|
@@ -1,25 +1,26 @@
|
|
|
1
1
|
/** 由 scripts/generate-catalog-index.cjs 自动生成;只聚合当前供应商的真实模型文件。 */
|
|
2
2
|
import model1 from '../../catalog/apimart/gemini-omni-flash.model.js';
|
|
3
|
-
import model2 from '../../catalog/apimart/gpt-image-2.model.js';
|
|
4
|
-
import model3 from '../../catalog/apimart/
|
|
5
|
-
import model4 from '../../catalog/apimart/
|
|
6
|
-
import model5 from '../../catalog/apimart/kling-3.0-
|
|
7
|
-
import model6 from '../../catalog/apimart/kling-3.0.model.js';
|
|
8
|
-
import model7 from '../../catalog/apimart/
|
|
9
|
-
import model8 from '../../catalog/apimart/midjourney.model.js';
|
|
10
|
-
import model9 from '../../catalog/apimart/
|
|
11
|
-
import model10 from '../../catalog/apimart/
|
|
12
|
-
import model11 from '../../catalog/apimart/nano-banana-2.model.js';
|
|
13
|
-
import model12 from '../../catalog/apimart/nano-banana-
|
|
14
|
-
import model13 from '../../catalog/apimart/
|
|
15
|
-
import model14 from '../../catalog/apimart/
|
|
16
|
-
import model15 from '../../catalog/apimart/seedance-2.0-
|
|
17
|
-
import model16 from '../../catalog/apimart/seedance-2.0.model.js';
|
|
18
|
-
import model17 from '../../catalog/apimart/seedance-2.
|
|
19
|
-
import model18 from '../../catalog/apimart/
|
|
20
|
-
import model19 from '../../catalog/apimart/seedream-5.0-
|
|
21
|
-
import model20 from '../../catalog/apimart/
|
|
3
|
+
import model2 from '../../catalog/apimart/gpt-image-2.5.model.js';
|
|
4
|
+
import model3 from '../../catalog/apimart/gpt-image-2.model.js';
|
|
5
|
+
import model4 from '../../catalog/apimart/grok-imagine-2.0.model.js';
|
|
6
|
+
import model5 from '../../catalog/apimart/kling-3.0-omni.model.js';
|
|
7
|
+
import model6 from '../../catalog/apimart/kling-3.0-turbo.model.js';
|
|
8
|
+
import model7 from '../../catalog/apimart/kling-3.0.model.js';
|
|
9
|
+
import model8 from '../../catalog/apimart/midjourney-video.model.js';
|
|
10
|
+
import model9 from '../../catalog/apimart/midjourney.model.js';
|
|
11
|
+
import model10 from '../../catalog/apimart/minimax-h3.model.js';
|
|
12
|
+
import model11 from '../../catalog/apimart/nano-banana-2-lite.model.js';
|
|
13
|
+
import model12 from '../../catalog/apimart/nano-banana-2.model.js';
|
|
14
|
+
import model13 from '../../catalog/apimart/nano-banana-pro.model.js';
|
|
15
|
+
import model14 from '../../catalog/apimart/qwen-image-3.0.model.js';
|
|
16
|
+
import model15 from '../../catalog/apimart/seedance-2.0-fast.model.js';
|
|
17
|
+
import model16 from '../../catalog/apimart/seedance-2.0-mini.model.js';
|
|
18
|
+
import model17 from '../../catalog/apimart/seedance-2.0.model.js';
|
|
19
|
+
import model18 from '../../catalog/apimart/seedance-2.5.model.js';
|
|
20
|
+
import model19 from '../../catalog/apimart/seedream-5.0-lite.model.js';
|
|
21
|
+
import model20 from '../../catalog/apimart/seedream-5.0-pro.model.js';
|
|
22
|
+
import model21 from '../../catalog/apimart/z-image-turbo.model.js';
|
|
22
23
|
import { provider } from '../provider-adapters/apimart.js';
|
|
23
|
-
export const models = [model1, model2, model3, model4, model5, model6, model7, model8, model9, model10, model11, model12, model13, model14, model15, model16, model17, model18, model19, model20];
|
|
24
|
+
export const models = [model1, model2, model3, model4, model5, model6, model7, model8, model9, model10, model11, model12, model13, model14, model15, model16, model17, model18, model19, model20, model21];
|
|
24
25
|
export const pack = { models, providers: [provider] };
|
|
25
26
|
export default pack;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import type { GenerationPack } from '../../generation/core.js';
|
|
2
|
-
export declare const models: readonly [import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition];
|
|
2
|
+
export declare const models: readonly [import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition];
|
|
3
3
|
export declare const pack: GenerationPack;
|
|
4
4
|
export default pack;
|
|
@@ -1,42 +1,43 @@
|
|
|
1
1
|
/** 由 scripts/generate-catalog-index.cjs 自动生成;只聚合当前供应商的真实模型文件。 */
|
|
2
2
|
import model1 from '../../catalog/fal/bria-creative-upscale.model.js';
|
|
3
3
|
import model2 from '../../catalog/fal/gemini-omni-flash.model.js';
|
|
4
|
-
import model3 from '../../catalog/fal/gpt-image-2.model.js';
|
|
5
|
-
import model4 from '../../catalog/fal/
|
|
6
|
-
import model5 from '../../catalog/fal/
|
|
7
|
-
import model6 from '../../catalog/fal/hailuo-
|
|
8
|
-
import model7 from '../../catalog/fal/
|
|
9
|
-
import model8 from '../../catalog/fal/
|
|
10
|
-
import model9 from '../../catalog/fal/
|
|
11
|
-
import model10 from '../../catalog/fal/kling-3.0-
|
|
12
|
-
import model11 from '../../catalog/fal/kling-3.0.model.js';
|
|
13
|
-
import model12 from '../../catalog/fal/kling-
|
|
14
|
-
import model13 from '../../catalog/fal/kling-
|
|
15
|
-
import model14 from '../../catalog/fal/kling-video-
|
|
16
|
-
import model15 from '../../catalog/fal/
|
|
17
|
-
import model16 from '../../catalog/fal/
|
|
18
|
-
import model17 from '../../catalog/fal/
|
|
19
|
-
import model18 from '../../catalog/fal/nano-banana-
|
|
20
|
-
import model19 from '../../catalog/fal/nano-banana.model.js';
|
|
21
|
-
import model20 from '../../catalog/fal/
|
|
22
|
-
import model21 from '../../catalog/fal/
|
|
23
|
-
import model22 from '../../catalog/fal/
|
|
24
|
-
import model23 from '../../catalog/fal/seedance-2.0-
|
|
25
|
-
import model24 from '../../catalog/fal/seedance-2.0.model.js';
|
|
26
|
-
import model25 from '../../catalog/fal/seedance-2.
|
|
27
|
-
import model26 from '../../catalog/fal/seedance.model.js';
|
|
28
|
-
import model27 from '../../catalog/fal/
|
|
29
|
-
import model28 from '../../catalog/fal/seedream-5.0-
|
|
30
|
-
import model29 from '../../catalog/fal/seedream-
|
|
31
|
-
import model30 from '../../catalog/fal/seedream-v4.model.js';
|
|
32
|
-
import model31 from '../../catalog/fal/
|
|
33
|
-
import model32 from '../../catalog/fal/
|
|
34
|
-
import model33 from '../../catalog/fal/topaz-
|
|
35
|
-
import model34 from '../../catalog/fal/
|
|
36
|
-
import model35 from '../../catalog/fal/
|
|
37
|
-
import model36 from '../../catalog/fal/
|
|
38
|
-
import model37 from '../../catalog/fal/
|
|
4
|
+
import model3 from '../../catalog/fal/gpt-image-2.5.model.js';
|
|
5
|
+
import model4 from '../../catalog/fal/gpt-image-2.model.js';
|
|
6
|
+
import model5 from '../../catalog/fal/grok-imagine-2.0.model.js';
|
|
7
|
+
import model6 from '../../catalog/fal/hailuo-02.model.js';
|
|
8
|
+
import model7 from '../../catalog/fal/hailuo-2.3.model.js';
|
|
9
|
+
import model8 from '../../catalog/fal/ic-light-v2.model.js';
|
|
10
|
+
import model9 from '../../catalog/fal/ideogram-upscale.model.js';
|
|
11
|
+
import model10 from '../../catalog/fal/kling-3.0-omni.model.js';
|
|
12
|
+
import model11 from '../../catalog/fal/kling-3.0-turbo.model.js';
|
|
13
|
+
import model12 from '../../catalog/fal/kling-3.0.model.js';
|
|
14
|
+
import model13 from '../../catalog/fal/kling-image-o1.model.js';
|
|
15
|
+
import model14 from '../../catalog/fal/kling-video-o1.model.js';
|
|
16
|
+
import model15 from '../../catalog/fal/kling-video-v2.6-pro.model.js';
|
|
17
|
+
import model16 from '../../catalog/fal/ltx-2.model.js';
|
|
18
|
+
import model17 from '../../catalog/fal/minimax-h3.model.js';
|
|
19
|
+
import model18 from '../../catalog/fal/nano-banana-2.model.js';
|
|
20
|
+
import model19 from '../../catalog/fal/nano-banana-pro.model.js';
|
|
21
|
+
import model20 from '../../catalog/fal/nano-banana.model.js';
|
|
22
|
+
import model21 from '../../catalog/fal/pixverse-v5.5.model.js';
|
|
23
|
+
import model22 from '../../catalog/fal/qwen-image-3.0.model.js';
|
|
24
|
+
import model23 from '../../catalog/fal/seedance-2.0-fast.model.js';
|
|
25
|
+
import model24 from '../../catalog/fal/seedance-2.0-mini.model.js';
|
|
26
|
+
import model25 from '../../catalog/fal/seedance-2.0.model.js';
|
|
27
|
+
import model26 from '../../catalog/fal/seedance-2.5.model.js';
|
|
28
|
+
import model27 from '../../catalog/fal/seedance.model.js';
|
|
29
|
+
import model28 from '../../catalog/fal/seedream-5.0-lite.model.js';
|
|
30
|
+
import model29 from '../../catalog/fal/seedream-5.0-pro.model.js';
|
|
31
|
+
import model30 from '../../catalog/fal/seedream-v4.5.model.js';
|
|
32
|
+
import model31 from '../../catalog/fal/seedream-v4.model.js';
|
|
33
|
+
import model32 from '../../catalog/fal/seedvr2-image-upscale.model.js';
|
|
34
|
+
import model33 from '../../catalog/fal/topaz-image-upscale.model.js';
|
|
35
|
+
import model34 from '../../catalog/fal/topaz-transparent-upscale.model.js';
|
|
36
|
+
import model35 from '../../catalog/fal/veo-3.1.model.js';
|
|
37
|
+
import model36 from '../../catalog/fal/vidu-q2.model.js';
|
|
38
|
+
import model37 from '../../catalog/fal/wan-2.5-preview.model.js';
|
|
39
|
+
import model38 from '../../catalog/fal/z-image-turbo.model.js';
|
|
39
40
|
import { provider } from '../provider-adapters/fal.js';
|
|
40
|
-
export const models = [model1, model2, model3, model4, model5, model6, model7, model8, model9, model10, model11, model12, model13, model14, model15, model16, model17, model18, model19, model20, model21, model22, model23, model24, model25, model26, model27, model28, model29, model30, model31, model32, model33, model34, model35, model36, model37];
|
|
41
|
+
export const models = [model1, model2, model3, model4, model5, model6, model7, model8, model9, model10, model11, model12, model13, model14, model15, model16, model17, model18, model19, model20, model21, model22, model23, model24, model25, model26, model27, model28, model29, model30, model31, model32, model33, model34, model35, model36, model37, model38];
|
|
41
42
|
export const pack = { models, providers: [provider] };
|
|
42
43
|
export default pack;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import type { GenerationPack } from '../../generation/core.js';
|
|
2
|
-
export declare const models: readonly [import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition];
|
|
2
|
+
export declare const models: readonly [import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition];
|
|
3
3
|
export declare const pack: GenerationPack;
|
|
4
4
|
export default pack;
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
/** 由 scripts/generate-catalog-index.cjs 自动生成;只聚合当前供应商的真实模型文件。 */
|
|
2
|
-
import model1 from '../../catalog/grsai/gpt-image-2.model.js';
|
|
3
|
-
import model2 from '../../catalog/grsai/
|
|
4
|
-
import model3 from '../../catalog/grsai/nano-banana-2.model.js';
|
|
5
|
-
import model4 from '../../catalog/grsai/nano-banana-
|
|
2
|
+
import model1 from '../../catalog/grsai/gpt-image-2.5.model.js';
|
|
3
|
+
import model2 from '../../catalog/grsai/gpt-image-2.model.js';
|
|
4
|
+
import model3 from '../../catalog/grsai/nano-banana-2-lite.model.js';
|
|
5
|
+
import model4 from '../../catalog/grsai/nano-banana-2.model.js';
|
|
6
|
+
import model5 from '../../catalog/grsai/nano-banana-pro.model.js';
|
|
6
7
|
import { provider } from '../provider-adapters/grsai.js';
|
|
7
|
-
export const models = [model1, model2, model3, model4];
|
|
8
|
+
export const models = [model1, model2, model3, model4, model5];
|
|
8
9
|
export const pack = { models, providers: [provider] };
|
|
9
10
|
export default pack;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import type { GenerationPack } from '../../generation/core.js';
|
|
2
|
-
export declare const models: readonly [import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition];
|
|
2
|
+
export declare const models: readonly [import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition, import("../../index.js").ModelRuntimeDefinition];
|
|
3
3
|
export declare const pack: GenerationPack;
|
|
4
4
|
export default pack;
|
|
@@ -1,32 +1,33 @@
|
|
|
1
1
|
/** 由 scripts/generate-catalog-index.cjs 自动生成;只聚合当前供应商的真实模型文件。 */
|
|
2
2
|
import model1 from '../../catalog/kie/gemini-omni-video.model.js';
|
|
3
|
-
import model2 from '../../catalog/kie/gpt-image-2.model.js';
|
|
4
|
-
import model3 from '../../catalog/kie/
|
|
5
|
-
import model4 from '../../catalog/kie/grok-imagine-
|
|
6
|
-
import model5 from '../../catalog/kie/grok-imagine.model.js';
|
|
7
|
-
import model6 from '../../catalog/kie/
|
|
8
|
-
import model7 from '../../catalog/kie/hailuo-
|
|
9
|
-
import model8 from '../../catalog/kie/
|
|
10
|
-
import model9 from '../../catalog/kie/kling-3.0-
|
|
11
|
-
import model10 from '../../catalog/kie/kling-3.0.model.js';
|
|
12
|
-
import model11 from '../../catalog/kie/kling-
|
|
13
|
-
import model12 from '../../catalog/kie/
|
|
14
|
-
import model13 from '../../catalog/kie/
|
|
15
|
-
import model14 from '../../catalog/kie/nano-banana-2.model.js';
|
|
16
|
-
import model15 from '../../catalog/kie/nano-banana-
|
|
17
|
-
import model16 from '../../catalog/kie/
|
|
18
|
-
import model17 from '../../catalog/kie/
|
|
19
|
-
import model18 from '../../catalog/kie/seedance-
|
|
20
|
-
import model19 from '../../catalog/kie/seedance-2.0-
|
|
21
|
-
import model20 from '../../catalog/kie/seedance-2.0.model.js';
|
|
22
|
-
import model21 from '../../catalog/kie/seedance-2.
|
|
23
|
-
import model22 from '../../catalog/kie/seedance-
|
|
24
|
-
import model23 from '../../catalog/kie/
|
|
25
|
-
import model24 from '../../catalog/kie/seedream-4.
|
|
26
|
-
import model25 from '../../catalog/kie/seedream-5.
|
|
27
|
-
import model26 from '../../catalog/kie/seedream-5.0-
|
|
28
|
-
import model27 from '../../catalog/kie/
|
|
3
|
+
import model2 from '../../catalog/kie/gpt-image-2.5.model.js';
|
|
4
|
+
import model3 from '../../catalog/kie/gpt-image-2.model.js';
|
|
5
|
+
import model4 from '../../catalog/kie/grok-imagine-2.0.model.js';
|
|
6
|
+
import model5 from '../../catalog/kie/grok-imagine-video.model.js';
|
|
7
|
+
import model6 from '../../catalog/kie/grok-imagine.model.js';
|
|
8
|
+
import model7 from '../../catalog/kie/hailuo-02.model.js';
|
|
9
|
+
import model8 from '../../catalog/kie/hailuo-2-3.model.js';
|
|
10
|
+
import model9 from '../../catalog/kie/kling-3.0-omni.model.js';
|
|
11
|
+
import model10 from '../../catalog/kie/kling-3.0-turbo.model.js';
|
|
12
|
+
import model11 from '../../catalog/kie/kling-3.0.model.js';
|
|
13
|
+
import model12 from '../../catalog/kie/kling-v2-6.model.js';
|
|
14
|
+
import model13 from '../../catalog/kie/minimax-h3.model.js';
|
|
15
|
+
import model14 from '../../catalog/kie/nano-banana-2-lite.model.js';
|
|
16
|
+
import model15 from '../../catalog/kie/nano-banana-2.model.js';
|
|
17
|
+
import model16 from '../../catalog/kie/nano-banana-pro.model.js';
|
|
18
|
+
import model17 from '../../catalog/kie/qwen-image-3.0.model.js';
|
|
19
|
+
import model18 from '../../catalog/kie/seedance-1.5-pro.model.js';
|
|
20
|
+
import model19 from '../../catalog/kie/seedance-2.0-fast.model.js';
|
|
21
|
+
import model20 from '../../catalog/kie/seedance-2.0-mini.model.js';
|
|
22
|
+
import model21 from '../../catalog/kie/seedance-2.0.model.js';
|
|
23
|
+
import model22 from '../../catalog/kie/seedance-2.5.model.js';
|
|
24
|
+
import model23 from '../../catalog/kie/seedance-v1.model.js';
|
|
25
|
+
import model24 from '../../catalog/kie/seedream-4.0.model.js';
|
|
26
|
+
import model25 from '../../catalog/kie/seedream-4.5.model.js';
|
|
27
|
+
import model26 from '../../catalog/kie/seedream-5.0-lite.model.js';
|
|
28
|
+
import model27 from '../../catalog/kie/seedream-5.0-pro.model.js';
|
|
29
|
+
import model28 from '../../catalog/kie/z-image.model.js';
|
|
29
30
|
import { provider } from '../provider-adapters/kie.js';
|
|
30
|
-
export const models = [model1, model2, model3, model4, model5, model6, model7, model8, model9, model10, model11, model12, model13, model14, model15, model16, model17, model18, model19, model20, model21, model22, model23, model24, model25, model26, model27];
|
|
31
|
+
export const models = [model1, model2, model3, model4, model5, model6, model7, model8, model9, model10, model11, model12, model13, model14, model15, model16, model17, model18, model19, model20, model21, model22, model23, model24, model25, model26, model27, model28];
|
|
31
32
|
export const pack = { models, providers: [provider] };
|
|
32
33
|
export default pack;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import model from '../../../tool-packs/fal-multi-angle/models/qwen-image-edit-
|
|
1
|
+
import model from '../../../tool-packs/fal-multi-angle/models/qwen-image-edit-2511-multiple-angles.model.js';
|
|
2
2
|
import { provider } from '../../provider-adapters/fal.js';
|
|
3
3
|
import type { GenerationPack } from '../../../generation/core.js';
|
|
4
4
|
export { model, provider };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import model from '../../../tool-packs/fal-multi-angle/models/qwen-image-edit-
|
|
1
|
+
import model from '../../../tool-packs/fal-multi-angle/models/qwen-image-edit-2511-multiple-angles.model.js';
|
|
2
2
|
import { provider } from '../../provider-adapters/fal.js';
|
|
3
3
|
export { model, provider };
|
|
4
4
|
export const pack = { models: [model], providers: [provider] };
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import flux2MultipleAngles from '../../tool-packs/fal-multi-angle/models/flux-2-multiple-angles.model.js';
|
|
2
2
|
import perspectiveChange from '../../tool-packs/fal-multi-angle/models/perspective-change.model.js';
|
|
3
|
-
import qwenMultipleAngles from '../../tool-packs/fal-multi-angle/models/qwen-image-edit-
|
|
3
|
+
import qwenMultipleAngles from '../../tool-packs/fal-multi-angle/models/qwen-image-edit-2511-multiple-angles.model.js';
|
|
4
4
|
import { provider } from '../provider-adapters/fal.js';
|
|
5
5
|
/** 按需分发集合:只聚合多角度能力的三个 Fal 工具模型。 */
|
|
6
6
|
export const models = [qwenMultipleAngles, perspectiveChange, flux2MultipleAngles];
|
|
@@ -15,10 +15,10 @@ function nearestImageRatio(ratio) {
|
|
|
15
15
|
: best;
|
|
16
16
|
}, '1:1');
|
|
17
17
|
}
|
|
18
|
-
export const
|
|
18
|
+
export const falQwenImageEdit2511MultipleAnglesModel = defineModel({
|
|
19
19
|
meta: {
|
|
20
|
-
id: 'fal-qwen-image-edit-
|
|
21
|
-
canonicalModelId: 'qwen-image-edit-
|
|
20
|
+
id: 'fal-qwen-image-edit-2511-multiple-angles',
|
|
21
|
+
canonicalModelId: 'qwen-image-edit-2511-multiple-angles',
|
|
22
22
|
provider: 'fal',
|
|
23
23
|
type: 'image',
|
|
24
24
|
tags: ['image-edit', 'multi-angle', 'camera-control', 'provider-fal'],
|
|
@@ -27,21 +27,25 @@ export const falQwenImageEdit2509MultipleAnglesModel = defineModel({
|
|
|
27
27
|
acceptsPrompt: false,
|
|
28
28
|
inputLimits: { images: { exact: 1 }, videos: { max: 0 } },
|
|
29
29
|
requirements: [{
|
|
30
|
-
id: 'fal-qwen-image-edit-
|
|
30
|
+
id: 'fal-qwen-image-edit-2511-multiple-angles-source',
|
|
31
31
|
require: { images: { exact: 1 } },
|
|
32
32
|
message: { title: '需要单张源图', message: '多角度生成必须且只能提供 1 张源图。', type: 'error' },
|
|
33
33
|
}],
|
|
34
34
|
params: [
|
|
35
35
|
{ id: 'image', type: 'image-upload', order: 1, required: true, valueType: 'array', default: [], maxCount: 1 },
|
|
36
|
-
{ id: '
|
|
37
|
-
{ id: 'verticalAngle', type: 'number', order: 3, default: 0, min: -
|
|
38
|
-
{ id: '
|
|
39
|
-
{ id: 'wideAngleLens', type: 'switch', order: 5, default: false },
|
|
36
|
+
{ id: 'horizontalAngle', type: 'number', order: 2, default: 0, min: 0, max: 360, step: 1 },
|
|
37
|
+
{ id: 'verticalAngle', type: 'number', order: 3, default: 0, min: -30, max: 90, step: 1 },
|
|
38
|
+
{ id: 'zoom', type: 'number', order: 4, default: 5, min: 0, max: 10, step: 0.5 },
|
|
40
39
|
],
|
|
41
40
|
runtimeConstraints: {
|
|
42
41
|
mediaFields: [{ field: 'image_urls', kind: 'image' }],
|
|
42
|
+
numberFields: [
|
|
43
|
+
{ field: 'horizontal_angle', min: 0, max: 360, fallback: 0 },
|
|
44
|
+
{ field: 'vertical_angle', min: -30, max: 90, fallback: 0 },
|
|
45
|
+
{ field: 'zoom', min: 0, max: 10, fallback: 5 },
|
|
46
|
+
],
|
|
43
47
|
},
|
|
44
|
-
endpoints: 'fal-ai/qwen-image-edit-
|
|
48
|
+
endpoints: 'fal-ai/qwen-image-edit-2511-multiple-angles',
|
|
45
49
|
request: {
|
|
46
50
|
builder: (params) => {
|
|
47
51
|
const image = requireSingleMultiAngleImage(params, '多角度生成');
|
|
@@ -53,16 +57,15 @@ export const falQwenImageEdit2509MultipleAnglesModel = defineModel({
|
|
|
53
57
|
return {
|
|
54
58
|
image_urls: [image],
|
|
55
59
|
image_size: falOneMegapixelSize(nearestImageRatio(ratio)),
|
|
56
|
-
|
|
57
|
-
vertical_angle: clampNumber(params.verticalAngle, -
|
|
58
|
-
|
|
59
|
-
wide_angle_lens: params.wideAngleLens === true,
|
|
60
|
+
horizontal_angle: clampNumber(params.horizontalAngle, 0, 360),
|
|
61
|
+
vertical_angle: clampNumber(params.verticalAngle, -30, 90),
|
|
62
|
+
zoom: clampNumber(params.zoom, 0, 10, 5),
|
|
60
63
|
num_images: 1,
|
|
61
|
-
guidance_scale:
|
|
62
|
-
num_inference_steps:
|
|
64
|
+
guidance_scale: 4.5,
|
|
65
|
+
num_inference_steps: 28,
|
|
63
66
|
acceleration: 'regular',
|
|
64
67
|
enable_safety_checker: true,
|
|
65
|
-
lora_scale: 1
|
|
68
|
+
lora_scale: 1,
|
|
66
69
|
};
|
|
67
70
|
},
|
|
68
71
|
},
|
|
@@ -72,4 +75,4 @@ export const falQwenImageEdit2509MultipleAnglesModel = defineModel({
|
|
|
72
75
|
description: '$0.035/百万像素;首版每视角固定约 1MP、1 张输出,估算 $0.035/视角',
|
|
73
76
|
},
|
|
74
77
|
});
|
|
75
|
-
export default
|
|
78
|
+
export default falQwenImageEdit2511MultipleAnglesModel;
|