@eaziz/prepare 0.1.2 → 0.1.3
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/README.md +8 -2
- package/dist/contracts.d.ts +0 -45
- package/dist/contracts.d.ts.map +1 -1
- package/dist/protocol-registry.d.ts +1 -1
- package/dist/protocol-registry.d.ts.map +1 -1
- package/dist/protocol-registry.js.map +1 -1
- package/dist/protocols/catalog.d.ts +2 -2
- package/dist/protocols/catalog.d.ts.map +1 -1
- package/dist/protocols/catalog.js +2 -15
- package/dist/protocols/catalog.js.map +1 -1
- package/dist/protocols/images.d.ts +2 -2
- package/dist/protocols/images.d.ts.map +1 -1
- package/dist/protocols/images.js +9 -17
- package/dist/protocols/images.js.map +1 -1
- package/dist/protocols/realtime.d.ts +3 -3
- package/dist/protocols/realtime.d.ts.map +1 -1
- package/dist/protocols/realtime.js.map +1 -1
- package/dist/protocols/speech.d.ts +9 -8
- package/dist/protocols/speech.d.ts.map +1 -1
- package/dist/protocols/speech.js +21 -68
- package/dist/protocols/speech.js.map +1 -1
- package/dist/protocols/text.d.ts +11 -10
- package/dist/protocols/text.d.ts.map +1 -1
- package/dist/protocols/text.js +9 -306
- package/dist/protocols/text.js.map +1 -1
- package/dist/protocols/transcription.d.ts +6 -5
- package/dist/protocols/transcription.d.ts.map +1 -1
- package/dist/protocols/transcription.js +9 -23
- package/dist/protocols/transcription.js.map +1 -1
- package/dist/protocols/video.d.ts +3 -3
- package/dist/protocols/video.d.ts.map +1 -1
- package/dist/protocols/video.js +2 -7
- package/dist/protocols/video.js.map +1 -1
- package/dist/request-types.d.ts +120 -72
- package/dist/request-types.d.ts.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,6 +1,12 @@
|
|
|
1
1
|
# @eaziz/prepare
|
|
2
2
|
|
|
3
|
-
一个零运行时依赖的 AI
|
|
3
|
+
一个零运行时依赖的 AI 请求编译器。它把协议原生输入编译成指定协议的 `method`、`path`、`headers` 和 `body`,但不发送网络请求,也不绑定任何 Provider 或网关。
|
|
4
|
+
|
|
5
|
+
`input` 使用所选协议的原生字段和嵌套结构,例如 OpenAI Chat Completions 使用 `max_tokens`,Gemini 使用 `generationConfig`。编译器不会在协议之间做字段命名或消息结构转换。
|
|
6
|
+
|
|
7
|
+
`model` 仍位于请求外层,由编译器写入需要它的协议请求;其余请求字段都放在 `input` 中。
|
|
8
|
+
|
|
9
|
+
这意味着 `maxTokens`、`topP`、`extraBody` 等旧的统一字段不会再被解释或转换;需要扩展协议请求时,直接把协议字段放进 `input`。
|
|
4
10
|
|
|
5
11
|
## 安装
|
|
6
12
|
|
|
@@ -19,7 +25,7 @@ const prepared = prepare({
|
|
|
19
25
|
model: 'my-model',
|
|
20
26
|
input: {
|
|
21
27
|
messages: [{ role: 'user', content: '你好' }],
|
|
22
|
-
|
|
28
|
+
max_tokens: 4096,
|
|
23
29
|
},
|
|
24
30
|
});
|
|
25
31
|
|
package/dist/contracts.d.ts
CHANGED
|
@@ -3,51 +3,6 @@ export type Transport = "http" | "http-stream" | "websocket";
|
|
|
3
3
|
export type ModelType = "text-generation" | "multimodal-generation" | "embedding" | "rerank" | "image-generation" | "image-editing" | "speech-generation" | "transcription" | "video-generation" | "realtime";
|
|
4
4
|
/** Canonical protocol names have one source: protocol-registry.ts. */
|
|
5
5
|
export type WireProtocol = import("./protocol-registry.js").ProtocolFor<ModelType>;
|
|
6
|
-
export type MessageRole = "system" | "developer" | "user" | "assistant" | "tool";
|
|
7
|
-
export interface TextPart {
|
|
8
|
-
readonly type: "text";
|
|
9
|
-
readonly text: string;
|
|
10
|
-
}
|
|
11
|
-
export interface ImagePart {
|
|
12
|
-
readonly type: "image";
|
|
13
|
-
readonly image: string | Uint8Array;
|
|
14
|
-
readonly mediaType?: string;
|
|
15
|
-
readonly detail?: "auto" | "low" | "high";
|
|
16
|
-
}
|
|
17
|
-
export interface AudioPart {
|
|
18
|
-
readonly type: "audio";
|
|
19
|
-
readonly audio: string | Uint8Array;
|
|
20
|
-
readonly mediaType?: string;
|
|
21
|
-
}
|
|
22
|
-
export interface FilePart {
|
|
23
|
-
readonly type: "file";
|
|
24
|
-
readonly file: string | Uint8Array;
|
|
25
|
-
readonly mediaType?: string;
|
|
26
|
-
readonly filename?: string;
|
|
27
|
-
}
|
|
28
|
-
export interface RawPart {
|
|
29
|
-
readonly type: "raw";
|
|
30
|
-
readonly protocol: WireProtocol;
|
|
31
|
-
readonly value: unknown;
|
|
32
|
-
}
|
|
33
|
-
export type ContentPart = TextPart | ImagePart | AudioPart | FilePart | RawPart;
|
|
34
|
-
export interface Message {
|
|
35
|
-
readonly role: MessageRole;
|
|
36
|
-
readonly content: string | readonly ContentPart[];
|
|
37
|
-
readonly name?: string;
|
|
38
|
-
readonly toolCallId?: string;
|
|
39
|
-
readonly protocolMetadata?: ProtocolMetadata;
|
|
40
|
-
}
|
|
41
|
-
export interface JSONSchema {
|
|
42
|
-
readonly [key: string]: unknown;
|
|
43
|
-
}
|
|
44
|
-
export interface ToolDefinition {
|
|
45
|
-
readonly type?: "function";
|
|
46
|
-
readonly name: string;
|
|
47
|
-
readonly description?: string;
|
|
48
|
-
readonly parameters: JSONSchema;
|
|
49
|
-
readonly strict?: boolean;
|
|
50
|
-
}
|
|
51
6
|
export interface ModelProfile {
|
|
52
7
|
readonly id: string;
|
|
53
8
|
readonly modelType: ModelType;
|
package/dist/contracts.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contracts.d.ts","sourceRoot":"","sources":["../src/contracts.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,gBAAgB,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;AAEjE,MAAM,MAAM,SAAS,GAAG,MAAM,GAAG,aAAa,GAAG,WAAW,CAAC;AAE7D,MAAM,MAAM,SAAS,GACjB,iBAAiB,GACjB,uBAAuB,GACvB,WAAW,GACX,QAAQ,GACR,kBAAkB,GAClB,eAAe,GACf,mBAAmB,GACnB,eAAe,GACf,kBAAkB,GAClB,UAAU,CAAC;AAEf,sEAAsE;AACtE,MAAM,MAAM,YAAY,GAAG,OAAO,wBAAwB,EAAE,WAAW,CAAC,SAAS,CAAC,CAAC;AAEnF,MAAM,
|
|
1
|
+
{"version":3,"file":"contracts.d.ts","sourceRoot":"","sources":["../src/contracts.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,gBAAgB,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;AAEjE,MAAM,MAAM,SAAS,GAAG,MAAM,GAAG,aAAa,GAAG,WAAW,CAAC;AAE7D,MAAM,MAAM,SAAS,GACjB,iBAAiB,GACjB,uBAAuB,GACvB,WAAW,GACX,QAAQ,GACR,kBAAkB,GAClB,eAAe,GACf,mBAAmB,GACnB,eAAe,GACf,kBAAkB,GAClB,UAAU,CAAC;AAEf,sEAAsE;AACtE,MAAM,MAAM,YAAY,GAAG,OAAO,wBAAwB,EAAE,WAAW,CAAC,SAAS,CAAC,CAAC;AAEnF,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC;IAC9B,QAAQ,CAAC,SAAS,EAAE,SAAS,YAAY,EAAE,CAAC;IAC5C,QAAQ,CAAC,QAAQ,CAAC,EAAE,gBAAgB,CAAC;CACtC"}
|
|
@@ -37,7 +37,7 @@ type DefinedCapability<M extends ModelType, P extends string> = {
|
|
|
37
37
|
readonly modelTypes: readonly M[];
|
|
38
38
|
readonly transport: Transport;
|
|
39
39
|
readonly lifecycle?: ProtocolLifecycle;
|
|
40
|
-
readonly prepare: (request: ProtocolRequest<M>) => PreparedByModelType[M];
|
|
40
|
+
readonly prepare: (request: ProtocolRequest<M, P>) => PreparedByModelType[M];
|
|
41
41
|
};
|
|
42
42
|
export declare const PROTOCOL_REGISTRY: {
|
|
43
43
|
readonly "text-generation": (DefinedCapability<"text-generation" | "multimodal-generation", "openai-chat-completions"> | DefinedCapability<"text-generation" | "multimodal-generation", "openai-responses"> | DefinedCapability<"text-generation" | "multimodal-generation", "anthropic-messages"> | DefinedCapability<"text-generation" | "multimodal-generation", "gemini-generate-content">)[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"protocol-registry.d.ts","sourceRoot":"","sources":["../src/protocol-registry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,KAAK,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAC9E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"protocol-registry.d.ts","sourceRoot":"","sources":["../src/protocol-registry.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"protocol-registry.js","sourceRoot":"","sources":["../src/protocol-registry.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,iBAAiB,EACjB,sBAAsB,EACtB,gBAAgB,EAChB,aAAa,
|
|
1
|
+
{"version":3,"file":"protocol-registry.js","sourceRoot":"","sources":["../src/protocol-registry.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,iBAAiB,EACjB,sBAAsB,EACtB,gBAAgB,EAChB,aAAa,GACd,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACzE,OAAO,EACL,mBAAmB,EACnB,sBAAsB,GACvB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,mBAAmB,EACnB,sBAAsB,EACtB,uBAAuB,EACvB,kBAAkB,EAClB,kBAAkB,EAClB,oBAAoB,GAErB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,0BAA0B,EAC1B,8BAA8B,EAC9B,yBAAyB,EACzB,6BAA6B,GAE9B,MAAM,8BAA8B,CAAC;AACtC,OAAO,EACL,qBAAqB,EACrB,sBAAsB,GAEvB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,qBAAqB,EACrB,yBAAyB,GAC1B,MAAM,yBAAyB,CAAC;AAqCjC,MAAM,MAAM,GAAG,CACb,QAAW,EACX,UAAwB,EACxB,SAAoB,EACpB,OAG2B,EAC3B,SAA6B,EACJ,EAAE;IAC3B,MAAM,OAAO,GAAoB;QAC/B,SAAS;QACT,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACpC,CAAC;IACF,OAAO;QACL,QAAQ;QACR,UAAU;QACV,SAAS;QACT,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACnC,OAAO,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC;KAChD,CAAC;AACJ,CAAC,CAAC;AACF,MAAM,SAAS,GAAG,CAAC,iBAAiB,EAAE,uBAAuB,CAAU,CAAC;AACxE,MAAM,IAAI,GAAG;IACX,MAAM,CAAC,yBAAyB,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,OAAO,EAAE,EAAE,CAC/D,iBAAiB,CAAC,OAAkD,CAAC,CACtE;IACD,MAAM,CAAC,kBAAkB,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,OAAO,EAAE,EAAE,CACxD,sBAAsB,CACpB,OAAuD,CACxD,CACF;IACD,MAAM,CAAC,oBAAoB,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,OAAO,EAAE,EAAE,CAC1D,gBAAgB,CAAC,OAAiD,CAAC,CACpE;IACD,MAAM,CAAC,yBAAyB,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,OAAO,EAAE,EAAE,CAC/D,aAAa,CAAC,OAA8C,CAAC,CAC9D;CACF,CAAC;AACF,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,iBAAiB,EAAE,IAAI;IACvB,uBAAuB,EAAE,IAAI;IAC7B,SAAS,EAAE;QACT,MAAM,CAAC,mBAAmB,EAAE,CAAC,WAAW,CAAC,EAAE,MAAM,EAAE,gBAAgB,CAAC;KACrE;IACD,MAAM,EAAE,CAAC,MAAM,CAAC,eAAe,EAAE,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,aAAa,CAAC,CAAC;IACpE,kBAAkB,EAAE;QAClB,MAAM,CACJ,eAAe,EACf,CAAC,kBAAkB,CAAC,EACpB,MAAM,EACN,sBAAsB,CACvB;KACF;IACD,eAAe,EAAE;QACf,MAAM,CAAC,eAAe,EAAE,CAAC,eAAe,CAAC,EAAE,MAAM,EAAE,mBAAmB,CAAC;KACxE;IACD,mBAAmB,EAAE;QACnB,MAAM,CAAC,cAAc,EAAE,CAAC,mBAAmB,CAAC,EAAE,MAAM,EAAE,mBAAmB,CAAC;QAC1E,MAAM,CACJ,iBAAiB,EACjB,CAAC,mBAAmB,CAAC,EACrB,MAAM,EACN,sBAAsB,CACvB;QACD,MAAM,CACJ,kBAAkB,EAClB,CAAC,mBAAmB,CAAC,EACrB,aAAa,EACb,uBAAuB,CACxB;QACD,MAAM,CACJ,aAAa,EACb,CAAC,mBAAmB,CAAC,EACrB,WAAW,EACX,kBAAkB,CACnB;QACD,MAAM,CAAC,aAAa,EAAE,CAAC,mBAAmB,CAAC,EAAE,MAAM,EAAE,kBAAkB,CAAC;QACxE,MAAM,CACJ,eAAe,EACf,CAAC,mBAAmB,CAAC,EACrB,MAAM,EACN,oBAAoB,CACrB;KACF;IACD,aAAa,EAAE;QACb,MAAM,CACJ,cAAc,EACd,CAAC,eAAe,CAAC,EACjB,MAAM,EACN,0BAA0B,CAC3B;QACD,MAAM,CACJ,kBAAkB,EAClB,CAAC,eAAe,CAAC,EACjB,WAAW,EACX,8BAA8B,CAC/B;QACD,MAAM,CAAC,aAAa,EAAE,CAAC,eAAe,CAAC,EAAE,MAAM,EAAE,yBAAyB,CAAC;QAC3E,MAAM,CACJ,yBAAyB,EACzB,CAAC,eAAe,CAAC,EACjB,MAAM,EACN,6BAA6B,CAC9B;KACF;IACD,kBAAkB,EAAE;QAClB,MAAM,CACJ,iBAAiB,EACjB,CAAC,kBAAkB,CAAC,EACpB,MAAM,EACN,qBAAqB,EACrB;YACE,UAAU,EAAE,wBAAwB;YACpC,UAAU,EAAE,gBAAgB;YAC5B,UAAU,EAAE,kBAAkB;SAC/B,CACF;QACD,MAAM,CACJ,kBAAkB,EAClB,CAAC,kBAAkB,CAAC,EACpB,MAAM,EACN,sBAAsB,EACtB;YACE,UAAU,EAAE,6CAA6C;YACzD,UAAU,EAAE,IAAI;YAChB,UAAU,EAAE,mBAAmB;SAChC,CACF;KACF;IACD,QAAQ,EAAE;QACR,MAAM,CACJ,4BAA4B,EAC5B,CAAC,UAAU,CAAC,EACZ,WAAW,EACX,yBAAyB,CAC1B;QACD,MAAM,CAAC,iBAAiB,EAAE,CAAC,UAAU,CAAC,EAAE,WAAW,EAAE,qBAAqB,CAAC;KAC5E;CAC4E,CAAC;AAGhF,MAAM,CAAC,MAAM,uBAAuB,GAAG,MAAM,CAAC,MAAM,CAClD,MAAM,CAAC,WAAW,CAChB,MAAM,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,EAAE,YAAY,CAAC,EAAE,EAAE,CAAC;IACnE,SAAS;IACT,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC;CAC5D,CAAC,CACH,CAC0D,CAAC;AAC9D,MAAM,CAAC,MAAM,wBAAwB,GACnC,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,uBAAuB,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;AAC7E,MAAM,UAAU,qBAAqB,CACnC,SAAY,EACZ,QAAgB;IAEhB,MAAM,UAAU,GAAG,iBAAiB,CAAC,SAAS,CAAC,CAAC,IAAI,CAClD,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,KAAK,QAAQ,CACrC,CAAC;IACF,IAAI,CAAC,UAAU;QACb,MAAM,IAAI,KAAK,CACb,aAAa,QAAQ,+BAA+B,SAAS,IAAI,CAClE,CAAC;IACJ,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,KAAK,MAAM,YAAY,IAAI,MAAM,CAAC,MAAM,CAAC,iBAAiB,CAAC,EAAE,CAAC;IAC5D,KAAK,MAAM,UAAU,IAAI,YAAY;QAAE,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;IACjE,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;AAC9B,CAAC;AACD,MAAM,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { ProtocolRequest } from "../request-types.js";
|
|
2
2
|
import type { PreparedRequest } from "../request-builders/http.js";
|
|
3
|
-
export declare function prepareEmbedding(request: ProtocolRequest<"embedding">): PreparedRequest;
|
|
4
|
-
export declare function prepareRerank(request: ProtocolRequest<"rerank">): PreparedRequest;
|
|
3
|
+
export declare function prepareEmbedding(request: ProtocolRequest<"embedding", "openai-embeddings">): PreparedRequest;
|
|
4
|
+
export declare function prepareRerank(request: ProtocolRequest<"rerank", "cohere-rerank">): PreparedRequest;
|
|
5
5
|
//# sourceMappingURL=catalog.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"catalog.d.ts","sourceRoot":"","sources":["../../src/protocols/catalog.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAGnE,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,eAAe,CAAC,WAAW,CAAC,
|
|
1
|
+
{"version":3,"file":"catalog.d.ts","sourceRoot":"","sources":["../../src/protocols/catalog.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAGnE,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,eAAe,CAAC,WAAW,EAAE,mBAAmB,CAAC,GACzD,eAAe,CAKjB;AAED,wBAAgB,aAAa,CAC3B,OAAO,EAAE,eAAe,CAAC,QAAQ,EAAE,eAAe,CAAC,GAClD,eAAe,CAKjB"}
|
|
@@ -1,27 +1,14 @@
|
|
|
1
1
|
import { jsonRequest } from "../request-builders/http.js";
|
|
2
2
|
export function prepareEmbedding(request) {
|
|
3
3
|
return jsonRequest(request, "/v1/embeddings", {
|
|
4
|
-
...request.input
|
|
4
|
+
...request.input,
|
|
5
5
|
model: request.model,
|
|
6
|
-
input: request.input.input,
|
|
7
|
-
...(request.input.dimensions !== undefined
|
|
8
|
-
? { dimensions: request.input.dimensions }
|
|
9
|
-
: {}),
|
|
10
|
-
...(request.input.encodingFormat
|
|
11
|
-
? { encoding_format: request.input.encodingFormat }
|
|
12
|
-
: {}),
|
|
13
6
|
});
|
|
14
7
|
}
|
|
15
8
|
export function prepareRerank(request) {
|
|
16
9
|
return jsonRequest(request, "/v2/rerank", {
|
|
17
|
-
...request.input
|
|
10
|
+
...request.input,
|
|
18
11
|
model: request.model,
|
|
19
|
-
query: request.input.query,
|
|
20
|
-
documents: request.input.documents,
|
|
21
|
-
...(request.input.topN !== undefined ? { top_n: request.input.topN } : {}),
|
|
22
|
-
...(request.input.returnDocuments !== undefined
|
|
23
|
-
? { return_documents: request.input.returnDocuments }
|
|
24
|
-
: {}),
|
|
25
12
|
});
|
|
26
13
|
}
|
|
27
14
|
//# sourceMappingURL=catalog.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"catalog.js","sourceRoot":"","sources":["../../src/protocols/catalog.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAE1D,MAAM,UAAU,gBAAgB,CAC9B,
|
|
1
|
+
{"version":3,"file":"catalog.js","sourceRoot":"","sources":["../../src/protocols/catalog.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAE1D,MAAM,UAAU,gBAAgB,CAC9B,OAA0D;IAE1D,OAAO,WAAW,CAAC,OAAO,EAAE,gBAAgB,EAAE;QAC5C,GAAG,OAAO,CAAC,KAAK;QAChB,KAAK,EAAE,OAAO,CAAC,KAAK;KACrB,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,aAAa,CAC3B,OAAmD;IAEnD,OAAO,WAAW,CAAC,OAAO,EAAE,YAAY,EAAE;QACxC,GAAG,OAAO,CAAC,KAAK;QAChB,KAAK,EAAE,OAAO,CAAC,KAAK;KACrB,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { ProtocolRequest } from "../request-types.js";
|
|
2
2
|
import type { PreparedRequest } from "../request-builders/http.js";
|
|
3
|
-
export declare function prepareImageGeneration(request: ProtocolRequest<"image-generation">): PreparedRequest;
|
|
4
|
-
export declare function prepareImageEditing(request: ProtocolRequest<"image-editing">): PreparedRequest;
|
|
3
|
+
export declare function prepareImageGeneration(request: ProtocolRequest<"image-generation", "openai-images">): PreparedRequest;
|
|
4
|
+
export declare function prepareImageEditing(request: ProtocolRequest<"image-editing", "openai-images">): PreparedRequest;
|
|
5
5
|
//# sourceMappingURL=images.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"images.d.ts","sourceRoot":"","sources":["../../src/protocols/images.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAKnE,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,eAAe,CAAC,kBAAkB,CAAC,
|
|
1
|
+
{"version":3,"file":"images.d.ts","sourceRoot":"","sources":["../../src/protocols/images.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAKnE,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,eAAe,CAAC,kBAAkB,EAAE,eAAe,CAAC,GAC5D,eAAe,CAKjB;AAED,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,eAAe,CAAC,eAAe,EAAE,eAAe,CAAC,GACzD,eAAe,CAqBjB"}
|
package/dist/protocols/images.js
CHANGED
|
@@ -2,30 +2,20 @@ import { mediaBlob } from "../media-codecs.js";
|
|
|
2
2
|
import { multipartRequest } from "../request-builders/multipart.js";
|
|
3
3
|
import { jsonRequest } from "../request-builders/http.js";
|
|
4
4
|
export function prepareImageGeneration(request) {
|
|
5
|
-
const size = typeof request.input.size === "string"
|
|
6
|
-
? request.input.size
|
|
7
|
-
: request.input.size
|
|
8
|
-
? `${request.input.size.width}x${request.input.size.height}`
|
|
9
|
-
: undefined;
|
|
10
5
|
return jsonRequest(request, "/v1/images/generations", {
|
|
11
|
-
...request.input
|
|
6
|
+
...request.input,
|
|
12
7
|
model: request.model,
|
|
13
|
-
prompt: request.input.prompt,
|
|
14
|
-
...(size ? { size } : {}),
|
|
15
|
-
...(request.input.n !== undefined ? { n: request.input.n } : {}),
|
|
16
|
-
...(request.input.quality ? { quality: request.input.quality } : {}),
|
|
17
|
-
...(request.input.style ? { style: request.input.style } : {}),
|
|
18
|
-
...(request.input.responseFormat
|
|
19
|
-
? { response_format: request.input.responseFormat }
|
|
20
|
-
: {}),
|
|
21
8
|
});
|
|
22
9
|
}
|
|
23
10
|
export function prepareImageEditing(request) {
|
|
24
11
|
const form = new FormData();
|
|
25
12
|
form.set("model", request.model);
|
|
26
13
|
form.set("prompt", request.input.prompt);
|
|
27
|
-
const
|
|
28
|
-
|
|
14
|
+
const images = Array.isArray(request.input.image)
|
|
15
|
+
? request.input.image
|
|
16
|
+
: [request.input.image];
|
|
17
|
+
const imageField = images.length > 1 ? "image[]" : "image";
|
|
18
|
+
images.forEach((image, index) => {
|
|
29
19
|
form.append(imageField, mediaBlob(image), `image-${index + 1}`);
|
|
30
20
|
});
|
|
31
21
|
if (request.input.mask !== undefined)
|
|
@@ -34,7 +24,9 @@ export function prepareImageEditing(request) {
|
|
|
34
24
|
form.set("size", request.input.size);
|
|
35
25
|
if (request.input.n !== undefined)
|
|
36
26
|
form.set("n", String(request.input.n));
|
|
37
|
-
for (const [key, value] of Object.entries(request.input
|
|
27
|
+
for (const [key, value] of Object.entries(request.input)) {
|
|
28
|
+
if (["prompt", "image", "mask", "size", "n"].includes(key))
|
|
29
|
+
continue;
|
|
38
30
|
if (value !== undefined)
|
|
39
31
|
form.set(key, typeof value === "string" ? value : JSON.stringify(value));
|
|
40
32
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"images.js","sourceRoot":"","sources":["../../src/protocols/images.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AACpE,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAE1D,MAAM,UAAU,sBAAsB,CACpC,
|
|
1
|
+
{"version":3,"file":"images.js","sourceRoot":"","sources":["../../src/protocols/images.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AACpE,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAE1D,MAAM,UAAU,sBAAsB,CACpC,OAA6D;IAE7D,OAAO,WAAW,CAAC,OAAO,EAAE,wBAAwB,EAAE;QACpD,GAAG,OAAO,CAAC,KAAK;QAChB,KAAK,EAAE,OAAO,CAAC,KAAK;KACrB,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,mBAAmB,CACjC,OAA0D;IAE1D,MAAM,IAAI,GAAG,IAAI,QAAQ,EAAE,CAAC;IAC5B,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;IACjC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACzC,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC;QAC/C,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK;QACrB,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAC1B,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC;IAC3D,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;QAC9B,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,SAAS,CAAC,KAAK,CAAC,EAAE,SAAS,KAAK,GAAG,CAAC,EAAE,CAAC,CAAC;IAClE,CAAC,CAAC,CAAC;IACH,IAAI,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,SAAS;QAClC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,CAAC;IAC1D,IAAI,OAAO,CAAC,KAAK,CAAC,IAAI;QAAE,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC7D,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC,KAAK,SAAS;QAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1E,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACzD,IAAI,CAAC,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC;YAAE,SAAS;QACrE,IAAI,KAAK,KAAK,SAAS;YACrB,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;IAC7E,CAAC;IACD,OAAO,gBAAgB,CAAC,OAAO,EAAE,kBAAkB,EAAE,IAAI,CAAC,CAAC;AAC7D,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { ProtocolRequest } from "../request-types.js";
|
|
2
2
|
import { type PreparedWebSocketRequest } from "../request-builders/websocket.js";
|
|
3
|
-
type RealtimeRequest = ProtocolRequest<"realtime">;
|
|
4
|
-
export declare function prepareOpenAIRealtime(request: RealtimeRequest): PreparedWebSocketRequest;
|
|
5
|
-
export declare function prepareResponsesWebSocket(request: RealtimeRequest): PreparedWebSocketRequest;
|
|
3
|
+
type RealtimeRequest<P extends "openai-realtime" | "openai-responses-websocket"> = ProtocolRequest<"realtime", P>;
|
|
4
|
+
export declare function prepareOpenAIRealtime(request: RealtimeRequest<"openai-realtime">): PreparedWebSocketRequest;
|
|
5
|
+
export declare function prepareResponsesWebSocket(request: RealtimeRequest<"openai-responses-websocket">): PreparedWebSocketRequest;
|
|
6
6
|
export {};
|
|
7
7
|
//# sourceMappingURL=realtime.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"realtime.d.ts","sourceRoot":"","sources":["../../src/protocols/realtime.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAEL,KAAK,wBAAwB,EAC9B,MAAM,kCAAkC,CAAC;AAE1C,KAAK,eAAe,GAAG,eAAe,CAAC,UAAU,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"realtime.d.ts","sourceRoot":"","sources":["../../src/protocols/realtime.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAEL,KAAK,wBAAwB,EAC9B,MAAM,kCAAkC,CAAC;AAE1C,KAAK,eAAe,CAAC,CAAC,SAAS,iBAAiB,GAAG,4BAA4B,IAC7E,eAAe,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;AAEjC,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,eAAe,CAAC,iBAAiB,CAAC,GAC1C,wBAAwB,CAQ1B;AAED,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,eAAe,CAAC,4BAA4B,CAAC,GACrD,wBAAwB,CAQ1B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"realtime.js","sourceRoot":"","sources":["../../src/protocols/realtime.ts"],"names":[],"mappings":"AACA,OAAO,EACL,gBAAgB,GAEjB,MAAM,kCAAkC,CAAC;
|
|
1
|
+
{"version":3,"file":"realtime.js","sourceRoot":"","sources":["../../src/protocols/realtime.ts"],"names":[],"mappings":"AACA,OAAO,EACL,gBAAgB,GAEjB,MAAM,kCAAkC,CAAC;AAK1C,MAAM,UAAU,qBAAqB,CACnC,OAA2C;IAE3C,MAAM,KAAK,GAAG,IAAI,eAAe,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACvD,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC;QAAE,KAAK,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;IAC3D,OAAO,gBAAgB,CACrB,OAAO,EACP,gBAAgB,KAAK,CAAC,QAAQ,EAAE,EAAE,EAClC,OAAO,CAAC,KAAK,CAAC,OAAO,CACtB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,yBAAyB,CACvC,OAAsD;IAEtD,OAAO,gBAAgB,CACrB,OAAO,EACP,eAAe,EACf,OAAO,CAAC,KAAK,CAAC,OAAO;QACnB,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,GAAG,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE;QACpD,CAAC,CAAC,SAAS,CACd,CAAC;AACJ,CAAC"}
|
|
@@ -1,18 +1,19 @@
|
|
|
1
|
-
import type { ProtocolRequest } from "../request-types.js";
|
|
2
1
|
import type { ProtocolContext } from "../protocol-registry.js";
|
|
2
|
+
import type { ProtocolRequest } from "../request-types.js";
|
|
3
3
|
import { type PreparedRequest } from "../request-builders/http.js";
|
|
4
|
-
type
|
|
4
|
+
type SpeechProtocol = "openai-audio" | "dashscope-audio" | "volcengine-audio" | "xfyun-audio" | "zhipu-audio" | "minimax-audio";
|
|
5
|
+
type SpeechRequest<P extends SpeechProtocol> = ProtocolRequest<"speech-generation", P>;
|
|
5
6
|
export interface PreparedSpeechRequest extends PreparedRequest {
|
|
6
7
|
readonly response: {
|
|
7
8
|
readonly kind: "audio";
|
|
8
9
|
readonly mediaType?: string;
|
|
9
10
|
};
|
|
10
11
|
}
|
|
11
|
-
export declare function prepareOpenAISpeech(request: SpeechRequest
|
|
12
|
-
export declare function prepareDashScopeSpeech(request: SpeechRequest
|
|
13
|
-
export declare function prepareVolcengineSpeech(request: SpeechRequest
|
|
14
|
-
export declare function prepareZhipuSpeech(request: SpeechRequest
|
|
15
|
-
export declare function prepareMiniMaxSpeech(request: SpeechRequest
|
|
16
|
-
export declare function prepareXfyunSpeech(request: SpeechRequest
|
|
12
|
+
export declare function prepareOpenAISpeech(request: SpeechRequest<"openai-audio">, context: ProtocolContext): PreparedSpeechRequest;
|
|
13
|
+
export declare function prepareDashScopeSpeech(request: SpeechRequest<"dashscope-audio">, context: ProtocolContext): PreparedSpeechRequest;
|
|
14
|
+
export declare function prepareVolcengineSpeech(request: SpeechRequest<"volcengine-audio">, context: ProtocolContext): PreparedSpeechRequest;
|
|
15
|
+
export declare function prepareZhipuSpeech(request: SpeechRequest<"zhipu-audio">, context: ProtocolContext): PreparedSpeechRequest;
|
|
16
|
+
export declare function prepareMiniMaxSpeech(request: SpeechRequest<"minimax-audio">, context: ProtocolContext): PreparedSpeechRequest;
|
|
17
|
+
export declare function prepareXfyunSpeech(request: SpeechRequest<"xfyun-audio">, context: ProtocolContext): PreparedSpeechRequest;
|
|
17
18
|
export {};
|
|
18
19
|
//# sourceMappingURL=speech.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"speech.d.ts","sourceRoot":"","sources":["../../src/protocols/speech.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"speech.d.ts","sourceRoot":"","sources":["../../src/protocols/speech.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAe,KAAK,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAGhF,KAAK,cAAc,GACf,cAAc,GACd,iBAAiB,GACjB,kBAAkB,GAClB,aAAa,GACb,aAAa,GACb,eAAe,CAAC;AACpB,KAAK,aAAa,CAAC,CAAC,SAAS,cAAc,IAAI,eAAe,CAC5D,mBAAmB,EACnB,CAAC,CACF,CAAC;AAEF,MAAM,WAAW,qBAAsB,SAAQ,eAAe;IAC5D,QAAQ,CAAC,QAAQ,EAAE;QAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;QAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CAC5E;AAED,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,aAAa,CAAC,cAAc,CAAC,EACtC,OAAO,EAAE,eAAe,GACvB,qBAAqB,CAKvB;AAED,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,aAAa,CAAC,iBAAiB,CAAC,EACzC,OAAO,EAAE,eAAe,GACvB,qBAAqB,CAOvB;AAED,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,aAAa,CAAC,kBAAkB,CAAC,EAC1C,OAAO,EAAE,eAAe,GACvB,qBAAqB,CAIvB;AAED,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,aAAa,CAAC,aAAa,CAAC,EACrC,OAAO,EAAE,eAAe,GACvB,qBAAqB,CAKvB;AAED,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,aAAa,CAAC,eAAe,CAAC,EACvC,OAAO,EAAE,eAAe,GACvB,qBAAqB,CAKvB;AAED,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,aAAa,CAAC,aAAa,CAAC,EACrC,OAAO,EAAE,eAAe,GACvB,qBAAqB,CAIvB"}
|
package/dist/protocols/speech.js
CHANGED
|
@@ -1,102 +1,55 @@
|
|
|
1
1
|
import { jsonRequest } from "../request-builders/http.js";
|
|
2
2
|
import { websocketRequest } from "../request-builders/websocket.js";
|
|
3
3
|
export function prepareOpenAISpeech(request, context) {
|
|
4
|
-
const input = request.input;
|
|
5
4
|
return audioRequest(request, context, "/v1/audio/speech", {
|
|
6
|
-
...input
|
|
5
|
+
...request.input,
|
|
7
6
|
model: request.model,
|
|
8
|
-
input: input.text,
|
|
9
|
-
voice: input.voice,
|
|
10
|
-
...(input.responseFormat ? { response_format: input.responseFormat } : {}),
|
|
11
|
-
...(input.speed !== undefined ? { speed: input.speed } : {}),
|
|
12
7
|
});
|
|
13
8
|
}
|
|
14
9
|
export function prepareDashScopeSpeech(request, context) {
|
|
15
|
-
|
|
16
|
-
return audioRequest(request, context, "/api/v1/services/aigc/multimodal-generation/generation", {
|
|
17
|
-
...input.extraBody,
|
|
18
|
-
model: request.model,
|
|
19
|
-
input: {
|
|
20
|
-
text: input.text,
|
|
21
|
-
...(input.voice ? { voice: input.voice } : {}),
|
|
22
|
-
},
|
|
23
|
-
parameters: {
|
|
24
|
-
...(input.parameters ?? {}),
|
|
25
|
-
...(input.voice ? { voice: input.voice } : {}),
|
|
26
|
-
...(input.responseFormat ? { format: input.responseFormat } : {}),
|
|
27
|
-
...(input.speed !== undefined ? { speed: input.speed } : {}),
|
|
28
|
-
},
|
|
29
|
-
});
|
|
10
|
+
return audioRequest(request, context, "/api/v1/services/aigc/multimodal-generation/generation", { ...request.input, model: request.model });
|
|
30
11
|
}
|
|
31
12
|
export function prepareVolcengineSpeech(request, context) {
|
|
32
|
-
const input = request.input;
|
|
33
|
-
// Doubao/Volcengine's current big-model TTS API is V3 SSE. Keep the
|
|
34
|
-
// provider protocol name stable while emitting the V3 wire contract.
|
|
35
13
|
return audioRequest(request, context, "/api/v3/tts/unidirectional/sse", {
|
|
36
|
-
...input
|
|
37
|
-
user: recordParameter(input.parameters?.user),
|
|
38
|
-
req_params: {
|
|
39
|
-
...recordParameter(input.parameters?.req_params),
|
|
40
|
-
text: input.text,
|
|
41
|
-
...(input.voice ? { voice_type: input.voice } : {}),
|
|
42
|
-
...(input.responseFormat ? { format: input.responseFormat } : {}),
|
|
43
|
-
...(input.speed !== undefined ? { speed_ratio: input.speed } : {}),
|
|
44
|
-
},
|
|
14
|
+
...request.input,
|
|
45
15
|
});
|
|
46
16
|
}
|
|
47
17
|
export function prepareZhipuSpeech(request, context) {
|
|
48
|
-
const input = request.input;
|
|
49
18
|
return audioRequest(request, context, "/paas/v4/audio/speech", {
|
|
50
|
-
...input
|
|
19
|
+
...request.input,
|
|
51
20
|
model: request.model,
|
|
52
|
-
input: input.text,
|
|
53
|
-
...(input.voice ? { voice: input.voice } : {}),
|
|
54
|
-
...(input.responseFormat ? { response_format: input.responseFormat } : {}),
|
|
55
|
-
...(input.speed !== undefined ? { speed: input.speed } : {}),
|
|
56
|
-
...(input.parameters ?? {}),
|
|
57
21
|
});
|
|
58
22
|
}
|
|
59
23
|
export function prepareMiniMaxSpeech(request, context) {
|
|
60
|
-
const input = request.input;
|
|
61
24
|
return audioRequest(request, context, "/v1/t2a_v2", {
|
|
62
|
-
...input
|
|
25
|
+
...request.input,
|
|
63
26
|
model: request.model,
|
|
64
|
-
text: input.text,
|
|
65
|
-
voice_setting: {
|
|
66
|
-
...recordParameter(input.parameters?.voice_setting),
|
|
67
|
-
...(input.voice ? { voice_id: input.voice } : {}),
|
|
68
|
-
...(input.speed !== undefined ? { speed: input.speed } : {}),
|
|
69
|
-
},
|
|
70
|
-
audio_setting: {
|
|
71
|
-
...recordParameter(input.parameters?.audio_setting),
|
|
72
|
-
...(input.responseFormat ? { format: input.responseFormat } : {}),
|
|
73
|
-
},
|
|
74
27
|
});
|
|
75
28
|
}
|
|
76
29
|
export function prepareXfyunSpeech(request, context) {
|
|
77
|
-
const input = request.input;
|
|
78
30
|
return audioRequest(request, context, "/v2/tts", {
|
|
79
|
-
...input
|
|
80
|
-
common: input.parameters?.common ?? {},
|
|
81
|
-
business: {
|
|
82
|
-
...recordParameter(input.parameters?.business),
|
|
83
|
-
...(input.voice ? { vcn: input.voice } : {}),
|
|
84
|
-
...(input.speed !== undefined ? { speed: input.speed } : {}),
|
|
85
|
-
...(input.responseFormat ? { aue: input.responseFormat } : {}),
|
|
86
|
-
},
|
|
87
|
-
data: { text: input.text, status: 2 },
|
|
31
|
+
...request.input,
|
|
88
32
|
});
|
|
89
33
|
}
|
|
90
34
|
function audioRequest(request, context, path, body) {
|
|
91
35
|
const prepared = context.transport === "websocket"
|
|
92
36
|
? websocketRequest(request, path, body)
|
|
93
37
|
: jsonRequest(request, path, body, {}, context.transport);
|
|
94
|
-
return { ...prepared, response: audioResponse(request.input
|
|
38
|
+
return { ...prepared, response: audioResponse(formatFromInput(request.input)) };
|
|
95
39
|
}
|
|
96
|
-
function
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
40
|
+
function formatFromInput(input) {
|
|
41
|
+
if (typeof input.response_format === "string")
|
|
42
|
+
return input.response_format;
|
|
43
|
+
for (const key of ["parameters", "req_params", "audio_setting", "business"]) {
|
|
44
|
+
const nested = input[key];
|
|
45
|
+
if (nested && typeof nested === "object") {
|
|
46
|
+
const format = nested.format ??
|
|
47
|
+
nested.aue;
|
|
48
|
+
if (typeof format === "string")
|
|
49
|
+
return format;
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
return undefined;
|
|
100
53
|
}
|
|
101
54
|
function mediaTypeFor(format) {
|
|
102
55
|
switch (format?.toLowerCase()) {
|
|
@@ -118,7 +71,7 @@ function mediaTypeFor(format) {
|
|
|
118
71
|
}
|
|
119
72
|
}
|
|
120
73
|
function audioResponse(format) {
|
|
121
|
-
const mediaType = mediaTypeFor(format);
|
|
74
|
+
const mediaType = mediaTypeFor(typeof format === "string" ? format : undefined);
|
|
122
75
|
return { kind: "audio", ...(mediaType ? { mediaType } : {}) };
|
|
123
76
|
}
|
|
124
77
|
//# sourceMappingURL=speech.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"speech.js","sourceRoot":"","sources":["../../src/protocols/speech.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAwB,MAAM,6BAA6B,CAAC;AAChF,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;
|
|
1
|
+
{"version":3,"file":"speech.js","sourceRoot":"","sources":["../../src/protocols/speech.ts"],"names":[],"mappings":"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"}
|
package/dist/protocols/text.d.ts
CHANGED
|
@@ -1,13 +1,14 @@
|
|
|
1
|
-
import type { Message } from "../contracts.js";
|
|
2
1
|
import type { ProtocolRequest } from "../request-types.js";
|
|
3
2
|
import type { PreparedRequest } from "../request-builders/http.js";
|
|
4
|
-
|
|
5
|
-
export
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
export declare function
|
|
11
|
-
export declare function
|
|
12
|
-
export declare function
|
|
3
|
+
type TextModel = "text-generation" | "multimodal-generation";
|
|
4
|
+
export type TextRequest = ProtocolRequest<TextModel, "openai-chat-completions" | "openai-responses" | "anthropic-messages" | "gemini-generate-content">;
|
|
5
|
+
type ChatRequest = ProtocolRequest<TextModel, "openai-chat-completions">;
|
|
6
|
+
type ResponsesRequest = ProtocolRequest<TextModel, "openai-responses">;
|
|
7
|
+
type AnthropicRequest = ProtocolRequest<TextModel, "anthropic-messages">;
|
|
8
|
+
type GeminiRequest = ProtocolRequest<TextModel, "gemini-generate-content">;
|
|
9
|
+
export declare function prepareOpenAIChat(request: ChatRequest): PreparedRequest;
|
|
10
|
+
export declare function prepareOpenAIResponses(request: ResponsesRequest): PreparedRequest;
|
|
11
|
+
export declare function prepareAnthropic(request: AnthropicRequest): PreparedRequest;
|
|
12
|
+
export declare function prepareGemini(request: GeminiRequest): PreparedRequest;
|
|
13
|
+
export {};
|
|
13
14
|
//# sourceMappingURL=text.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"text.d.ts","sourceRoot":"","sources":["../../src/protocols/text.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"text.d.ts","sourceRoot":"","sources":["../../src/protocols/text.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAGnE,KAAK,SAAS,GAAG,iBAAiB,GAAG,uBAAuB,CAAC;AAC7D,MAAM,MAAM,WAAW,GAAG,eAAe,CACvC,SAAS,EACP,yBAAyB,GACzB,kBAAkB,GAClB,oBAAoB,GACpB,yBAAyB,CAC5B,CAAC;AACF,KAAK,WAAW,GAAG,eAAe,CAAC,SAAS,EAAE,yBAAyB,CAAC,CAAC;AACzE,KAAK,gBAAgB,GAAG,eAAe,CAAC,SAAS,EAAE,kBAAkB,CAAC,CAAC;AACvE,KAAK,gBAAgB,GAAG,eAAe,CAAC,SAAS,EAAE,oBAAoB,CAAC,CAAC;AACzE,KAAK,aAAa,GAAG,eAAe,CAAC,SAAS,EAAE,yBAAyB,CAAC,CAAC;AAE3E,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,WAAW,GAAG,eAAe,CAQvE;AAED,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,gBAAgB,GACxB,eAAe,CAQjB;AAED,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,gBAAgB,GAAG,eAAe,CAa3E;AAED,wBAAgB,aAAa,CAAC,OAAO,EAAE,aAAa,GAAG,eAAe,CAWrE"}
|