@henjicc/ai-sdk 0.6.2 → 0.7.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 +41 -35
- package/README.md +60 -60
- package/dist/catalog/audio/tts-common.d.ts +5 -0
- package/dist/catalog/audio/tts-common.js +17 -0
- package/dist/catalog/bailian/cosyvoice-v3.5.model.d.ts +2 -0
- package/dist/catalog/bailian/cosyvoice-v3.5.model.js +40 -0
- package/dist/catalog/bailian/minimax-speech-2.8.model.d.ts +2 -0
- package/dist/catalog/bailian/minimax-speech-2.8.model.js +38 -0
- package/dist/catalog/bailian/qwen-audio-3.1-tts-flash.model.d.ts +2 -0
- package/dist/catalog/bailian/qwen-audio-3.1-tts-flash.model.js +35 -0
- package/dist/catalog/fal/eleven-v3-tts.model.d.ts +2 -0
- package/dist/catalog/fal/eleven-v3-tts.model.js +31 -0
- package/dist/catalog/fal/minimax-speech-2.8.model.d.ts +2 -0
- package/dist/catalog/fal/minimax-speech-2.8.model.js +39 -0
- package/dist/catalog/fal/qwen3-tts-1.7b.model.d.ts +2 -0
- package/dist/catalog/fal/qwen3-tts-1.7b.model.js +33 -0
- package/dist/catalog/index.js +116 -90
- package/dist/catalog/kie/eleven-turbo-2.5-tts.model.d.ts +2 -0
- package/dist/catalog/kie/eleven-turbo-2.5-tts.model.js +29 -0
- package/dist/catalog/kie/eleven-v3-dialogue.model.d.ts +2 -0
- package/dist/catalog/kie/eleven-v3-dialogue.model.js +46 -0
- package/dist/catalog/kie/gemini-3.1-flash-tts.model.d.ts +2 -0
- package/dist/catalog/kie/gemini-3.1-flash-tts.model.js +40 -0
- package/dist/catalog/ppio/minimax-speech.model.js +1 -3
- package/dist/catalog/siliconflow/cosyvoice2-tts.model.d.ts +2 -0
- package/dist/catalog/siliconflow/cosyvoice2-tts.model.js +27 -0
- package/dist/catalog/siliconflow/moss-ttsd-0.5.model.d.ts +2 -0
- package/dist/catalog/siliconflow/moss-ttsd-0.5.model.js +28 -0
- package/dist/catalog/volcengine-speech/seed-icl-2.0.model.d.ts +2 -0
- package/dist/catalog/volcengine-speech/seed-icl-2.0.model.js +26 -0
- package/dist/catalog/volcengine-speech/seed-tts-2.0.model.d.ts +2 -0
- package/dist/catalog/volcengine-speech/seed-tts-2.0.model.js +25 -0
- package/dist/packs/models/bailian/cosyvoice-v3.5.d.ts +6 -0
- package/dist/packs/models/bailian/cosyvoice-v3.5.js +7 -0
- package/dist/packs/models/bailian/minimax-speech-2.8.d.ts +6 -0
- package/dist/packs/models/bailian/minimax-speech-2.8.js +7 -0
- package/dist/packs/models/bailian/qwen-audio-3.1-tts-flash.d.ts +6 -0
- package/dist/packs/models/bailian/qwen-audio-3.1-tts-flash.js +7 -0
- package/dist/packs/models/fal/eleven-v3-tts.d.ts +6 -0
- package/dist/packs/models/fal/eleven-v3-tts.js +7 -0
- package/dist/packs/models/fal/minimax-speech-2.8.d.ts +6 -0
- package/dist/packs/models/fal/minimax-speech-2.8.js +7 -0
- package/dist/packs/models/fal/qwen3-tts-1.7b.d.ts +6 -0
- package/dist/packs/models/fal/qwen3-tts-1.7b.js +7 -0
- package/dist/packs/models/kie/eleven-turbo-2.5-tts.d.ts +6 -0
- package/dist/packs/models/kie/eleven-turbo-2.5-tts.js +7 -0
- package/dist/packs/models/kie/eleven-v3-dialogue.d.ts +6 -0
- package/dist/packs/models/kie/eleven-v3-dialogue.js +7 -0
- package/dist/packs/models/kie/gemini-3.1-flash-tts.d.ts +6 -0
- package/dist/packs/models/kie/gemini-3.1-flash-tts.js +7 -0
- package/dist/packs/models/siliconflow/cosyvoice2-tts.d.ts +6 -0
- package/dist/packs/models/siliconflow/cosyvoice2-tts.js +7 -0
- package/dist/packs/models/siliconflow/moss-ttsd-0.5.d.ts +6 -0
- package/dist/packs/models/siliconflow/moss-ttsd-0.5.js +7 -0
- package/dist/packs/models/volcengine-speech/seed-icl-2.0.d.ts +6 -0
- package/dist/packs/models/volcengine-speech/seed-icl-2.0.js +7 -0
- package/dist/packs/models/volcengine-speech/seed-tts-2.0.d.ts +6 -0
- package/dist/packs/models/volcengine-speech/seed-tts-2.0.js +7 -0
- package/dist/packs/provider-adapters/siliconflow.d.ts +3 -0
- package/dist/packs/provider-adapters/siliconflow.js +5 -0
- package/dist/packs/provider-adapters/volcengine-speech.d.ts +3 -0
- package/dist/packs/provider-adapters/volcengine-speech.js +5 -0
- package/dist/packs/provider-packs/bailian.d.ts +1 -1
- package/dist/packs/provider-packs/bailian.js +6 -3
- package/dist/packs/provider-packs/fal.d.ts +1 -1
- package/dist/packs/provider-packs/fal.js +41 -38
- package/dist/packs/provider-packs/kie.d.ts +1 -1
- package/dist/packs/provider-packs/kie.js +33 -30
- package/dist/packs/provider-packs/siliconflow.d.ts +4 -0
- package/dist/packs/provider-packs/siliconflow.js +7 -0
- package/dist/packs/provider-packs/volcengine-speech.d.ts +4 -0
- package/dist/packs/provider-packs/volcengine-speech.js +7 -0
- package/dist/providers/audio-data.d.ts +2 -0
- package/dist/providers/audio-data.js +21 -0
- package/dist/providers/bailian.js +30 -2
- package/dist/providers/index.js +4 -0
- package/dist/providers/metadata.js +8 -0
- package/dist/providers/siliconflow.d.ts +3 -0
- package/dist/providers/siliconflow.js +34 -0
- package/dist/providers/volcengine-speech.d.ts +3 -0
- package/dist/providers/volcengine-speech.js +143 -0
- package/dist/types/model.d.ts +4 -4
- package/dist/types/model.js +3 -1
- package/docs/consumers.md +124 -119
- package/docs/llm-adaptation/README.md +29 -29
- package/docs/llm-adaptation//344/276/233/345/272/224/345/225/206/DeepSeek.md +14 -14
- package/docs/llm-adaptation//344/276/233/345/272/224/345/225/206/Kimi.md +3 -3
- package/docs/llm-adaptation//344/276/233/345/272/224/345/225/206//345/260/217/347/261/263MiMo.md +42 -42
- package/docs/llm-adaptation//344/276/233/345/272/224/345/225/206//346/231/272/350/260/261GLM.md +3 -3
- package/docs/model-adaptation/Fun-ASR-Realtime/Fun-ASR-Realtime_/347/231/276/347/202/274.md +22 -22
- package/docs/model-adaptation/GLM-5.3-Flash/GLM-5.3-Flash_/346/231/272/350/260/261.md +6 -6
- package/docs/model-adaptation/GPT-Image-2.5/GPT-Image-2.5_APIMart.md +66 -66
- package/docs/model-adaptation/GPT-Image-2.5/GPT-Image-2.5_Fal.md +55 -55
- package/docs/model-adaptation/GPT-Image-2.5/GPT-Image-2.5_Grsai.md +53 -53
- package/docs/model-adaptation/GPT-Image-2.5/GPT-Image-2.5_KIE.md +55 -55
- package/docs/model-adaptation/HappyHorse-1.1/HappyHorse-1.1_KIE.md +27 -27
- package/docs/model-adaptation/IC-Light-v2/IC-Light-v2_Fal.md +14 -14
- package/docs/model-adaptation/Qwen-MT-Flash/Qwen-MT-Flash_/347/231/276/347/202/274.md +24 -24
- package/docs/model-adaptation/Qwen-MT-Lite/Qwen-MT-Lite_/347/231/276/347/202/274.md +3 -3
- package/docs/model-adaptation/Qwen-MT-Plus/Qwen-MT-Plus_/347/231/276/347/202/274.md +3 -3
- package/docs/model-adaptation/Qwen3-ASR-Flash-Realtime/Qwen3-ASR-Flash-Realtime_/347/231/276/347/202/274.md +25 -25
- package/docs/model-adaptation/README.md +14 -10
- 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 +7 -7
- package/docs/model-adaptation/Seedream-5.0-Flash/Seedream-5.0-Flash_/347/201/253/345/261/261/345/274/225/346/223/216.md +18 -18
- package/docs/model-adaptation/TTS-/345/244/232/344/276/233/345/272/224/345/225/206-2026-09.md +55 -0
- package/docs/model-adaptation//344/276/233/345/272/224/345/225/206//346/264/276/346/254/247/344/272/221.md +9 -9
- 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 +11 -11
- package/docs/model-adaptation//344/276/233/345/272/224/345/225/206//347/231/276/347/202/274.md +31 -31
- 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 +67 -67
- package/docs/model-adaptation//346/226/207/346/241/243/351/207/207/351/233/206/346/211/213/345/206/214.md +8 -8
- package/examples/form-renderer/package.json +1 -1
- package/examples/llm-chat/README.md +8 -8
- package/examples/llm-chat/index.ts +1 -1
- package/examples/llm-chat/package.json +1 -1
- package/examples/minimal-node/package.json +1 -1
- package/package.json +258 -258
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
/** 由 scripts/generate-catalog-index.cjs 自动生成;`pack` 是完整执行单元,`model` 仅供低层目录用途。 */
|
|
2
|
+
import model from '../../../catalog/kie/eleven-turbo-2.5-tts.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/eleven-turbo-2.5-tts.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] };
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
/** 由 scripts/generate-catalog-index.cjs 自动生成;`pack` 是完整执行单元,`model` 仅供低层目录用途。 */
|
|
2
|
+
import model from '../../../catalog/kie/eleven-v3-dialogue.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/eleven-v3-dialogue.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] };
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
/** 由 scripts/generate-catalog-index.cjs 自动生成;`pack` 是完整执行单元,`model` 仅供低层目录用途。 */
|
|
2
|
+
import model from '../../../catalog/kie/gemini-3.1-flash-tts.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/gemini-3.1-flash-tts.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] };
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
/** 由 scripts/generate-catalog-index.cjs 自动生成;`pack` 是完整执行单元,`model` 仅供低层目录用途。 */
|
|
2
|
+
import model from '../../../catalog/siliconflow/cosyvoice2-tts.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/siliconflow/cosyvoice2-tts.model.js';
|
|
3
|
+
import * as adapter from '../../../providers/siliconflow.js';
|
|
4
|
+
import { preprocess } from '../../../upload/provider-preprocessors/data-uri.js';
|
|
5
|
+
export { model };
|
|
6
|
+
export const provider = { id: 'siliconflow', 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/siliconflow/moss-ttsd-0.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/siliconflow/moss-ttsd-0.5.model.js';
|
|
3
|
+
import * as adapter from '../../../providers/siliconflow.js';
|
|
4
|
+
import { preprocess } from '../../../upload/provider-preprocessors/data-uri.js';
|
|
5
|
+
export { model };
|
|
6
|
+
export const provider = { id: 'siliconflow', 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/volcengine-speech/seed-icl-2.0.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/volcengine-speech/seed-icl-2.0.model.js';
|
|
3
|
+
import * as adapter from '../../../providers/volcengine-speech.js';
|
|
4
|
+
import { preprocess } from '../../../upload/provider-preprocessors/data-uri.js';
|
|
5
|
+
export { model };
|
|
6
|
+
export const provider = { id: 'volcengine-speech', 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/volcengine-speech/seed-tts-2.0.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/volcengine-speech/seed-tts-2.0.model.js';
|
|
3
|
+
import * as adapter from '../../../providers/volcengine-speech.js';
|
|
4
|
+
import { preprocess } from '../../../upload/provider-preprocessors/data-uri.js';
|
|
5
|
+
export { model };
|
|
6
|
+
export const provider = { id: 'volcengine-speech', adapter, preprocess };
|
|
7
|
+
export const pack = { models: [model], providers: [provider] };
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/** 由 scripts/generate-catalog-index.cjs 自动生成;不静态导入任何模型。 */
|
|
2
|
+
import * as adapter from '../../providers/siliconflow.js';
|
|
3
|
+
import { preprocess } from '../../upload/provider-preprocessors/data-uri.js';
|
|
4
|
+
export const provider = { id: 'siliconflow', adapter, preprocess };
|
|
5
|
+
export default provider;
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/** 由 scripts/generate-catalog-index.cjs 自动生成;不静态导入任何模型。 */
|
|
2
|
+
import * as adapter from '../../providers/volcengine-speech.js';
|
|
3
|
+
import { preprocess } from '../../upload/provider-preprocessors/data-uri.js';
|
|
4
|
+
export const provider = { id: 'volcengine-speech', adapter, preprocess };
|
|
5
|
+
export default 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];
|
|
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,7 +1,10 @@
|
|
|
1
1
|
/** 由 scripts/generate-catalog-index.cjs 自动生成;只聚合当前供应商的真实模型文件。 */
|
|
2
|
-
import model1 from '../../catalog/bailian/
|
|
3
|
-
import model2 from '../../catalog/bailian/
|
|
2
|
+
import model1 from '../../catalog/bailian/cosyvoice-v3.5.model.js';
|
|
3
|
+
import model2 from '../../catalog/bailian/minimax-speech-2.8.model.js';
|
|
4
|
+
import model3 from '../../catalog/bailian/qwen-audio-3.1-tts-flash.model.js';
|
|
5
|
+
import model4 from '../../catalog/bailian/qwen-image-3.0.model.js';
|
|
6
|
+
import model5 from '../../catalog/bailian/z-image-turbo.model.js';
|
|
4
7
|
import { provider } from '../provider-adapters/bailian.js';
|
|
5
|
-
export const models = [model1, model2];
|
|
8
|
+
export const models = [model1, model2, model3, model4, model5];
|
|
6
9
|
export const pack = { models, providers: [provider] };
|
|
7
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, 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, 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,43 +1,46 @@
|
|
|
1
1
|
/** 由 scripts/generate-catalog-index.cjs 自动生成;只聚合当前供应商的真实模型文件。 */
|
|
2
2
|
import model1 from '../../catalog/fal/bria-creative-upscale.model.js';
|
|
3
|
-
import model2 from '../../catalog/fal/
|
|
4
|
-
import model3 from '../../catalog/fal/
|
|
5
|
-
import model4 from '../../catalog/fal/gpt-image-2.model.js';
|
|
6
|
-
import model5 from '../../catalog/fal/
|
|
7
|
-
import model6 from '../../catalog/fal/
|
|
8
|
-
import model7 from '../../catalog/fal/hailuo-
|
|
9
|
-
import model8 from '../../catalog/fal/
|
|
10
|
-
import model9 from '../../catalog/fal/
|
|
11
|
-
import model10 from '../../catalog/fal/
|
|
12
|
-
import model11 from '../../catalog/fal/kling-3.0-
|
|
13
|
-
import model12 from '../../catalog/fal/kling-3.0.model.js';
|
|
14
|
-
import model13 from '../../catalog/fal/kling-
|
|
15
|
-
import model14 from '../../catalog/fal/kling-
|
|
16
|
-
import model15 from '../../catalog/fal/kling-video-
|
|
17
|
-
import model16 from '../../catalog/fal/
|
|
18
|
-
import model17 from '../../catalog/fal/
|
|
19
|
-
import model18 from '../../catalog/fal/
|
|
20
|
-
import model19 from '../../catalog/fal/
|
|
21
|
-
import model20 from '../../catalog/fal/nano-banana.model.js';
|
|
22
|
-
import model21 from '../../catalog/fal/
|
|
23
|
-
import model22 from '../../catalog/fal/
|
|
24
|
-
import model23 from '../../catalog/fal/
|
|
25
|
-
import model24 from '../../catalog/fal/
|
|
26
|
-
import model25 from '../../catalog/fal/
|
|
27
|
-
import model26 from '../../catalog/fal/seedance-2.
|
|
28
|
-
import model27 from '../../catalog/fal/seedance.model.js';
|
|
29
|
-
import model28 from '../../catalog/fal/
|
|
30
|
-
import model29 from '../../catalog/fal/
|
|
31
|
-
import model30 from '../../catalog/fal/
|
|
32
|
-
import model31 from '../../catalog/fal/seedream-
|
|
33
|
-
import model32 from '../../catalog/fal/
|
|
34
|
-
import model33 from '../../catalog/fal/
|
|
35
|
-
import model34 from '../../catalog/fal/
|
|
36
|
-
import model35 from '../../catalog/fal/
|
|
37
|
-
import model36 from '../../catalog/fal/
|
|
38
|
-
import model37 from '../../catalog/fal/
|
|
39
|
-
import model38 from '../../catalog/fal/
|
|
3
|
+
import model2 from '../../catalog/fal/eleven-v3-tts.model.js';
|
|
4
|
+
import model3 from '../../catalog/fal/gemini-omni-flash.model.js';
|
|
5
|
+
import model4 from '../../catalog/fal/gpt-image-2.5.model.js';
|
|
6
|
+
import model5 from '../../catalog/fal/gpt-image-2.model.js';
|
|
7
|
+
import model6 from '../../catalog/fal/grok-imagine-2.0.model.js';
|
|
8
|
+
import model7 from '../../catalog/fal/hailuo-02.model.js';
|
|
9
|
+
import model8 from '../../catalog/fal/hailuo-2.3.model.js';
|
|
10
|
+
import model9 from '../../catalog/fal/ic-light-v2.model.js';
|
|
11
|
+
import model10 from '../../catalog/fal/ideogram-upscale.model.js';
|
|
12
|
+
import model11 from '../../catalog/fal/kling-3.0-omni.model.js';
|
|
13
|
+
import model12 from '../../catalog/fal/kling-3.0-turbo.model.js';
|
|
14
|
+
import model13 from '../../catalog/fal/kling-3.0.model.js';
|
|
15
|
+
import model14 from '../../catalog/fal/kling-image-o1.model.js';
|
|
16
|
+
import model15 from '../../catalog/fal/kling-video-o1.model.js';
|
|
17
|
+
import model16 from '../../catalog/fal/kling-video-v2.6-pro.model.js';
|
|
18
|
+
import model17 from '../../catalog/fal/ltx-2.model.js';
|
|
19
|
+
import model18 from '../../catalog/fal/minimax-h3.model.js';
|
|
20
|
+
import model19 from '../../catalog/fal/minimax-speech-2.8.model.js';
|
|
21
|
+
import model20 from '../../catalog/fal/nano-banana-2.model.js';
|
|
22
|
+
import model21 from '../../catalog/fal/nano-banana-pro.model.js';
|
|
23
|
+
import model22 from '../../catalog/fal/nano-banana.model.js';
|
|
24
|
+
import model23 from '../../catalog/fal/pixverse-v5.5.model.js';
|
|
25
|
+
import model24 from '../../catalog/fal/qwen-image-3.0.model.js';
|
|
26
|
+
import model25 from '../../catalog/fal/qwen3-tts-1.7b.model.js';
|
|
27
|
+
import model26 from '../../catalog/fal/seedance-2.0-fast.model.js';
|
|
28
|
+
import model27 from '../../catalog/fal/seedance-2.0-mini.model.js';
|
|
29
|
+
import model28 from '../../catalog/fal/seedance-2.0.model.js';
|
|
30
|
+
import model29 from '../../catalog/fal/seedance-2.5.model.js';
|
|
31
|
+
import model30 from '../../catalog/fal/seedance.model.js';
|
|
32
|
+
import model31 from '../../catalog/fal/seedream-5.0-lite.model.js';
|
|
33
|
+
import model32 from '../../catalog/fal/seedream-5.0-pro.model.js';
|
|
34
|
+
import model33 from '../../catalog/fal/seedream-v4.5.model.js';
|
|
35
|
+
import model34 from '../../catalog/fal/seedream-v4.model.js';
|
|
36
|
+
import model35 from '../../catalog/fal/seedvr2-image-upscale.model.js';
|
|
37
|
+
import model36 from '../../catalog/fal/topaz-image-upscale.model.js';
|
|
38
|
+
import model37 from '../../catalog/fal/topaz-transparent-upscale.model.js';
|
|
39
|
+
import model38 from '../../catalog/fal/veo-3.1.model.js';
|
|
40
|
+
import model39 from '../../catalog/fal/vidu-q2.model.js';
|
|
41
|
+
import model40 from '../../catalog/fal/wan-2.5-preview.model.js';
|
|
42
|
+
import model41 from '../../catalog/fal/z-image-turbo.model.js';
|
|
40
43
|
import { provider } from '../provider-adapters/fal.js';
|
|
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];
|
|
44
|
+
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, model39, model40, model41];
|
|
42
45
|
export const pack = { models, providers: [provider] };
|
|
43
46
|
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];
|
|
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];
|
|
3
3
|
export declare const pack: GenerationPack;
|
|
4
4
|
export default pack;
|
|
@@ -1,34 +1,37 @@
|
|
|
1
1
|
/** 由 scripts/generate-catalog-index.cjs 自动生成;只聚合当前供应商的真实模型文件。 */
|
|
2
|
-
import model1 from '../../catalog/kie/
|
|
3
|
-
import model2 from '../../catalog/kie/
|
|
4
|
-
import model3 from '../../catalog/kie/
|
|
5
|
-
import model4 from '../../catalog/kie/
|
|
6
|
-
import model5 from '../../catalog/kie/
|
|
7
|
-
import model6 from '../../catalog/kie/
|
|
8
|
-
import model7 from '../../catalog/kie/
|
|
9
|
-
import model8 from '../../catalog/kie/
|
|
10
|
-
import model9 from '../../catalog/kie/
|
|
11
|
-
import model10 from '../../catalog/kie/
|
|
12
|
-
import model11 from '../../catalog/kie/
|
|
13
|
-
import model12 from '../../catalog/kie/
|
|
14
|
-
import model13 from '../../catalog/kie/kling-
|
|
15
|
-
import model14 from '../../catalog/kie/
|
|
16
|
-
import model15 from '../../catalog/kie/
|
|
17
|
-
import model16 from '../../catalog/kie/
|
|
18
|
-
import model17 from '../../catalog/kie/
|
|
19
|
-
import model18 from '../../catalog/kie/
|
|
20
|
-
import model19 from '../../catalog/kie/
|
|
21
|
-
import model20 from '../../catalog/kie/
|
|
22
|
-
import model21 from '../../catalog/kie/
|
|
23
|
-
import model22 from '../../catalog/kie/seedance-
|
|
24
|
-
import model23 from '../../catalog/kie/seedance-2.
|
|
25
|
-
import model24 from '../../catalog/kie/seedance-
|
|
26
|
-
import model25 from '../../catalog/kie/
|
|
27
|
-
import model26 from '../../catalog/kie/
|
|
28
|
-
import model27 from '../../catalog/kie/
|
|
29
|
-
import model28 from '../../catalog/kie/seedream-
|
|
30
|
-
import model29 from '../../catalog/kie/
|
|
2
|
+
import model1 from '../../catalog/kie/eleven-turbo-2.5-tts.model.js';
|
|
3
|
+
import model2 from '../../catalog/kie/eleven-v3-dialogue.model.js';
|
|
4
|
+
import model3 from '../../catalog/kie/gemini-3.1-flash-tts.model.js';
|
|
5
|
+
import model4 from '../../catalog/kie/gemini-omni-video.model.js';
|
|
6
|
+
import model5 from '../../catalog/kie/gpt-image-2.5.model.js';
|
|
7
|
+
import model6 from '../../catalog/kie/gpt-image-2.model.js';
|
|
8
|
+
import model7 from '../../catalog/kie/grok-imagine-2.0.model.js';
|
|
9
|
+
import model8 from '../../catalog/kie/grok-imagine-video.model.js';
|
|
10
|
+
import model9 from '../../catalog/kie/grok-imagine.model.js';
|
|
11
|
+
import model10 from '../../catalog/kie/hailuo-02.model.js';
|
|
12
|
+
import model11 from '../../catalog/kie/hailuo-2-3.model.js';
|
|
13
|
+
import model12 from '../../catalog/kie/happyhorse-1.1.model.js';
|
|
14
|
+
import model13 from '../../catalog/kie/kling-3.0-omni.model.js';
|
|
15
|
+
import model14 from '../../catalog/kie/kling-3.0-turbo.model.js';
|
|
16
|
+
import model15 from '../../catalog/kie/kling-3.0.model.js';
|
|
17
|
+
import model16 from '../../catalog/kie/kling-v2-6.model.js';
|
|
18
|
+
import model17 from '../../catalog/kie/minimax-h3.model.js';
|
|
19
|
+
import model18 from '../../catalog/kie/nano-banana-2-lite.model.js';
|
|
20
|
+
import model19 from '../../catalog/kie/nano-banana-2.model.js';
|
|
21
|
+
import model20 from '../../catalog/kie/nano-banana-pro.model.js';
|
|
22
|
+
import model21 from '../../catalog/kie/qwen-image-3.0.model.js';
|
|
23
|
+
import model22 from '../../catalog/kie/seedance-1.5-pro.model.js';
|
|
24
|
+
import model23 from '../../catalog/kie/seedance-2.0-fast.model.js';
|
|
25
|
+
import model24 from '../../catalog/kie/seedance-2.0-mini.model.js';
|
|
26
|
+
import model25 from '../../catalog/kie/seedance-2.0.model.js';
|
|
27
|
+
import model26 from '../../catalog/kie/seedance-2.5.model.js';
|
|
28
|
+
import model27 from '../../catalog/kie/seedance-v1.model.js';
|
|
29
|
+
import model28 from '../../catalog/kie/seedream-4.0.model.js';
|
|
30
|
+
import model29 from '../../catalog/kie/seedream-4.5.model.js';
|
|
31
|
+
import model30 from '../../catalog/kie/seedream-5.0-lite.model.js';
|
|
32
|
+
import model31 from '../../catalog/kie/seedream-5.0-pro.model.js';
|
|
33
|
+
import model32 from '../../catalog/kie/z-image.model.js';
|
|
31
34
|
import { provider } from '../provider-adapters/kie.js';
|
|
32
|
-
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];
|
|
35
|
+
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];
|
|
33
36
|
export const pack = { models, providers: [provider] };
|
|
34
37
|
export default pack;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/** 由 scripts/generate-catalog-index.cjs 自动生成;只聚合当前供应商的真实模型文件。 */
|
|
2
|
+
import model1 from '../../catalog/siliconflow/cosyvoice2-tts.model.js';
|
|
3
|
+
import model2 from '../../catalog/siliconflow/moss-ttsd-0.5.model.js';
|
|
4
|
+
import { provider } from '../provider-adapters/siliconflow.js';
|
|
5
|
+
export const models = [model1, model2];
|
|
6
|
+
export const pack = { models, providers: [provider] };
|
|
7
|
+
export default pack;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/** 由 scripts/generate-catalog-index.cjs 自动生成;只聚合当前供应商的真实模型文件。 */
|
|
2
|
+
import model1 from '../../catalog/volcengine-speech/seed-icl-2.0.model.js';
|
|
3
|
+
import model2 from '../../catalog/volcengine-speech/seed-tts-2.0.model.js';
|
|
4
|
+
import { provider } from '../provider-adapters/volcengine-speech.js';
|
|
5
|
+
export const models = [model1, model2];
|
|
6
|
+
export const pack = { models, providers: [provider] };
|
|
7
|
+
export default pack;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { AiRuntimeError } from '../runtime/AiRuntimeError.js';
|
|
2
|
+
import { toDataUri } from '../upload/base64.js';
|
|
3
|
+
const MIME_TYPES = {
|
|
4
|
+
mp3: 'audio/mpeg', wav: 'audio/wav', pcm: 'audio/L16', flac: 'audio/flac',
|
|
5
|
+
opus: 'audio/opus', ogg: 'audio/ogg',
|
|
6
|
+
};
|
|
7
|
+
export function audioBytesToDataUri(bytes, format) {
|
|
8
|
+
if (bytes.byteLength === 0)
|
|
9
|
+
throw new AiRuntimeError('empty_result', 'Audio response is empty');
|
|
10
|
+
return toDataUri(bytes, MIME_TYPES[format] ?? 'application/octet-stream');
|
|
11
|
+
}
|
|
12
|
+
export function hexAudioToDataUri(hex, format) {
|
|
13
|
+
if (hex.length === 0 || hex.length % 2 !== 0 || !/^[\da-f]+$/i.test(hex)) {
|
|
14
|
+
throw new AiRuntimeError('invalid_response', 'Audio response is not valid hex');
|
|
15
|
+
}
|
|
16
|
+
const bytes = new Uint8Array(hex.length / 2);
|
|
17
|
+
for (let index = 0; index < bytes.length; index += 1) {
|
|
18
|
+
bytes[index] = Number.parseInt(hex.slice(index * 2, index * 2 + 2), 16);
|
|
19
|
+
}
|
|
20
|
+
return audioBytesToDataUri(bytes, format);
|
|
21
|
+
}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { AiRuntimeError } from '../runtime/AiRuntimeError.js';
|
|
2
|
-
import { isJsonObject, normalizeEndpoint, pushUniqueUrl, readJsonResponse, stringAt } from './helpers.js';
|
|
2
|
+
import { getPointer, isJsonObject, normalizeEndpoint, pushUniqueUrl, readJsonResponse, stringAt } from './helpers.js';
|
|
3
3
|
import { fetchProvider } from './provider-fetch.js';
|
|
4
|
+
import { hexAudioToDataUri } from './audio-data.js';
|
|
4
5
|
const BAILIAN_BASE_URL = 'https://dashscope.aliyuncs.com';
|
|
5
6
|
export async function execute(input) {
|
|
6
7
|
const response = await fetchProvider('Bailian', normalizeEndpoint(BAILIAN_BASE_URL, input.route), {
|
|
@@ -20,9 +21,36 @@ export async function execute(input) {
|
|
|
20
21
|
if (errorCode) {
|
|
21
22
|
throw new AiRuntimeError('provider_task_failed', stringAt(payload, '/message') ?? errorCode);
|
|
22
23
|
}
|
|
24
|
+
const speechStatus = getPointer(payload, '/output/base_resp/status_code');
|
|
25
|
+
if (typeof speechStatus === 'number' && speechStatus !== 0) {
|
|
26
|
+
throw new AiRuntimeError('provider_task_failed', stringAt(payload, '/output/base_resp/status_msg') ?? `MiniMax status ${speechStatus}`);
|
|
27
|
+
}
|
|
28
|
+
const hexAudio = stringAt(payload, '/output/data/audio');
|
|
29
|
+
if (hexAudio) {
|
|
30
|
+
const audioState = getPointer(payload, '/output/data/status');
|
|
31
|
+
if (audioState !== 2)
|
|
32
|
+
throw new AiRuntimeError('invalid_response', 'MiniMax audio response is not final');
|
|
33
|
+
const format = stringAt(payload, '/output/extra_info/audio_format') ?? 'mp3';
|
|
34
|
+
const url = /^https?:\/\//i.test(hexAudio) ? hexAudio : hexAudioToDataUri(hexAudio, format);
|
|
35
|
+
const metadata = isJsonObject(payload) && isJsonObject(payload.output) && isJsonObject(payload.output.data)
|
|
36
|
+
? { ...payload, output: { ...payload.output, data: { ...payload.output.data, audio: '[omitted]' } } }
|
|
37
|
+
: payload;
|
|
38
|
+
return { status: 'completed', url, metadata };
|
|
39
|
+
}
|
|
40
|
+
if (input.route.endsWith('/SpeechSynthesizer')) {
|
|
41
|
+
const finishReason = stringAt(payload, '/output/finish_reason');
|
|
42
|
+
if (finishReason !== 'stop') {
|
|
43
|
+
throw new AiRuntimeError('invalid_response', `Bailian speech did not finish: ${finishReason ?? 'missing finish_reason'}`);
|
|
44
|
+
}
|
|
45
|
+
const audioUrl = stringAt(payload, '/output/audio/url');
|
|
46
|
+
if (!audioUrl || !/^https?:\/\//i.test(audioUrl)) {
|
|
47
|
+
throw new AiRuntimeError('empty_result', 'Bailian speech response has no audio URL');
|
|
48
|
+
}
|
|
49
|
+
return { status: 'completed', url: audioUrl, metadata: payload };
|
|
50
|
+
}
|
|
23
51
|
const urls = extractImageUrls(payload);
|
|
24
52
|
if (urls.length === 0) {
|
|
25
|
-
throw new AiRuntimeError('empty_result', 'Bailian response has no
|
|
53
|
+
throw new AiRuntimeError('empty_result', 'Bailian response has no media URL');
|
|
26
54
|
}
|
|
27
55
|
return { status: 'completed', url: urls.join('|||'), metadata: payload };
|
|
28
56
|
}
|
package/dist/providers/index.js
CHANGED
|
@@ -80,14 +80,18 @@ import * as grsai from './grsai.js';
|
|
|
80
80
|
import * as kie from './kie.js';
|
|
81
81
|
import * as modelscope from './modelscope.js';
|
|
82
82
|
import * as ppio from './ppio.js';
|
|
83
|
+
import * as siliconflow from './siliconflow.js';
|
|
83
84
|
import * as volcengine from './volcengine.js';
|
|
85
|
+
import * as volcengineSpeech from './volcengine-speech.js';
|
|
84
86
|
const builtinProviders = {
|
|
85
87
|
apimart,
|
|
86
88
|
bailian,
|
|
87
89
|
volcengine,
|
|
90
|
+
'volcengine-speech': volcengineSpeech,
|
|
88
91
|
ppio,
|
|
89
92
|
kie,
|
|
90
93
|
modelscope,
|
|
91
94
|
fal,
|
|
92
95
|
grsai,
|
|
96
|
+
siliconflow,
|
|
93
97
|
};
|
|
@@ -127,6 +127,14 @@ export const PROVIDER_METADATA = [
|
|
|
127
127
|
websiteUrlKind: 'official',
|
|
128
128
|
docs: 'docs/model-adaptation/供应商/火山引擎.md',
|
|
129
129
|
},
|
|
130
|
+
{
|
|
131
|
+
providerId: 'volcengine-speech',
|
|
132
|
+
displayName: '火山引擎(豆包语音)',
|
|
133
|
+
websiteUrl: 'https://www.volcengine.com/product/voice-tech',
|
|
134
|
+
apiKeyUrl: 'https://console.volcengine.com/speech/new/setting/apikeys?projectName=default',
|
|
135
|
+
websiteUrlKind: 'official',
|
|
136
|
+
docs: 'docs/model-adaptation/TTS-多供应商-2026-09.md',
|
|
137
|
+
},
|
|
130
138
|
];
|
|
131
139
|
/**
|
|
132
140
|
* 按 providerId 获取公开入口。BigModel 可用 `endpointProfile: 'global'` 取得 Z.AI 地址。
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import type { ProviderContinuePollingInput, ProviderExecutionInput, ProviderExecutionResult } from '../types/runtime.js';
|
|
2
|
+
export declare function execute(input: ProviderExecutionInput): Promise<ProviderExecutionResult>;
|
|
3
|
+
export declare function continuePolling(_input: ProviderContinuePollingInput): Promise<ProviderExecutionResult>;
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { AiRuntimeError } from '../runtime/AiRuntimeError.js';
|
|
2
|
+
import { audioBytesToDataUri } from './audio-data.js';
|
|
3
|
+
import { normalizeEndpoint } from './helpers.js';
|
|
4
|
+
import { isJsonObject } from './helpers.js';
|
|
5
|
+
import { fetchProvider } from './provider-fetch.js';
|
|
6
|
+
const BASE_URL = 'https://api.siliconflow.cn';
|
|
7
|
+
export async function execute(input) {
|
|
8
|
+
const response = await fetchProvider('SiliconFlow', normalizeEndpoint(BASE_URL, input.route), {
|
|
9
|
+
method: 'POST',
|
|
10
|
+
headers: {
|
|
11
|
+
Authorization: `Bearer ${input.apiKey}`,
|
|
12
|
+
'Content-Type': 'application/json',
|
|
13
|
+
},
|
|
14
|
+
body: JSON.stringify(input.body),
|
|
15
|
+
signal: input.signal,
|
|
16
|
+
}, {
|
|
17
|
+
transport: input.runtime.transport,
|
|
18
|
+
retryPreconnectOnce: true,
|
|
19
|
+
});
|
|
20
|
+
if (!response.ok) {
|
|
21
|
+
await response.body?.cancel().catch(() => undefined);
|
|
22
|
+
throw new AiRuntimeError('provider_task_failed', `SiliconFlow speech request failed (HTTP ${response.status})`);
|
|
23
|
+
}
|
|
24
|
+
const bytes = new Uint8Array(await response.arrayBuffer());
|
|
25
|
+
const requestedFormat = isJsonObject(input.body) && typeof input.body.response_format === 'string' ? input.body.response_format : 'mp3';
|
|
26
|
+
const url = audioBytesToDataUri(bytes, requestedFormat);
|
|
27
|
+
return {
|
|
28
|
+
status: 'completed', url,
|
|
29
|
+
metadata: { contentType: response.headers.get('content-type'), byteLength: bytes.byteLength },
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
export async function continuePolling(_input) {
|
|
33
|
+
throw new AiRuntimeError('unsupported_provider', 'SiliconFlow speech response is synchronous');
|
|
34
|
+
}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import type { ProviderContinuePollingInput, ProviderExecutionInput, ProviderExecutionResult } from '../types/runtime.js';
|
|
2
|
+
export declare function execute(input: ProviderExecutionInput): Promise<ProviderExecutionResult>;
|
|
3
|
+
export declare function continuePolling(_input: ProviderContinuePollingInput): Promise<ProviderExecutionResult>;
|