@deepseek-ai/dsh-experimental-api-speech-to-text 0.2.1-alpha.1 → 0.2.1-alpha.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/lib/typert.host.js +117 -65
- package/lib/typert.remote-client.d.ts +10 -2
- package/lib/typert.remote-client.js +111 -64
- package/locale/en.json +6 -0
- package/locale/zh.json +6 -0
- package/package.json +11 -9
package/lib/typert.host.js
CHANGED
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
/* Generated by @deepseek-ai/dsh-typert-generator from FaceModel — do not edit. */
|
|
2
2
|
import { z } from 'zod'
|
|
3
3
|
|
|
4
|
+
import { createTypertRemoteInfo } from '@deepseek-ai/dsh-typert-protocol/remote-info'
|
|
5
|
+
|
|
4
6
|
let _deepseek_ai_dsh_experimental_api_speech_to_text_speech_cancelPreparation_parameter_0$schema$value
|
|
5
|
-
const _deepseek_ai_dsh_experimental_api_speech_to_text_speech_cancelPreparation_parameter_0$schema = () => (_deepseek_ai_dsh_experimental_api_speech_to_text_speech_cancelPreparation_parameter_0$schema$value ??= z.
|
|
7
|
+
const _deepseek_ai_dsh_experimental_api_speech_to_text_speech_cancelPreparation_parameter_0$schema = () => (_deepseek_ai_dsh_experimental_api_speech_to_text_speech_cancelPreparation_parameter_0$schema$value ??= z.string())
|
|
6
8
|
let _deepseek_ai_dsh_experimental_api_speech_to_text_speech_cancelPreparation_result$schema$value
|
|
7
9
|
const _deepseek_ai_dsh_experimental_api_speech_to_text_speech_cancelPreparation_result$schema = () => (_deepseek_ai_dsh_experimental_api_speech_to_text_speech_cancelPreparation_result$schema$value ??= z.void())
|
|
8
10
|
let _deepseek_ai_dsh_experimental_api_speech_to_text_speech_catalog_result$schema$value
|
|
@@ -10,38 +12,35 @@ const _deepseek_ai_dsh_experimental_api_speech_to_text_speech_catalog_result$sch
|
|
|
10
12
|
'maxAudioBytes': z.number().readonly(),
|
|
11
13
|
'maxDurationSeconds': z.number().readonly(),
|
|
12
14
|
'providers': z.array(z.object({
|
|
13
|
-
'preparation': z.union([z.
|
|
15
|
+
'preparation': z.union([z.object({
|
|
14
16
|
'phase': z.union([z.literal("cancelled"), z.literal("ready"), z.literal("unprepared"), z.literal("standby")]).readonly(),
|
|
15
|
-
}), z.object({
|
|
16
17
|
'step': z.union([z.literal("check"), z.literal("model"), z.literal("vad"), z.literal("verify"), z.literal("load")]).readonly().optional(),
|
|
17
18
|
'steps': z.array(z.object({
|
|
18
19
|
'kind': z.union([z.literal("check"), z.literal("model"), z.literal("vad"), z.literal("verify"), z.literal("load")]).readonly(),
|
|
19
20
|
'status': z.union([z.literal("cancelled"), z.literal("failed"), z.literal("running"), z.literal("pending"), z.literal("complete")]).readonly(),
|
|
20
21
|
'startedAt': z.number().readonly().optional(),
|
|
21
22
|
})).readonly().optional(),
|
|
22
|
-
})
|
|
23
|
+
}), z.object({
|
|
23
24
|
'phase': z.literal("downloading").readonly(),
|
|
24
25
|
'resource': z.string().readonly(),
|
|
25
26
|
'completedBytes': z.number().readonly(),
|
|
26
27
|
'totalBytes': z.number().readonly().optional(),
|
|
27
|
-
}), z.object({
|
|
28
28
|
'step': z.union([z.literal("check"), z.literal("model"), z.literal("vad"), z.literal("verify"), z.literal("load")]).readonly().optional(),
|
|
29
29
|
'steps': z.array(z.object({
|
|
30
30
|
'kind': z.union([z.literal("check"), z.literal("model"), z.literal("vad"), z.literal("verify"), z.literal("load")]).readonly(),
|
|
31
31
|
'status': z.union([z.literal("cancelled"), z.literal("failed"), z.literal("running"), z.literal("pending"), z.literal("complete")]).readonly(),
|
|
32
32
|
'startedAt': z.number().readonly().optional(),
|
|
33
33
|
})).readonly().optional(),
|
|
34
|
-
})
|
|
34
|
+
}), z.object({
|
|
35
35
|
'phase': z.union([z.literal("checking"), z.literal("loading"), z.literal("waking"), z.literal("cancelling")]).readonly(),
|
|
36
36
|
'startedAt': z.number().readonly(),
|
|
37
|
-
}), z.object({
|
|
38
37
|
'step': z.union([z.literal("check"), z.literal("model"), z.literal("vad"), z.literal("verify"), z.literal("load")]).readonly().optional(),
|
|
39
38
|
'steps': z.array(z.object({
|
|
40
39
|
'kind': z.union([z.literal("check"), z.literal("model"), z.literal("vad"), z.literal("verify"), z.literal("load")]).readonly(),
|
|
41
40
|
'status': z.union([z.literal("cancelled"), z.literal("failed"), z.literal("running"), z.literal("pending"), z.literal("complete")]).readonly(),
|
|
42
41
|
'startedAt': z.number().readonly().optional(),
|
|
43
42
|
})).readonly().optional(),
|
|
44
|
-
})
|
|
43
|
+
}), z.object({
|
|
45
44
|
'phase': z.literal("failed").readonly(),
|
|
46
45
|
'message': z.string().readonly(),
|
|
47
46
|
'download': z.object({
|
|
@@ -51,34 +50,33 @@ const _deepseek_ai_dsh_experimental_api_speech_to_text_speech_catalog_result$sch
|
|
|
51
50
|
'code': z.string().readonly().optional(),
|
|
52
51
|
'status': z.number().readonly().optional(),
|
|
53
52
|
}).readonly().optional(),
|
|
54
|
-
}), z.object({
|
|
55
53
|
'step': z.union([z.literal("check"), z.literal("model"), z.literal("vad"), z.literal("verify"), z.literal("load")]).readonly().optional(),
|
|
56
54
|
'steps': z.array(z.object({
|
|
57
55
|
'kind': z.union([z.literal("check"), z.literal("model"), z.literal("vad"), z.literal("verify"), z.literal("load")]).readonly(),
|
|
58
56
|
'status': z.union([z.literal("cancelled"), z.literal("failed"), z.literal("running"), z.literal("pending"), z.literal("complete")]).readonly(),
|
|
59
57
|
'startedAt': z.number().readonly().optional(),
|
|
60
58
|
})).readonly().optional(),
|
|
61
|
-
})
|
|
62
|
-
'id': z.
|
|
59
|
+
})]).readonly(),
|
|
60
|
+
'id': z.string().readonly(),
|
|
63
61
|
'name': z.string().readonly(),
|
|
64
62
|
'location': z.union([z.literal("host-local"), z.literal("cloud")]).readonly(),
|
|
65
|
-
'languages': z.array(z.string()).readonly(),
|
|
63
|
+
'languages': z.array(z.string()).readonly().describe('Accepted language hints, including automatic detection when supported.'),
|
|
66
64
|
'setupEstimate': z.object({
|
|
67
65
|
'recommendedDiskBytes': z.number().readonly(),
|
|
68
66
|
'expectedMemoryBytes': z.number().readonly(),
|
|
69
67
|
'minimumMinutes': z.number().readonly(),
|
|
70
68
|
'maximumMinutes': z.number().readonly(),
|
|
71
69
|
}).readonly().optional(),
|
|
72
|
-
'downloadSources': z.array(z.string()).readonly().optional(),
|
|
70
|
+
'downloadSources': z.array(z.string()).readonly().optional().describe('Origins offered for an explicit preparation download; omitted or empty when no choice applies.'),
|
|
73
71
|
})).readonly(),
|
|
74
72
|
'selection': z.object({
|
|
75
|
-
'providerId': z.
|
|
73
|
+
'providerId': z.string().readonly(),
|
|
76
74
|
'language': z.string().readonly(),
|
|
77
75
|
}).readonly(),
|
|
78
76
|
}))
|
|
79
77
|
let _deepseek_ai_dsh_experimental_api_speech_to_text_speech_configure_parameter_0$schema$value
|
|
80
78
|
const _deepseek_ai_dsh_experimental_api_speech_to_text_speech_configure_parameter_0$schema = () => (_deepseek_ai_dsh_experimental_api_speech_to_text_speech_configure_parameter_0$schema$value ??= z.object({
|
|
81
|
-
'providerId': z.
|
|
79
|
+
'providerId': z.string().readonly().optional(),
|
|
82
80
|
'language': z.string().readonly().optional(),
|
|
83
81
|
}))
|
|
84
82
|
let _deepseek_ai_dsh_experimental_api_speech_to_text_speech_configure_result$schema$value
|
|
@@ -88,38 +86,35 @@ const _deepseek_ai_dsh_experimental_api_speech_to_text_speech_follow_result$sche
|
|
|
88
86
|
'maxAudioBytes': z.number().readonly(),
|
|
89
87
|
'maxDurationSeconds': z.number().readonly(),
|
|
90
88
|
'providers': z.array(z.object({
|
|
91
|
-
'preparation': z.union([z.
|
|
89
|
+
'preparation': z.union([z.object({
|
|
92
90
|
'phase': z.union([z.literal("cancelled"), z.literal("ready"), z.literal("unprepared"), z.literal("standby")]).readonly(),
|
|
93
|
-
}), z.object({
|
|
94
91
|
'step': z.union([z.literal("check"), z.literal("model"), z.literal("vad"), z.literal("verify"), z.literal("load")]).readonly().optional(),
|
|
95
92
|
'steps': z.array(z.object({
|
|
96
93
|
'kind': z.union([z.literal("check"), z.literal("model"), z.literal("vad"), z.literal("verify"), z.literal("load")]).readonly(),
|
|
97
94
|
'status': z.union([z.literal("cancelled"), z.literal("failed"), z.literal("running"), z.literal("pending"), z.literal("complete")]).readonly(),
|
|
98
95
|
'startedAt': z.number().readonly().optional(),
|
|
99
96
|
})).readonly().optional(),
|
|
100
|
-
})
|
|
97
|
+
}), z.object({
|
|
101
98
|
'phase': z.literal("downloading").readonly(),
|
|
102
99
|
'resource': z.string().readonly(),
|
|
103
100
|
'completedBytes': z.number().readonly(),
|
|
104
101
|
'totalBytes': z.number().readonly().optional(),
|
|
105
|
-
}), z.object({
|
|
106
102
|
'step': z.union([z.literal("check"), z.literal("model"), z.literal("vad"), z.literal("verify"), z.literal("load")]).readonly().optional(),
|
|
107
103
|
'steps': z.array(z.object({
|
|
108
104
|
'kind': z.union([z.literal("check"), z.literal("model"), z.literal("vad"), z.literal("verify"), z.literal("load")]).readonly(),
|
|
109
105
|
'status': z.union([z.literal("cancelled"), z.literal("failed"), z.literal("running"), z.literal("pending"), z.literal("complete")]).readonly(),
|
|
110
106
|
'startedAt': z.number().readonly().optional(),
|
|
111
107
|
})).readonly().optional(),
|
|
112
|
-
})
|
|
108
|
+
}), z.object({
|
|
113
109
|
'phase': z.union([z.literal("checking"), z.literal("loading"), z.literal("waking"), z.literal("cancelling")]).readonly(),
|
|
114
110
|
'startedAt': z.number().readonly(),
|
|
115
|
-
}), z.object({
|
|
116
111
|
'step': z.union([z.literal("check"), z.literal("model"), z.literal("vad"), z.literal("verify"), z.literal("load")]).readonly().optional(),
|
|
117
112
|
'steps': z.array(z.object({
|
|
118
113
|
'kind': z.union([z.literal("check"), z.literal("model"), z.literal("vad"), z.literal("verify"), z.literal("load")]).readonly(),
|
|
119
114
|
'status': z.union([z.literal("cancelled"), z.literal("failed"), z.literal("running"), z.literal("pending"), z.literal("complete")]).readonly(),
|
|
120
115
|
'startedAt': z.number().readonly().optional(),
|
|
121
116
|
})).readonly().optional(),
|
|
122
|
-
})
|
|
117
|
+
}), z.object({
|
|
123
118
|
'phase': z.literal("failed").readonly(),
|
|
124
119
|
'message': z.string().readonly(),
|
|
125
120
|
'download': z.object({
|
|
@@ -129,43 +124,42 @@ const _deepseek_ai_dsh_experimental_api_speech_to_text_speech_follow_result$sche
|
|
|
129
124
|
'code': z.string().readonly().optional(),
|
|
130
125
|
'status': z.number().readonly().optional(),
|
|
131
126
|
}).readonly().optional(),
|
|
132
|
-
}), z.object({
|
|
133
127
|
'step': z.union([z.literal("check"), z.literal("model"), z.literal("vad"), z.literal("verify"), z.literal("load")]).readonly().optional(),
|
|
134
128
|
'steps': z.array(z.object({
|
|
135
129
|
'kind': z.union([z.literal("check"), z.literal("model"), z.literal("vad"), z.literal("verify"), z.literal("load")]).readonly(),
|
|
136
130
|
'status': z.union([z.literal("cancelled"), z.literal("failed"), z.literal("running"), z.literal("pending"), z.literal("complete")]).readonly(),
|
|
137
131
|
'startedAt': z.number().readonly().optional(),
|
|
138
132
|
})).readonly().optional(),
|
|
139
|
-
})
|
|
140
|
-
'id': z.
|
|
133
|
+
})]).readonly(),
|
|
134
|
+
'id': z.string().readonly(),
|
|
141
135
|
'name': z.string().readonly(),
|
|
142
136
|
'location': z.union([z.literal("host-local"), z.literal("cloud")]).readonly(),
|
|
143
|
-
'languages': z.array(z.string()).readonly(),
|
|
137
|
+
'languages': z.array(z.string()).readonly().describe('Accepted language hints, including automatic detection when supported.'),
|
|
144
138
|
'setupEstimate': z.object({
|
|
145
139
|
'recommendedDiskBytes': z.number().readonly(),
|
|
146
140
|
'expectedMemoryBytes': z.number().readonly(),
|
|
147
141
|
'minimumMinutes': z.number().readonly(),
|
|
148
142
|
'maximumMinutes': z.number().readonly(),
|
|
149
143
|
}).readonly().optional(),
|
|
150
|
-
'downloadSources': z.array(z.string()).readonly().optional(),
|
|
144
|
+
'downloadSources': z.array(z.string()).readonly().optional().describe('Origins offered for an explicit preparation download; omitted or empty when no choice applies.'),
|
|
151
145
|
})).readonly(),
|
|
152
146
|
'selection': z.object({
|
|
153
|
-
'providerId': z.
|
|
147
|
+
'providerId': z.string().readonly(),
|
|
154
148
|
'language': z.string().readonly(),
|
|
155
149
|
}).readonly(),
|
|
156
150
|
}))
|
|
157
151
|
let _deepseek_ai_dsh_experimental_api_speech_to_text_speech_prepare_parameter_0$schema$value
|
|
158
|
-
const _deepseek_ai_dsh_experimental_api_speech_to_text_speech_prepare_parameter_0$schema = () => (_deepseek_ai_dsh_experimental_api_speech_to_text_speech_prepare_parameter_0$schema$value ??= z.
|
|
152
|
+
const _deepseek_ai_dsh_experimental_api_speech_to_text_speech_prepare_parameter_0$schema = () => (_deepseek_ai_dsh_experimental_api_speech_to_text_speech_prepare_parameter_0$schema$value ??= z.string())
|
|
159
153
|
let _deepseek_ai_dsh_experimental_api_speech_to_text_speech_prepare_parameter_1$schema$value
|
|
160
154
|
const _deepseek_ai_dsh_experimental_api_speech_to_text_speech_prepare_parameter_1$schema = () => (_deepseek_ai_dsh_experimental_api_speech_to_text_speech_prepare_parameter_1$schema$value ??= z.union([z.undefined(), z.object({
|
|
161
|
-
'downloadSource': z.string().readonly().optional(),
|
|
155
|
+
'downloadSource': z.string().readonly().optional().describe('One advertised origin; providers reject unavailable sources and use a manual choice without fallback.'),
|
|
162
156
|
})]))
|
|
163
157
|
let _deepseek_ai_dsh_experimental_api_speech_to_text_speech_prepare_result$schema$value
|
|
164
158
|
const _deepseek_ai_dsh_experimental_api_speech_to_text_speech_prepare_result$schema = () => (_deepseek_ai_dsh_experimental_api_speech_to_text_speech_prepare_result$schema$value ??= z.void())
|
|
165
159
|
let _deepseek_ai_dsh_experimental_api_speech_to_text_speech_transcribe_parameter_0$schema$value
|
|
166
160
|
const _deepseek_ai_dsh_experimental_api_speech_to_text_speech_transcribe_parameter_0$schema = () => (_deepseek_ai_dsh_experimental_api_speech_to_text_speech_transcribe_parameter_0$schema$value ??= z.object({
|
|
167
161
|
'audioBase64': z.string().readonly(),
|
|
168
|
-
'providerId': z.
|
|
162
|
+
'providerId': z.string().readonly().optional(),
|
|
169
163
|
'language': z.string().readonly().optional(),
|
|
170
164
|
}))
|
|
171
165
|
let _deepseek_ai_dsh_experimental_api_speech_to_text_speech_transcribe_result$schema$value
|
|
@@ -174,28 +168,49 @@ const _deepseek_ai_dsh_experimental_api_speech_to_text_speech_transcribe_result$
|
|
|
174
168
|
'audioSeconds': z.number().readonly(),
|
|
175
169
|
'inferenceSeconds': z.number().readonly(),
|
|
176
170
|
}))
|
|
171
|
+
let _deepseek_ai_dsh_experimental_api_speech_to_text_speech_cancelPreparation_parameter_0_strict$schema$value
|
|
172
|
+
const _deepseek_ai_dsh_experimental_api_speech_to_text_speech_cancelPreparation_parameter_0_strict$schema = () => (_deepseek_ai_dsh_experimental_api_speech_to_text_speech_cancelPreparation_parameter_0_strict$schema$value ??= z.string())
|
|
173
|
+
let _deepseek_ai_dsh_experimental_api_speech_to_text_speech_configure_parameter_0_strict$schema$value
|
|
174
|
+
const _deepseek_ai_dsh_experimental_api_speech_to_text_speech_configure_parameter_0_strict$schema = () => (_deepseek_ai_dsh_experimental_api_speech_to_text_speech_configure_parameter_0_strict$schema$value ??= z.strictObject({
|
|
175
|
+
'providerId': z.string().readonly().optional(),
|
|
176
|
+
'language': z.string().readonly().optional(),
|
|
177
|
+
}))
|
|
178
|
+
let _deepseek_ai_dsh_experimental_api_speech_to_text_speech_prepare_parameter_0_strict$schema$value
|
|
179
|
+
const _deepseek_ai_dsh_experimental_api_speech_to_text_speech_prepare_parameter_0_strict$schema = () => (_deepseek_ai_dsh_experimental_api_speech_to_text_speech_prepare_parameter_0_strict$schema$value ??= z.string())
|
|
180
|
+
let _deepseek_ai_dsh_experimental_api_speech_to_text_speech_prepare_parameter_1_strict$schema$value
|
|
181
|
+
const _deepseek_ai_dsh_experimental_api_speech_to_text_speech_prepare_parameter_1_strict$schema = () => (_deepseek_ai_dsh_experimental_api_speech_to_text_speech_prepare_parameter_1_strict$schema$value ??= z.union([z.undefined(), z.strictObject({
|
|
182
|
+
'downloadSource': z.string().readonly().optional().describe('One advertised origin; providers reject unavailable sources and use a manual choice without fallback.'),
|
|
183
|
+
})]))
|
|
184
|
+
let _deepseek_ai_dsh_experimental_api_speech_to_text_speech_transcribe_parameter_0_strict$schema$value
|
|
185
|
+
const _deepseek_ai_dsh_experimental_api_speech_to_text_speech_transcribe_parameter_0_strict$schema = () => (_deepseek_ai_dsh_experimental_api_speech_to_text_speech_transcribe_parameter_0_strict$schema$value ??= z.strictObject({
|
|
186
|
+
'audioBase64': z.string().readonly(),
|
|
187
|
+
'providerId': z.string().readonly().optional(),
|
|
188
|
+
'language': z.string().readonly().optional(),
|
|
189
|
+
}))
|
|
177
190
|
|
|
178
|
-
|
|
191
|
+
const $remote = createTypertRemoteInfo({
|
|
179
192
|
package: '@deepseek-ai/dsh-experimental-api-speech-to-text',
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
],
|
|
183
|
-
invocations: [
|
|
184
|
-
{
|
|
185
|
-
id: '@deepseek-ai/dsh-experimental-api-speech-to-text#speech/cancelPreparation',
|
|
193
|
+
methods: {
|
|
194
|
+
'speech/cancelPreparation': {
|
|
186
195
|
service: 'speechController',
|
|
187
|
-
|
|
188
|
-
method: 'cancelPreparation',
|
|
196
|
+
description: 'Explicitly cancel resource preparation.',
|
|
189
197
|
invocation: { kind: 'direct' },
|
|
190
198
|
parameters: [
|
|
191
199
|
{
|
|
192
200
|
name: 'providerId',
|
|
193
|
-
|
|
201
|
+
description: 'selected recognizer.',
|
|
194
202
|
source: 'json',
|
|
195
203
|
codec: {
|
|
196
204
|
mode: 'strict',
|
|
197
205
|
typeSymbol: '@deepseek-ai/dsh-experimental-speech-to-text/types#SpeechProviderId',
|
|
198
206
|
create: _deepseek_ai_dsh_experimental_api_speech_to_text_speech_cancelPreparation_parameter_0$schema,
|
|
207
|
+
jsonSchema: {"type":"string"},
|
|
208
|
+
},
|
|
209
|
+
strictCodec: {
|
|
210
|
+
mode: 'strict',
|
|
211
|
+
typeSymbol: '@deepseek-ai/dsh-experimental-speech-to-text/types#SpeechProviderId',
|
|
212
|
+
create: _deepseek_ai_dsh_experimental_api_speech_to_text_speech_cancelPreparation_parameter_0_strict$schema,
|
|
213
|
+
jsonSchema: {"type":"string"},
|
|
199
214
|
},
|
|
200
215
|
},
|
|
201
216
|
],
|
|
@@ -203,14 +218,14 @@ export const TYPERT = {
|
|
|
203
218
|
mode: 'strict',
|
|
204
219
|
typeSymbol: '@deepseek-ai/dsh-experimental-api-speech-to-text#speech/cancelPreparation:result',
|
|
205
220
|
create: _deepseek_ai_dsh_experimental_api_speech_to_text_speech_cancelPreparation_result$schema,
|
|
221
|
+
description: 'after the preparation task settles.',
|
|
222
|
+
jsonSchemaError: 'typert tool schema: unsupported void value',
|
|
206
223
|
},
|
|
207
224
|
sourceLocation: {"file":"packages/experimental/api-speech-to-text/src/index.ts","line":80,"column":3},
|
|
208
225
|
},
|
|
209
|
-
{
|
|
210
|
-
id: '@deepseek-ai/dsh-experimental-api-speech-to-text#speech/catalog',
|
|
226
|
+
'speech/catalog': {
|
|
211
227
|
service: 'speechController',
|
|
212
|
-
|
|
213
|
-
method: 'catalog',
|
|
228
|
+
description: 'Read provider choices without preparing a recognizer.',
|
|
214
229
|
invocation: { kind: 'direct' },
|
|
215
230
|
parameters: [
|
|
216
231
|
],
|
|
@@ -218,24 +233,31 @@ export const TYPERT = {
|
|
|
218
233
|
mode: 'strict',
|
|
219
234
|
typeSymbol: '@deepseek-ai/dsh-experimental-api-speech-to-text/types#SpeechCatalog',
|
|
220
235
|
create: _deepseek_ai_dsh_experimental_api_speech_to_text_speech_catalog_result$schema,
|
|
236
|
+
description: 'available providers, resolved default, and recording limits.',
|
|
237
|
+
jsonSchema: {"type":"object","properties":{"maxAudioBytes":{"type":"number"},"maxDurationSeconds":{"type":"number"},"providers":{"type":"array","items":{"type":"object","properties":{"preparation":{"oneOf":[{"type":"object","properties":{"phase":{"type":"string","enum":["cancelled","ready","unprepared","standby"]},"step":{"type":"string","enum":["check","model","vad","verify","load"]},"steps":{"type":"array","items":{"type":"object","properties":{"kind":{"type":"string","enum":["check","model","vad","verify","load"]},"status":{"type":"string","enum":["cancelled","failed","running","pending","complete"]},"startedAt":{"type":"number"}},"required":["kind","status"],"additionalProperties":true}}},"required":["phase"],"additionalProperties":true},{"type":"object","properties":{"phase":{"type":"string","const":"downloading"},"resource":{"type":"string"},"completedBytes":{"type":"number"},"totalBytes":{"type":"number"},"step":{"type":"string","enum":["check","model","vad","verify","load"]},"steps":{"type":"array","items":{"type":"object","properties":{"kind":{"type":"string","enum":["check","model","vad","verify","load"]},"status":{"type":"string","enum":["cancelled","failed","running","pending","complete"]},"startedAt":{"type":"number"}},"required":["kind","status"],"additionalProperties":true}}},"required":["phase","resource","completedBytes"],"additionalProperties":true},{"type":"object","properties":{"phase":{"type":"string","enum":["checking","loading","waking","cancelling"]},"startedAt":{"type":"number"},"step":{"type":"string","enum":["check","model","vad","verify","load"]},"steps":{"type":"array","items":{"type":"object","properties":{"kind":{"type":"string","enum":["check","model","vad","verify","load"]},"status":{"type":"string","enum":["cancelled","failed","running","pending","complete"]},"startedAt":{"type":"number"}},"required":["kind","status"],"additionalProperties":true}}},"required":["phase","startedAt"],"additionalProperties":true},{"type":"object","properties":{"phase":{"type":"string","const":"failed"},"message":{"type":"string"},"download":{"type":"object","properties":{"resource":{"type":"string"},"source":{"type":"string"},"reason":{"type":"string","enum":["network","storage","unknown","dns","timeout","certificate","http","integrity"]},"code":{"type":"string"},"status":{"type":"number"}},"required":["resource","source","reason"],"additionalProperties":true},"step":{"type":"string","enum":["check","model","vad","verify","load"]},"steps":{"type":"array","items":{"type":"object","properties":{"kind":{"type":"string","enum":["check","model","vad","verify","load"]},"status":{"type":"string","enum":["cancelled","failed","running","pending","complete"]},"startedAt":{"type":"number"}},"required":["kind","status"],"additionalProperties":true}}},"required":["phase","message"],"additionalProperties":true}]},"id":{"type":"string"},"name":{"type":"string"},"location":{"type":"string","enum":["host-local","cloud"]},"languages":{"type":"array","items":{"type":"string"},"description":"Accepted language hints, including automatic detection when supported."},"setupEstimate":{"type":"object","properties":{"recommendedDiskBytes":{"type":"number"},"expectedMemoryBytes":{"type":"number"},"minimumMinutes":{"type":"number"},"maximumMinutes":{"type":"number"}},"required":["recommendedDiskBytes","expectedMemoryBytes","minimumMinutes","maximumMinutes"],"additionalProperties":true},"downloadSources":{"type":"array","items":{"type":"string"},"description":"Origins offered for an explicit preparation download; omitted or empty when no choice applies."}},"required":["preparation","id","name","location","languages"],"additionalProperties":true}},"selection":{"type":"object","properties":{"providerId":{"type":"string"},"language":{"type":"string"}},"required":["providerId","language"],"additionalProperties":true}},"required":["maxAudioBytes","maxDurationSeconds","providers","selection"],"additionalProperties":true},
|
|
221
238
|
},
|
|
222
239
|
sourceLocation: {"file":"packages/experimental/api-speech-to-text/src/index.ts","line":44,"column":3},
|
|
223
240
|
},
|
|
224
|
-
{
|
|
225
|
-
id: '@deepseek-ai/dsh-experimental-api-speech-to-text#speech/configure',
|
|
241
|
+
'speech/configure': {
|
|
226
242
|
service: 'speechController',
|
|
227
|
-
|
|
228
|
-
method: 'configure',
|
|
243
|
+
description: 'Persist the user\'s recognition preferences.',
|
|
229
244
|
invocation: { kind: 'direct' },
|
|
230
245
|
parameters: [
|
|
231
246
|
{
|
|
232
247
|
name: 'patch',
|
|
233
|
-
|
|
248
|
+
description: 'changed preference fields.',
|
|
234
249
|
source: 'json',
|
|
235
250
|
codec: {
|
|
236
251
|
mode: 'strict',
|
|
237
252
|
typeSymbol: '@deepseek-ai/dsh-experimental-speech-to-text/types#SpeechSelectionPatch',
|
|
238
253
|
create: _deepseek_ai_dsh_experimental_api_speech_to_text_speech_configure_parameter_0$schema,
|
|
254
|
+
jsonSchema: {"type":"object","properties":{"providerId":{"type":"string"},"language":{"type":"string"}},"required":[],"additionalProperties":true},
|
|
255
|
+
},
|
|
256
|
+
strictCodec: {
|
|
257
|
+
mode: 'strict',
|
|
258
|
+
typeSymbol: '@deepseek-ai/dsh-experimental-speech-to-text/types#SpeechSelectionPatch',
|
|
259
|
+
create: _deepseek_ai_dsh_experimental_api_speech_to_text_speech_configure_parameter_0_strict$schema,
|
|
260
|
+
jsonSchema: {"type":"object","properties":{"providerId":{"type":"string"},"language":{"type":"string"}},"required":[],"additionalProperties":false},
|
|
239
261
|
},
|
|
240
262
|
},
|
|
241
263
|
],
|
|
@@ -243,14 +265,14 @@ export const TYPERT = {
|
|
|
243
265
|
mode: 'strict',
|
|
244
266
|
typeSymbol: '@deepseek-ai/dsh-experimental-api-speech-to-text#speech/configure:result',
|
|
245
267
|
create: _deepseek_ai_dsh_experimental_api_speech_to_text_speech_configure_result$schema,
|
|
268
|
+
description: 'after preferences are saved.',
|
|
269
|
+
jsonSchemaError: 'typert tool schema: unsupported void value',
|
|
246
270
|
},
|
|
247
271
|
sourceLocation: {"file":"packages/experimental/api-speech-to-text/src/index.ts","line":64,"column":3},
|
|
248
272
|
},
|
|
249
|
-
{
|
|
250
|
-
id: '@deepseek-ai/dsh-experimental-api-speech-to-text#speech/follow',
|
|
273
|
+
'speech/follow': {
|
|
251
274
|
service: 'speechController',
|
|
252
|
-
|
|
253
|
-
method: 'follow',
|
|
275
|
+
description: 'Follow provider readiness independently of Session and preparation lifetimes.',
|
|
254
276
|
mode: 'stream',
|
|
255
277
|
invocation: { kind: 'direct' },
|
|
256
278
|
parameters: [
|
|
@@ -260,35 +282,49 @@ export const TYPERT = {
|
|
|
260
282
|
mode: 'strict',
|
|
261
283
|
typeSymbol: '@deepseek-ai/dsh-experimental-api-speech-to-text/types#SpeechCatalog',
|
|
262
284
|
create: _deepseek_ai_dsh_experimental_api_speech_to_text_speech_follow_result$schema,
|
|
285
|
+
description: 'initial and subsequent complete readiness snapshots.',
|
|
286
|
+
jsonSchema: {"type":"object","properties":{"maxAudioBytes":{"type":"number"},"maxDurationSeconds":{"type":"number"},"providers":{"type":"array","items":{"type":"object","properties":{"preparation":{"oneOf":[{"type":"object","properties":{"phase":{"type":"string","enum":["cancelled","ready","unprepared","standby"]},"step":{"type":"string","enum":["check","model","vad","verify","load"]},"steps":{"type":"array","items":{"type":"object","properties":{"kind":{"type":"string","enum":["check","model","vad","verify","load"]},"status":{"type":"string","enum":["cancelled","failed","running","pending","complete"]},"startedAt":{"type":"number"}},"required":["kind","status"],"additionalProperties":true}}},"required":["phase"],"additionalProperties":true},{"type":"object","properties":{"phase":{"type":"string","const":"downloading"},"resource":{"type":"string"},"completedBytes":{"type":"number"},"totalBytes":{"type":"number"},"step":{"type":"string","enum":["check","model","vad","verify","load"]},"steps":{"type":"array","items":{"type":"object","properties":{"kind":{"type":"string","enum":["check","model","vad","verify","load"]},"status":{"type":"string","enum":["cancelled","failed","running","pending","complete"]},"startedAt":{"type":"number"}},"required":["kind","status"],"additionalProperties":true}}},"required":["phase","resource","completedBytes"],"additionalProperties":true},{"type":"object","properties":{"phase":{"type":"string","enum":["checking","loading","waking","cancelling"]},"startedAt":{"type":"number"},"step":{"type":"string","enum":["check","model","vad","verify","load"]},"steps":{"type":"array","items":{"type":"object","properties":{"kind":{"type":"string","enum":["check","model","vad","verify","load"]},"status":{"type":"string","enum":["cancelled","failed","running","pending","complete"]},"startedAt":{"type":"number"}},"required":["kind","status"],"additionalProperties":true}}},"required":["phase","startedAt"],"additionalProperties":true},{"type":"object","properties":{"phase":{"type":"string","const":"failed"},"message":{"type":"string"},"download":{"type":"object","properties":{"resource":{"type":"string"},"source":{"type":"string"},"reason":{"type":"string","enum":["network","storage","unknown","dns","timeout","certificate","http","integrity"]},"code":{"type":"string"},"status":{"type":"number"}},"required":["resource","source","reason"],"additionalProperties":true},"step":{"type":"string","enum":["check","model","vad","verify","load"]},"steps":{"type":"array","items":{"type":"object","properties":{"kind":{"type":"string","enum":["check","model","vad","verify","load"]},"status":{"type":"string","enum":["cancelled","failed","running","pending","complete"]},"startedAt":{"type":"number"}},"required":["kind","status"],"additionalProperties":true}}},"required":["phase","message"],"additionalProperties":true}]},"id":{"type":"string"},"name":{"type":"string"},"location":{"type":"string","enum":["host-local","cloud"]},"languages":{"type":"array","items":{"type":"string"},"description":"Accepted language hints, including automatic detection when supported."},"setupEstimate":{"type":"object","properties":{"recommendedDiskBytes":{"type":"number"},"expectedMemoryBytes":{"type":"number"},"minimumMinutes":{"type":"number"},"maximumMinutes":{"type":"number"}},"required":["recommendedDiskBytes","expectedMemoryBytes","minimumMinutes","maximumMinutes"],"additionalProperties":true},"downloadSources":{"type":"array","items":{"type":"string"},"description":"Origins offered for an explicit preparation download; omitted or empty when no choice applies."}},"required":["preparation","id","name","location","languages"],"additionalProperties":true}},"selection":{"type":"object","properties":{"providerId":{"type":"string"},"language":{"type":"string"}},"required":["providerId","language"],"additionalProperties":true}},"required":["maxAudioBytes","maxDurationSeconds","providers","selection"],"additionalProperties":true},
|
|
263
287
|
},
|
|
264
288
|
sourceLocation: {"file":"packages/experimental/api-speech-to-text/src/index.ts","line":54,"column":10},
|
|
265
289
|
},
|
|
266
|
-
{
|
|
267
|
-
id: '@deepseek-ai/dsh-experimental-api-speech-to-text#speech/prepare',
|
|
290
|
+
'speech/prepare': {
|
|
268
291
|
service: 'speechController',
|
|
269
|
-
|
|
270
|
-
method: 'prepare',
|
|
292
|
+
description: 'Start or join one Host-owned preparation task.',
|
|
271
293
|
invocation: { kind: 'direct' },
|
|
272
294
|
parameters: [
|
|
273
295
|
{
|
|
274
296
|
name: 'providerId',
|
|
275
|
-
|
|
297
|
+
description: 'selected recognizer.',
|
|
276
298
|
source: 'json',
|
|
277
299
|
codec: {
|
|
278
300
|
mode: 'strict',
|
|
279
301
|
typeSymbol: '@deepseek-ai/dsh-experimental-speech-to-text/types#SpeechProviderId',
|
|
280
302
|
create: _deepseek_ai_dsh_experimental_api_speech_to_text_speech_prepare_parameter_0$schema,
|
|
303
|
+
jsonSchema: {"type":"string"},
|
|
304
|
+
},
|
|
305
|
+
strictCodec: {
|
|
306
|
+
mode: 'strict',
|
|
307
|
+
typeSymbol: '@deepseek-ai/dsh-experimental-speech-to-text/types#SpeechProviderId',
|
|
308
|
+
create: _deepseek_ai_dsh_experimental_api_speech_to_text_speech_prepare_parameter_0_strict$schema,
|
|
309
|
+
jsonSchema: {"type":"string"},
|
|
281
310
|
},
|
|
282
311
|
},
|
|
283
312
|
{
|
|
284
313
|
name: 'options',
|
|
285
|
-
|
|
314
|
+
description: 'task-local source selection validated by the provider.',
|
|
286
315
|
source: 'json',
|
|
287
316
|
acceptsUndefined: true,
|
|
288
317
|
codec: {
|
|
289
318
|
mode: 'strict',
|
|
290
319
|
typeSymbol: '@deepseek-ai/dsh-experimental-speech-to-text/types#SpeechPreparationOptions',
|
|
291
320
|
create: _deepseek_ai_dsh_experimental_api_speech_to_text_speech_prepare_parameter_1$schema,
|
|
321
|
+
jsonSchema: {"type":"object","properties":{"downloadSource":{"type":"string","description":"One advertised origin; providers reject unavailable sources and use a manual choice without fallback."}},"required":[],"additionalProperties":true},
|
|
322
|
+
},
|
|
323
|
+
strictCodec: {
|
|
324
|
+
mode: 'strict',
|
|
325
|
+
typeSymbol: '@deepseek-ai/dsh-experimental-speech-to-text/types#SpeechPreparationOptions',
|
|
326
|
+
create: _deepseek_ai_dsh_experimental_api_speech_to_text_speech_prepare_parameter_1_strict$schema,
|
|
327
|
+
jsonSchema: {"type":"object","properties":{"downloadSource":{"type":"string","description":"One advertised origin; providers reject unavailable sources and use a manual choice without fallback."}},"required":[],"additionalProperties":false},
|
|
292
328
|
},
|
|
293
329
|
},
|
|
294
330
|
],
|
|
@@ -296,24 +332,30 @@ export const TYPERT = {
|
|
|
296
332
|
mode: 'strict',
|
|
297
333
|
typeSymbol: '@deepseek-ai/dsh-experimental-api-speech-to-text#speech/prepare:result',
|
|
298
334
|
create: _deepseek_ai_dsh_experimental_api_speech_to_text_speech_prepare_result$schema,
|
|
335
|
+
jsonSchemaError: 'typert tool schema: unsupported void value',
|
|
299
336
|
},
|
|
300
337
|
sourceLocation: {"file":"packages/experimental/api-speech-to-text/src/index.ts","line":72,"column":3},
|
|
301
338
|
},
|
|
302
|
-
{
|
|
303
|
-
id: '@deepseek-ai/dsh-experimental-api-speech-to-text#speech/transcribe',
|
|
339
|
+
'speech/transcribe': {
|
|
304
340
|
service: 'speechController',
|
|
305
|
-
|
|
306
|
-
method: 'transcribe',
|
|
341
|
+
description: 'Validate and transcribe one recording through the explicit provider selection.',
|
|
307
342
|
invocation: { kind: 'direct' },
|
|
308
343
|
parameters: [
|
|
309
344
|
{
|
|
310
345
|
name: 'request',
|
|
311
|
-
|
|
346
|
+
description: 'canonical WAV encoded as base64, provider id and language hint.',
|
|
312
347
|
source: 'json',
|
|
313
348
|
codec: {
|
|
314
349
|
mode: 'strict',
|
|
315
350
|
typeSymbol: '@deepseek-ai/dsh-experimental-api-speech-to-text/types#TranscriptionRequest',
|
|
316
351
|
create: _deepseek_ai_dsh_experimental_api_speech_to_text_speech_transcribe_parameter_0$schema,
|
|
352
|
+
jsonSchema: {"type":"object","properties":{"audioBase64":{"type":"string"},"providerId":{"type":"string"},"language":{"type":"string"}},"required":["audioBase64"],"additionalProperties":true},
|
|
353
|
+
},
|
|
354
|
+
strictCodec: {
|
|
355
|
+
mode: 'strict',
|
|
356
|
+
typeSymbol: '@deepseek-ai/dsh-experimental-api-speech-to-text/types#TranscriptionRequest',
|
|
357
|
+
create: _deepseek_ai_dsh_experimental_api_speech_to_text_speech_transcribe_parameter_0_strict$schema,
|
|
358
|
+
jsonSchema: {"type":"object","properties":{"audioBase64":{"type":"string"},"providerId":{"type":"string"},"language":{"type":"string"}},"required":["audioBase64"],"additionalProperties":false},
|
|
317
359
|
},
|
|
318
360
|
},
|
|
319
361
|
],
|
|
@@ -322,10 +364,20 @@ export const TYPERT = {
|
|
|
322
364
|
mode: 'strict',
|
|
323
365
|
typeSymbol: '@deepseek-ai/dsh-experimental-speech-to-text/types#Transcript',
|
|
324
366
|
create: _deepseek_ai_dsh_experimental_api_speech_to_text_speech_transcribe_result$schema,
|
|
367
|
+
description: 'final transcript without adding a Session event.',
|
|
368
|
+
jsonSchema: {"type":"object","properties":{"text":{"type":"string"},"audioSeconds":{"type":"number"},"inferenceSeconds":{"type":"number"}},"required":["text","audioSeconds","inferenceSeconds"],"additionalProperties":true},
|
|
325
369
|
},
|
|
326
370
|
sourceLocation: {"file":"packages/experimental/api-speech-to-text/src/index.ts","line":89,"column":9},
|
|
327
371
|
},
|
|
372
|
+
},
|
|
373
|
+
}, z)
|
|
374
|
+
|
|
375
|
+
export const TYPERT = {
|
|
376
|
+
package: '@deepseek-ai/dsh-experimental-api-speech-to-text',
|
|
377
|
+
face: 'host',
|
|
378
|
+
schemas: [
|
|
328
379
|
],
|
|
380
|
+
get invocations() { return $remote.descriptors },
|
|
329
381
|
model: {
|
|
330
382
|
"services": [
|
|
331
383
|
{
|
|
@@ -2,7 +2,8 @@
|
|
|
2
2
|
import type {
|
|
3
3
|
RemoteResult,
|
|
4
4
|
RemoteStreamHandle,
|
|
5
|
-
|
|
5
|
+
TypertRemoteInfo,
|
|
6
|
+
TypertRemoteMethod,
|
|
6
7
|
} from '@deepseek-ai/dsh-typert-protocol'
|
|
7
8
|
import type { SpeechCatalog, TranscriptionRequest } from '@deepseek-ai/dsh-experimental-api-speech-to-text/types'
|
|
8
9
|
import type { SpeechPreparationOptions, SpeechProviderId, SpeechSelectionPatch, Transcript } from '@deepseek-ai/dsh-experimental-speech-to-text/types'
|
|
@@ -29,6 +30,13 @@ declare module '@deepseek-ai/dsh-typert-protocol' {
|
|
|
29
30
|
}
|
|
30
31
|
}
|
|
31
32
|
|
|
32
|
-
export declare const TYPERT_REMOTE:
|
|
33
|
+
export declare const TYPERT_REMOTE: TypertRemoteInfo<{
|
|
34
|
+
readonly 'speech/cancelPreparation': TypertRemoteMethod<{ readonly 'providerId': SpeechProviderId }, void>
|
|
35
|
+
readonly 'speech/catalog': TypertRemoteMethod<{ }, SpeechCatalog>
|
|
36
|
+
readonly 'speech/configure': TypertRemoteMethod<{ readonly 'patch': SpeechSelectionPatch }, void>
|
|
37
|
+
readonly 'speech/follow': TypertRemoteMethod<{ }, SpeechCatalog, 'stream'>
|
|
38
|
+
readonly 'speech/prepare': TypertRemoteMethod<{ readonly 'providerId': SpeechProviderId; readonly 'options'?: SpeechPreparationOptions }, void>
|
|
39
|
+
readonly 'speech/transcribe': TypertRemoteMethod<{ readonly 'request': TranscriptionRequest }, Transcript>
|
|
40
|
+
}>
|
|
33
41
|
export default TYPERT_REMOTE
|
|
34
42
|
//# sourceMappingURL=typert.remote-client.d.ts.map
|
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
/* Generated by @deepseek-ai/dsh-typert-generator from the Host FaceModel — do not edit. */
|
|
2
2
|
import { z } from 'zod'
|
|
3
3
|
|
|
4
|
+
import { createTypertRemoteInfo } from '@deepseek-ai/dsh-typert-protocol/remote-info'
|
|
5
|
+
|
|
4
6
|
let _deepseek_ai_dsh_experimental_api_speech_to_text_speech_cancelPreparation_parameter_0$schema$value
|
|
5
|
-
const _deepseek_ai_dsh_experimental_api_speech_to_text_speech_cancelPreparation_parameter_0$schema = () => (_deepseek_ai_dsh_experimental_api_speech_to_text_speech_cancelPreparation_parameter_0$schema$value ??= z.
|
|
7
|
+
const _deepseek_ai_dsh_experimental_api_speech_to_text_speech_cancelPreparation_parameter_0$schema = () => (_deepseek_ai_dsh_experimental_api_speech_to_text_speech_cancelPreparation_parameter_0$schema$value ??= z.string())
|
|
6
8
|
let _deepseek_ai_dsh_experimental_api_speech_to_text_speech_cancelPreparation_result$schema$value
|
|
7
9
|
const _deepseek_ai_dsh_experimental_api_speech_to_text_speech_cancelPreparation_result$schema = () => (_deepseek_ai_dsh_experimental_api_speech_to_text_speech_cancelPreparation_result$schema$value ??= z.void())
|
|
8
10
|
let _deepseek_ai_dsh_experimental_api_speech_to_text_speech_catalog_result$schema$value
|
|
@@ -10,38 +12,35 @@ const _deepseek_ai_dsh_experimental_api_speech_to_text_speech_catalog_result$sch
|
|
|
10
12
|
'maxAudioBytes': z.number().readonly(),
|
|
11
13
|
'maxDurationSeconds': z.number().readonly(),
|
|
12
14
|
'providers': z.array(z.object({
|
|
13
|
-
'preparation': z.union([z.
|
|
15
|
+
'preparation': z.union([z.object({
|
|
14
16
|
'phase': z.union([z.literal("cancelled"), z.literal("ready"), z.literal("unprepared"), z.literal("standby")]).readonly(),
|
|
15
|
-
}), z.object({
|
|
16
17
|
'step': z.union([z.literal("check"), z.literal("model"), z.literal("vad"), z.literal("verify"), z.literal("load")]).readonly().optional(),
|
|
17
18
|
'steps': z.array(z.object({
|
|
18
19
|
'kind': z.union([z.literal("check"), z.literal("model"), z.literal("vad"), z.literal("verify"), z.literal("load")]).readonly(),
|
|
19
20
|
'status': z.union([z.literal("cancelled"), z.literal("failed"), z.literal("running"), z.literal("pending"), z.literal("complete")]).readonly(),
|
|
20
21
|
'startedAt': z.number().readonly().optional(),
|
|
21
22
|
})).readonly().optional(),
|
|
22
|
-
})
|
|
23
|
+
}), z.object({
|
|
23
24
|
'phase': z.literal("downloading").readonly(),
|
|
24
25
|
'resource': z.string().readonly(),
|
|
25
26
|
'completedBytes': z.number().readonly(),
|
|
26
27
|
'totalBytes': z.number().readonly().optional(),
|
|
27
|
-
}), z.object({
|
|
28
28
|
'step': z.union([z.literal("check"), z.literal("model"), z.literal("vad"), z.literal("verify"), z.literal("load")]).readonly().optional(),
|
|
29
29
|
'steps': z.array(z.object({
|
|
30
30
|
'kind': z.union([z.literal("check"), z.literal("model"), z.literal("vad"), z.literal("verify"), z.literal("load")]).readonly(),
|
|
31
31
|
'status': z.union([z.literal("cancelled"), z.literal("failed"), z.literal("running"), z.literal("pending"), z.literal("complete")]).readonly(),
|
|
32
32
|
'startedAt': z.number().readonly().optional(),
|
|
33
33
|
})).readonly().optional(),
|
|
34
|
-
})
|
|
34
|
+
}), z.object({
|
|
35
35
|
'phase': z.union([z.literal("checking"), z.literal("loading"), z.literal("waking"), z.literal("cancelling")]).readonly(),
|
|
36
36
|
'startedAt': z.number().readonly(),
|
|
37
|
-
}), z.object({
|
|
38
37
|
'step': z.union([z.literal("check"), z.literal("model"), z.literal("vad"), z.literal("verify"), z.literal("load")]).readonly().optional(),
|
|
39
38
|
'steps': z.array(z.object({
|
|
40
39
|
'kind': z.union([z.literal("check"), z.literal("model"), z.literal("vad"), z.literal("verify"), z.literal("load")]).readonly(),
|
|
41
40
|
'status': z.union([z.literal("cancelled"), z.literal("failed"), z.literal("running"), z.literal("pending"), z.literal("complete")]).readonly(),
|
|
42
41
|
'startedAt': z.number().readonly().optional(),
|
|
43
42
|
})).readonly().optional(),
|
|
44
|
-
})
|
|
43
|
+
}), z.object({
|
|
45
44
|
'phase': z.literal("failed").readonly(),
|
|
46
45
|
'message': z.string().readonly(),
|
|
47
46
|
'download': z.object({
|
|
@@ -51,34 +50,33 @@ const _deepseek_ai_dsh_experimental_api_speech_to_text_speech_catalog_result$sch
|
|
|
51
50
|
'code': z.string().readonly().optional(),
|
|
52
51
|
'status': z.number().readonly().optional(),
|
|
53
52
|
}).readonly().optional(),
|
|
54
|
-
}), z.object({
|
|
55
53
|
'step': z.union([z.literal("check"), z.literal("model"), z.literal("vad"), z.literal("verify"), z.literal("load")]).readonly().optional(),
|
|
56
54
|
'steps': z.array(z.object({
|
|
57
55
|
'kind': z.union([z.literal("check"), z.literal("model"), z.literal("vad"), z.literal("verify"), z.literal("load")]).readonly(),
|
|
58
56
|
'status': z.union([z.literal("cancelled"), z.literal("failed"), z.literal("running"), z.literal("pending"), z.literal("complete")]).readonly(),
|
|
59
57
|
'startedAt': z.number().readonly().optional(),
|
|
60
58
|
})).readonly().optional(),
|
|
61
|
-
})
|
|
62
|
-
'id': z.
|
|
59
|
+
})]).readonly(),
|
|
60
|
+
'id': z.string().readonly(),
|
|
63
61
|
'name': z.string().readonly(),
|
|
64
62
|
'location': z.union([z.literal("host-local"), z.literal("cloud")]).readonly(),
|
|
65
|
-
'languages': z.array(z.string()).readonly(),
|
|
63
|
+
'languages': z.array(z.string()).readonly().describe('Accepted language hints, including automatic detection when supported.'),
|
|
66
64
|
'setupEstimate': z.object({
|
|
67
65
|
'recommendedDiskBytes': z.number().readonly(),
|
|
68
66
|
'expectedMemoryBytes': z.number().readonly(),
|
|
69
67
|
'minimumMinutes': z.number().readonly(),
|
|
70
68
|
'maximumMinutes': z.number().readonly(),
|
|
71
69
|
}).readonly().optional(),
|
|
72
|
-
'downloadSources': z.array(z.string()).readonly().optional(),
|
|
70
|
+
'downloadSources': z.array(z.string()).readonly().optional().describe('Origins offered for an explicit preparation download; omitted or empty when no choice applies.'),
|
|
73
71
|
})).readonly(),
|
|
74
72
|
'selection': z.object({
|
|
75
|
-
'providerId': z.
|
|
73
|
+
'providerId': z.string().readonly(),
|
|
76
74
|
'language': z.string().readonly(),
|
|
77
75
|
}).readonly(),
|
|
78
76
|
}))
|
|
79
77
|
let _deepseek_ai_dsh_experimental_api_speech_to_text_speech_configure_parameter_0$schema$value
|
|
80
78
|
const _deepseek_ai_dsh_experimental_api_speech_to_text_speech_configure_parameter_0$schema = () => (_deepseek_ai_dsh_experimental_api_speech_to_text_speech_configure_parameter_0$schema$value ??= z.object({
|
|
81
|
-
'providerId': z.
|
|
79
|
+
'providerId': z.string().readonly().optional(),
|
|
82
80
|
'language': z.string().readonly().optional(),
|
|
83
81
|
}))
|
|
84
82
|
let _deepseek_ai_dsh_experimental_api_speech_to_text_speech_configure_result$schema$value
|
|
@@ -88,38 +86,35 @@ const _deepseek_ai_dsh_experimental_api_speech_to_text_speech_follow_result$sche
|
|
|
88
86
|
'maxAudioBytes': z.number().readonly(),
|
|
89
87
|
'maxDurationSeconds': z.number().readonly(),
|
|
90
88
|
'providers': z.array(z.object({
|
|
91
|
-
'preparation': z.union([z.
|
|
89
|
+
'preparation': z.union([z.object({
|
|
92
90
|
'phase': z.union([z.literal("cancelled"), z.literal("ready"), z.literal("unprepared"), z.literal("standby")]).readonly(),
|
|
93
|
-
}), z.object({
|
|
94
91
|
'step': z.union([z.literal("check"), z.literal("model"), z.literal("vad"), z.literal("verify"), z.literal("load")]).readonly().optional(),
|
|
95
92
|
'steps': z.array(z.object({
|
|
96
93
|
'kind': z.union([z.literal("check"), z.literal("model"), z.literal("vad"), z.literal("verify"), z.literal("load")]).readonly(),
|
|
97
94
|
'status': z.union([z.literal("cancelled"), z.literal("failed"), z.literal("running"), z.literal("pending"), z.literal("complete")]).readonly(),
|
|
98
95
|
'startedAt': z.number().readonly().optional(),
|
|
99
96
|
})).readonly().optional(),
|
|
100
|
-
})
|
|
97
|
+
}), z.object({
|
|
101
98
|
'phase': z.literal("downloading").readonly(),
|
|
102
99
|
'resource': z.string().readonly(),
|
|
103
100
|
'completedBytes': z.number().readonly(),
|
|
104
101
|
'totalBytes': z.number().readonly().optional(),
|
|
105
|
-
}), z.object({
|
|
106
102
|
'step': z.union([z.literal("check"), z.literal("model"), z.literal("vad"), z.literal("verify"), z.literal("load")]).readonly().optional(),
|
|
107
103
|
'steps': z.array(z.object({
|
|
108
104
|
'kind': z.union([z.literal("check"), z.literal("model"), z.literal("vad"), z.literal("verify"), z.literal("load")]).readonly(),
|
|
109
105
|
'status': z.union([z.literal("cancelled"), z.literal("failed"), z.literal("running"), z.literal("pending"), z.literal("complete")]).readonly(),
|
|
110
106
|
'startedAt': z.number().readonly().optional(),
|
|
111
107
|
})).readonly().optional(),
|
|
112
|
-
})
|
|
108
|
+
}), z.object({
|
|
113
109
|
'phase': z.union([z.literal("checking"), z.literal("loading"), z.literal("waking"), z.literal("cancelling")]).readonly(),
|
|
114
110
|
'startedAt': z.number().readonly(),
|
|
115
|
-
}), z.object({
|
|
116
111
|
'step': z.union([z.literal("check"), z.literal("model"), z.literal("vad"), z.literal("verify"), z.literal("load")]).readonly().optional(),
|
|
117
112
|
'steps': z.array(z.object({
|
|
118
113
|
'kind': z.union([z.literal("check"), z.literal("model"), z.literal("vad"), z.literal("verify"), z.literal("load")]).readonly(),
|
|
119
114
|
'status': z.union([z.literal("cancelled"), z.literal("failed"), z.literal("running"), z.literal("pending"), z.literal("complete")]).readonly(),
|
|
120
115
|
'startedAt': z.number().readonly().optional(),
|
|
121
116
|
})).readonly().optional(),
|
|
122
|
-
})
|
|
117
|
+
}), z.object({
|
|
123
118
|
'phase': z.literal("failed").readonly(),
|
|
124
119
|
'message': z.string().readonly(),
|
|
125
120
|
'download': z.object({
|
|
@@ -129,43 +124,42 @@ const _deepseek_ai_dsh_experimental_api_speech_to_text_speech_follow_result$sche
|
|
|
129
124
|
'code': z.string().readonly().optional(),
|
|
130
125
|
'status': z.number().readonly().optional(),
|
|
131
126
|
}).readonly().optional(),
|
|
132
|
-
}), z.object({
|
|
133
127
|
'step': z.union([z.literal("check"), z.literal("model"), z.literal("vad"), z.literal("verify"), z.literal("load")]).readonly().optional(),
|
|
134
128
|
'steps': z.array(z.object({
|
|
135
129
|
'kind': z.union([z.literal("check"), z.literal("model"), z.literal("vad"), z.literal("verify"), z.literal("load")]).readonly(),
|
|
136
130
|
'status': z.union([z.literal("cancelled"), z.literal("failed"), z.literal("running"), z.literal("pending"), z.literal("complete")]).readonly(),
|
|
137
131
|
'startedAt': z.number().readonly().optional(),
|
|
138
132
|
})).readonly().optional(),
|
|
139
|
-
})
|
|
140
|
-
'id': z.
|
|
133
|
+
})]).readonly(),
|
|
134
|
+
'id': z.string().readonly(),
|
|
141
135
|
'name': z.string().readonly(),
|
|
142
136
|
'location': z.union([z.literal("host-local"), z.literal("cloud")]).readonly(),
|
|
143
|
-
'languages': z.array(z.string()).readonly(),
|
|
137
|
+
'languages': z.array(z.string()).readonly().describe('Accepted language hints, including automatic detection when supported.'),
|
|
144
138
|
'setupEstimate': z.object({
|
|
145
139
|
'recommendedDiskBytes': z.number().readonly(),
|
|
146
140
|
'expectedMemoryBytes': z.number().readonly(),
|
|
147
141
|
'minimumMinutes': z.number().readonly(),
|
|
148
142
|
'maximumMinutes': z.number().readonly(),
|
|
149
143
|
}).readonly().optional(),
|
|
150
|
-
'downloadSources': z.array(z.string()).readonly().optional(),
|
|
144
|
+
'downloadSources': z.array(z.string()).readonly().optional().describe('Origins offered for an explicit preparation download; omitted or empty when no choice applies.'),
|
|
151
145
|
})).readonly(),
|
|
152
146
|
'selection': z.object({
|
|
153
|
-
'providerId': z.
|
|
147
|
+
'providerId': z.string().readonly(),
|
|
154
148
|
'language': z.string().readonly(),
|
|
155
149
|
}).readonly(),
|
|
156
150
|
}))
|
|
157
151
|
let _deepseek_ai_dsh_experimental_api_speech_to_text_speech_prepare_parameter_0$schema$value
|
|
158
|
-
const _deepseek_ai_dsh_experimental_api_speech_to_text_speech_prepare_parameter_0$schema = () => (_deepseek_ai_dsh_experimental_api_speech_to_text_speech_prepare_parameter_0$schema$value ??= z.
|
|
152
|
+
const _deepseek_ai_dsh_experimental_api_speech_to_text_speech_prepare_parameter_0$schema = () => (_deepseek_ai_dsh_experimental_api_speech_to_text_speech_prepare_parameter_0$schema$value ??= z.string())
|
|
159
153
|
let _deepseek_ai_dsh_experimental_api_speech_to_text_speech_prepare_parameter_1$schema$value
|
|
160
154
|
const _deepseek_ai_dsh_experimental_api_speech_to_text_speech_prepare_parameter_1$schema = () => (_deepseek_ai_dsh_experimental_api_speech_to_text_speech_prepare_parameter_1$schema$value ??= z.union([z.undefined(), z.object({
|
|
161
|
-
'downloadSource': z.string().readonly().optional(),
|
|
155
|
+
'downloadSource': z.string().readonly().optional().describe('One advertised origin; providers reject unavailable sources and use a manual choice without fallback.'),
|
|
162
156
|
})]))
|
|
163
157
|
let _deepseek_ai_dsh_experimental_api_speech_to_text_speech_prepare_result$schema$value
|
|
164
158
|
const _deepseek_ai_dsh_experimental_api_speech_to_text_speech_prepare_result$schema = () => (_deepseek_ai_dsh_experimental_api_speech_to_text_speech_prepare_result$schema$value ??= z.void())
|
|
165
159
|
let _deepseek_ai_dsh_experimental_api_speech_to_text_speech_transcribe_parameter_0$schema$value
|
|
166
160
|
const _deepseek_ai_dsh_experimental_api_speech_to_text_speech_transcribe_parameter_0$schema = () => (_deepseek_ai_dsh_experimental_api_speech_to_text_speech_transcribe_parameter_0$schema$value ??= z.object({
|
|
167
161
|
'audioBase64': z.string().readonly(),
|
|
168
|
-
'providerId': z.
|
|
162
|
+
'providerId': z.string().readonly().optional(),
|
|
169
163
|
'language': z.string().readonly().optional(),
|
|
170
164
|
}))
|
|
171
165
|
let _deepseek_ai_dsh_experimental_api_speech_to_text_speech_transcribe_result$schema$value
|
|
@@ -174,25 +168,49 @@ const _deepseek_ai_dsh_experimental_api_speech_to_text_speech_transcribe_result$
|
|
|
174
168
|
'audioSeconds': z.number().readonly(),
|
|
175
169
|
'inferenceSeconds': z.number().readonly(),
|
|
176
170
|
}))
|
|
171
|
+
let _deepseek_ai_dsh_experimental_api_speech_to_text_speech_cancelPreparation_parameter_0_strict$schema$value
|
|
172
|
+
const _deepseek_ai_dsh_experimental_api_speech_to_text_speech_cancelPreparation_parameter_0_strict$schema = () => (_deepseek_ai_dsh_experimental_api_speech_to_text_speech_cancelPreparation_parameter_0_strict$schema$value ??= z.string())
|
|
173
|
+
let _deepseek_ai_dsh_experimental_api_speech_to_text_speech_configure_parameter_0_strict$schema$value
|
|
174
|
+
const _deepseek_ai_dsh_experimental_api_speech_to_text_speech_configure_parameter_0_strict$schema = () => (_deepseek_ai_dsh_experimental_api_speech_to_text_speech_configure_parameter_0_strict$schema$value ??= z.strictObject({
|
|
175
|
+
'providerId': z.string().readonly().optional(),
|
|
176
|
+
'language': z.string().readonly().optional(),
|
|
177
|
+
}))
|
|
178
|
+
let _deepseek_ai_dsh_experimental_api_speech_to_text_speech_prepare_parameter_0_strict$schema$value
|
|
179
|
+
const _deepseek_ai_dsh_experimental_api_speech_to_text_speech_prepare_parameter_0_strict$schema = () => (_deepseek_ai_dsh_experimental_api_speech_to_text_speech_prepare_parameter_0_strict$schema$value ??= z.string())
|
|
180
|
+
let _deepseek_ai_dsh_experimental_api_speech_to_text_speech_prepare_parameter_1_strict$schema$value
|
|
181
|
+
const _deepseek_ai_dsh_experimental_api_speech_to_text_speech_prepare_parameter_1_strict$schema = () => (_deepseek_ai_dsh_experimental_api_speech_to_text_speech_prepare_parameter_1_strict$schema$value ??= z.union([z.undefined(), z.strictObject({
|
|
182
|
+
'downloadSource': z.string().readonly().optional().describe('One advertised origin; providers reject unavailable sources and use a manual choice without fallback.'),
|
|
183
|
+
})]))
|
|
184
|
+
let _deepseek_ai_dsh_experimental_api_speech_to_text_speech_transcribe_parameter_0_strict$schema$value
|
|
185
|
+
const _deepseek_ai_dsh_experimental_api_speech_to_text_speech_transcribe_parameter_0_strict$schema = () => (_deepseek_ai_dsh_experimental_api_speech_to_text_speech_transcribe_parameter_0_strict$schema$value ??= z.strictObject({
|
|
186
|
+
'audioBase64': z.string().readonly(),
|
|
187
|
+
'providerId': z.string().readonly().optional(),
|
|
188
|
+
'language': z.string().readonly().optional(),
|
|
189
|
+
}))
|
|
177
190
|
|
|
178
|
-
export const TYPERT_REMOTE = {
|
|
191
|
+
export const TYPERT_REMOTE = createTypertRemoteInfo({
|
|
179
192
|
package: '@deepseek-ai/dsh-experimental-api-speech-to-text',
|
|
180
|
-
|
|
181
|
-
{
|
|
182
|
-
id: '@deepseek-ai/dsh-experimental-api-speech-to-text#speech/cancelPreparation',
|
|
193
|
+
methods: {
|
|
194
|
+
'speech/cancelPreparation': {
|
|
183
195
|
service: 'speechController',
|
|
184
|
-
|
|
185
|
-
method: 'cancelPreparation',
|
|
196
|
+
description: 'Explicitly cancel resource preparation.',
|
|
186
197
|
invocation: { kind: 'direct' },
|
|
187
198
|
parameters: [
|
|
188
199
|
{
|
|
189
200
|
name: 'providerId',
|
|
190
|
-
|
|
201
|
+
description: 'selected recognizer.',
|
|
191
202
|
source: 'json',
|
|
192
203
|
codec: {
|
|
193
204
|
mode: 'strict',
|
|
194
205
|
typeSymbol: '@deepseek-ai/dsh-experimental-speech-to-text/types#SpeechProviderId',
|
|
195
206
|
create: _deepseek_ai_dsh_experimental_api_speech_to_text_speech_cancelPreparation_parameter_0$schema,
|
|
207
|
+
jsonSchema: {"type":"string"},
|
|
208
|
+
},
|
|
209
|
+
strictCodec: {
|
|
210
|
+
mode: 'strict',
|
|
211
|
+
typeSymbol: '@deepseek-ai/dsh-experimental-speech-to-text/types#SpeechProviderId',
|
|
212
|
+
create: _deepseek_ai_dsh_experimental_api_speech_to_text_speech_cancelPreparation_parameter_0_strict$schema,
|
|
213
|
+
jsonSchema: {"type":"string"},
|
|
196
214
|
},
|
|
197
215
|
},
|
|
198
216
|
],
|
|
@@ -200,14 +218,14 @@ export const TYPERT_REMOTE = {
|
|
|
200
218
|
mode: 'strict',
|
|
201
219
|
typeSymbol: '@deepseek-ai/dsh-experimental-api-speech-to-text#speech/cancelPreparation:result',
|
|
202
220
|
create: _deepseek_ai_dsh_experimental_api_speech_to_text_speech_cancelPreparation_result$schema,
|
|
221
|
+
description: 'after the preparation task settles.',
|
|
222
|
+
jsonSchemaError: 'typert tool schema: unsupported void value',
|
|
203
223
|
},
|
|
204
224
|
sourceLocation: {"file":"packages/experimental/api-speech-to-text/src/index.ts","line":80,"column":3},
|
|
205
225
|
},
|
|
206
|
-
{
|
|
207
|
-
id: '@deepseek-ai/dsh-experimental-api-speech-to-text#speech/catalog',
|
|
226
|
+
'speech/catalog': {
|
|
208
227
|
service: 'speechController',
|
|
209
|
-
|
|
210
|
-
method: 'catalog',
|
|
228
|
+
description: 'Read provider choices without preparing a recognizer.',
|
|
211
229
|
invocation: { kind: 'direct' },
|
|
212
230
|
parameters: [
|
|
213
231
|
],
|
|
@@ -215,24 +233,31 @@ export const TYPERT_REMOTE = {
|
|
|
215
233
|
mode: 'strict',
|
|
216
234
|
typeSymbol: '@deepseek-ai/dsh-experimental-api-speech-to-text/types#SpeechCatalog',
|
|
217
235
|
create: _deepseek_ai_dsh_experimental_api_speech_to_text_speech_catalog_result$schema,
|
|
236
|
+
description: 'available providers, resolved default, and recording limits.',
|
|
237
|
+
jsonSchema: {"type":"object","properties":{"maxAudioBytes":{"type":"number"},"maxDurationSeconds":{"type":"number"},"providers":{"type":"array","items":{"type":"object","properties":{"preparation":{"oneOf":[{"type":"object","properties":{"phase":{"type":"string","enum":["cancelled","ready","unprepared","standby"]},"step":{"type":"string","enum":["check","model","vad","verify","load"]},"steps":{"type":"array","items":{"type":"object","properties":{"kind":{"type":"string","enum":["check","model","vad","verify","load"]},"status":{"type":"string","enum":["cancelled","failed","running","pending","complete"]},"startedAt":{"type":"number"}},"required":["kind","status"],"additionalProperties":true}}},"required":["phase"],"additionalProperties":true},{"type":"object","properties":{"phase":{"type":"string","const":"downloading"},"resource":{"type":"string"},"completedBytes":{"type":"number"},"totalBytes":{"type":"number"},"step":{"type":"string","enum":["check","model","vad","verify","load"]},"steps":{"type":"array","items":{"type":"object","properties":{"kind":{"type":"string","enum":["check","model","vad","verify","load"]},"status":{"type":"string","enum":["cancelled","failed","running","pending","complete"]},"startedAt":{"type":"number"}},"required":["kind","status"],"additionalProperties":true}}},"required":["phase","resource","completedBytes"],"additionalProperties":true},{"type":"object","properties":{"phase":{"type":"string","enum":["checking","loading","waking","cancelling"]},"startedAt":{"type":"number"},"step":{"type":"string","enum":["check","model","vad","verify","load"]},"steps":{"type":"array","items":{"type":"object","properties":{"kind":{"type":"string","enum":["check","model","vad","verify","load"]},"status":{"type":"string","enum":["cancelled","failed","running","pending","complete"]},"startedAt":{"type":"number"}},"required":["kind","status"],"additionalProperties":true}}},"required":["phase","startedAt"],"additionalProperties":true},{"type":"object","properties":{"phase":{"type":"string","const":"failed"},"message":{"type":"string"},"download":{"type":"object","properties":{"resource":{"type":"string"},"source":{"type":"string"},"reason":{"type":"string","enum":["network","storage","unknown","dns","timeout","certificate","http","integrity"]},"code":{"type":"string"},"status":{"type":"number"}},"required":["resource","source","reason"],"additionalProperties":true},"step":{"type":"string","enum":["check","model","vad","verify","load"]},"steps":{"type":"array","items":{"type":"object","properties":{"kind":{"type":"string","enum":["check","model","vad","verify","load"]},"status":{"type":"string","enum":["cancelled","failed","running","pending","complete"]},"startedAt":{"type":"number"}},"required":["kind","status"],"additionalProperties":true}}},"required":["phase","message"],"additionalProperties":true}]},"id":{"type":"string"},"name":{"type":"string"},"location":{"type":"string","enum":["host-local","cloud"]},"languages":{"type":"array","items":{"type":"string"},"description":"Accepted language hints, including automatic detection when supported."},"setupEstimate":{"type":"object","properties":{"recommendedDiskBytes":{"type":"number"},"expectedMemoryBytes":{"type":"number"},"minimumMinutes":{"type":"number"},"maximumMinutes":{"type":"number"}},"required":["recommendedDiskBytes","expectedMemoryBytes","minimumMinutes","maximumMinutes"],"additionalProperties":true},"downloadSources":{"type":"array","items":{"type":"string"},"description":"Origins offered for an explicit preparation download; omitted or empty when no choice applies."}},"required":["preparation","id","name","location","languages"],"additionalProperties":true}},"selection":{"type":"object","properties":{"providerId":{"type":"string"},"language":{"type":"string"}},"required":["providerId","language"],"additionalProperties":true}},"required":["maxAudioBytes","maxDurationSeconds","providers","selection"],"additionalProperties":true},
|
|
218
238
|
},
|
|
219
239
|
sourceLocation: {"file":"packages/experimental/api-speech-to-text/src/index.ts","line":44,"column":3},
|
|
220
240
|
},
|
|
221
|
-
{
|
|
222
|
-
id: '@deepseek-ai/dsh-experimental-api-speech-to-text#speech/configure',
|
|
241
|
+
'speech/configure': {
|
|
223
242
|
service: 'speechController',
|
|
224
|
-
|
|
225
|
-
method: 'configure',
|
|
243
|
+
description: 'Persist the user\'s recognition preferences.',
|
|
226
244
|
invocation: { kind: 'direct' },
|
|
227
245
|
parameters: [
|
|
228
246
|
{
|
|
229
247
|
name: 'patch',
|
|
230
|
-
|
|
248
|
+
description: 'changed preference fields.',
|
|
231
249
|
source: 'json',
|
|
232
250
|
codec: {
|
|
233
251
|
mode: 'strict',
|
|
234
252
|
typeSymbol: '@deepseek-ai/dsh-experimental-speech-to-text/types#SpeechSelectionPatch',
|
|
235
253
|
create: _deepseek_ai_dsh_experimental_api_speech_to_text_speech_configure_parameter_0$schema,
|
|
254
|
+
jsonSchema: {"type":"object","properties":{"providerId":{"type":"string"},"language":{"type":"string"}},"required":[],"additionalProperties":true},
|
|
255
|
+
},
|
|
256
|
+
strictCodec: {
|
|
257
|
+
mode: 'strict',
|
|
258
|
+
typeSymbol: '@deepseek-ai/dsh-experimental-speech-to-text/types#SpeechSelectionPatch',
|
|
259
|
+
create: _deepseek_ai_dsh_experimental_api_speech_to_text_speech_configure_parameter_0_strict$schema,
|
|
260
|
+
jsonSchema: {"type":"object","properties":{"providerId":{"type":"string"},"language":{"type":"string"}},"required":[],"additionalProperties":false},
|
|
236
261
|
},
|
|
237
262
|
},
|
|
238
263
|
],
|
|
@@ -240,14 +265,14 @@ export const TYPERT_REMOTE = {
|
|
|
240
265
|
mode: 'strict',
|
|
241
266
|
typeSymbol: '@deepseek-ai/dsh-experimental-api-speech-to-text#speech/configure:result',
|
|
242
267
|
create: _deepseek_ai_dsh_experimental_api_speech_to_text_speech_configure_result$schema,
|
|
268
|
+
description: 'after preferences are saved.',
|
|
269
|
+
jsonSchemaError: 'typert tool schema: unsupported void value',
|
|
243
270
|
},
|
|
244
271
|
sourceLocation: {"file":"packages/experimental/api-speech-to-text/src/index.ts","line":64,"column":3},
|
|
245
272
|
},
|
|
246
|
-
{
|
|
247
|
-
id: '@deepseek-ai/dsh-experimental-api-speech-to-text#speech/follow',
|
|
273
|
+
'speech/follow': {
|
|
248
274
|
service: 'speechController',
|
|
249
|
-
|
|
250
|
-
method: 'follow',
|
|
275
|
+
description: 'Follow provider readiness independently of Session and preparation lifetimes.',
|
|
251
276
|
mode: 'stream',
|
|
252
277
|
invocation: { kind: 'direct' },
|
|
253
278
|
parameters: [
|
|
@@ -257,35 +282,49 @@ export const TYPERT_REMOTE = {
|
|
|
257
282
|
mode: 'strict',
|
|
258
283
|
typeSymbol: '@deepseek-ai/dsh-experimental-api-speech-to-text/types#SpeechCatalog',
|
|
259
284
|
create: _deepseek_ai_dsh_experimental_api_speech_to_text_speech_follow_result$schema,
|
|
285
|
+
description: 'initial and subsequent complete readiness snapshots.',
|
|
286
|
+
jsonSchema: {"type":"object","properties":{"maxAudioBytes":{"type":"number"},"maxDurationSeconds":{"type":"number"},"providers":{"type":"array","items":{"type":"object","properties":{"preparation":{"oneOf":[{"type":"object","properties":{"phase":{"type":"string","enum":["cancelled","ready","unprepared","standby"]},"step":{"type":"string","enum":["check","model","vad","verify","load"]},"steps":{"type":"array","items":{"type":"object","properties":{"kind":{"type":"string","enum":["check","model","vad","verify","load"]},"status":{"type":"string","enum":["cancelled","failed","running","pending","complete"]},"startedAt":{"type":"number"}},"required":["kind","status"],"additionalProperties":true}}},"required":["phase"],"additionalProperties":true},{"type":"object","properties":{"phase":{"type":"string","const":"downloading"},"resource":{"type":"string"},"completedBytes":{"type":"number"},"totalBytes":{"type":"number"},"step":{"type":"string","enum":["check","model","vad","verify","load"]},"steps":{"type":"array","items":{"type":"object","properties":{"kind":{"type":"string","enum":["check","model","vad","verify","load"]},"status":{"type":"string","enum":["cancelled","failed","running","pending","complete"]},"startedAt":{"type":"number"}},"required":["kind","status"],"additionalProperties":true}}},"required":["phase","resource","completedBytes"],"additionalProperties":true},{"type":"object","properties":{"phase":{"type":"string","enum":["checking","loading","waking","cancelling"]},"startedAt":{"type":"number"},"step":{"type":"string","enum":["check","model","vad","verify","load"]},"steps":{"type":"array","items":{"type":"object","properties":{"kind":{"type":"string","enum":["check","model","vad","verify","load"]},"status":{"type":"string","enum":["cancelled","failed","running","pending","complete"]},"startedAt":{"type":"number"}},"required":["kind","status"],"additionalProperties":true}}},"required":["phase","startedAt"],"additionalProperties":true},{"type":"object","properties":{"phase":{"type":"string","const":"failed"},"message":{"type":"string"},"download":{"type":"object","properties":{"resource":{"type":"string"},"source":{"type":"string"},"reason":{"type":"string","enum":["network","storage","unknown","dns","timeout","certificate","http","integrity"]},"code":{"type":"string"},"status":{"type":"number"}},"required":["resource","source","reason"],"additionalProperties":true},"step":{"type":"string","enum":["check","model","vad","verify","load"]},"steps":{"type":"array","items":{"type":"object","properties":{"kind":{"type":"string","enum":["check","model","vad","verify","load"]},"status":{"type":"string","enum":["cancelled","failed","running","pending","complete"]},"startedAt":{"type":"number"}},"required":["kind","status"],"additionalProperties":true}}},"required":["phase","message"],"additionalProperties":true}]},"id":{"type":"string"},"name":{"type":"string"},"location":{"type":"string","enum":["host-local","cloud"]},"languages":{"type":"array","items":{"type":"string"},"description":"Accepted language hints, including automatic detection when supported."},"setupEstimate":{"type":"object","properties":{"recommendedDiskBytes":{"type":"number"},"expectedMemoryBytes":{"type":"number"},"minimumMinutes":{"type":"number"},"maximumMinutes":{"type":"number"}},"required":["recommendedDiskBytes","expectedMemoryBytes","minimumMinutes","maximumMinutes"],"additionalProperties":true},"downloadSources":{"type":"array","items":{"type":"string"},"description":"Origins offered for an explicit preparation download; omitted or empty when no choice applies."}},"required":["preparation","id","name","location","languages"],"additionalProperties":true}},"selection":{"type":"object","properties":{"providerId":{"type":"string"},"language":{"type":"string"}},"required":["providerId","language"],"additionalProperties":true}},"required":["maxAudioBytes","maxDurationSeconds","providers","selection"],"additionalProperties":true},
|
|
260
287
|
},
|
|
261
288
|
sourceLocation: {"file":"packages/experimental/api-speech-to-text/src/index.ts","line":54,"column":10},
|
|
262
289
|
},
|
|
263
|
-
{
|
|
264
|
-
id: '@deepseek-ai/dsh-experimental-api-speech-to-text#speech/prepare',
|
|
290
|
+
'speech/prepare': {
|
|
265
291
|
service: 'speechController',
|
|
266
|
-
|
|
267
|
-
method: 'prepare',
|
|
292
|
+
description: 'Start or join one Host-owned preparation task.',
|
|
268
293
|
invocation: { kind: 'direct' },
|
|
269
294
|
parameters: [
|
|
270
295
|
{
|
|
271
296
|
name: 'providerId',
|
|
272
|
-
|
|
297
|
+
description: 'selected recognizer.',
|
|
273
298
|
source: 'json',
|
|
274
299
|
codec: {
|
|
275
300
|
mode: 'strict',
|
|
276
301
|
typeSymbol: '@deepseek-ai/dsh-experimental-speech-to-text/types#SpeechProviderId',
|
|
277
302
|
create: _deepseek_ai_dsh_experimental_api_speech_to_text_speech_prepare_parameter_0$schema,
|
|
303
|
+
jsonSchema: {"type":"string"},
|
|
304
|
+
},
|
|
305
|
+
strictCodec: {
|
|
306
|
+
mode: 'strict',
|
|
307
|
+
typeSymbol: '@deepseek-ai/dsh-experimental-speech-to-text/types#SpeechProviderId',
|
|
308
|
+
create: _deepseek_ai_dsh_experimental_api_speech_to_text_speech_prepare_parameter_0_strict$schema,
|
|
309
|
+
jsonSchema: {"type":"string"},
|
|
278
310
|
},
|
|
279
311
|
},
|
|
280
312
|
{
|
|
281
313
|
name: 'options',
|
|
282
|
-
|
|
314
|
+
description: 'task-local source selection validated by the provider.',
|
|
283
315
|
source: 'json',
|
|
284
316
|
acceptsUndefined: true,
|
|
285
317
|
codec: {
|
|
286
318
|
mode: 'strict',
|
|
287
319
|
typeSymbol: '@deepseek-ai/dsh-experimental-speech-to-text/types#SpeechPreparationOptions',
|
|
288
320
|
create: _deepseek_ai_dsh_experimental_api_speech_to_text_speech_prepare_parameter_1$schema,
|
|
321
|
+
jsonSchema: {"type":"object","properties":{"downloadSource":{"type":"string","description":"One advertised origin; providers reject unavailable sources and use a manual choice without fallback."}},"required":[],"additionalProperties":true},
|
|
322
|
+
},
|
|
323
|
+
strictCodec: {
|
|
324
|
+
mode: 'strict',
|
|
325
|
+
typeSymbol: '@deepseek-ai/dsh-experimental-speech-to-text/types#SpeechPreparationOptions',
|
|
326
|
+
create: _deepseek_ai_dsh_experimental_api_speech_to_text_speech_prepare_parameter_1_strict$schema,
|
|
327
|
+
jsonSchema: {"type":"object","properties":{"downloadSource":{"type":"string","description":"One advertised origin; providers reject unavailable sources and use a manual choice without fallback."}},"required":[],"additionalProperties":false},
|
|
289
328
|
},
|
|
290
329
|
},
|
|
291
330
|
],
|
|
@@ -293,24 +332,30 @@ export const TYPERT_REMOTE = {
|
|
|
293
332
|
mode: 'strict',
|
|
294
333
|
typeSymbol: '@deepseek-ai/dsh-experimental-api-speech-to-text#speech/prepare:result',
|
|
295
334
|
create: _deepseek_ai_dsh_experimental_api_speech_to_text_speech_prepare_result$schema,
|
|
335
|
+
jsonSchemaError: 'typert tool schema: unsupported void value',
|
|
296
336
|
},
|
|
297
337
|
sourceLocation: {"file":"packages/experimental/api-speech-to-text/src/index.ts","line":72,"column":3},
|
|
298
338
|
},
|
|
299
|
-
{
|
|
300
|
-
id: '@deepseek-ai/dsh-experimental-api-speech-to-text#speech/transcribe',
|
|
339
|
+
'speech/transcribe': {
|
|
301
340
|
service: 'speechController',
|
|
302
|
-
|
|
303
|
-
method: 'transcribe',
|
|
341
|
+
description: 'Validate and transcribe one recording through the explicit provider selection.',
|
|
304
342
|
invocation: { kind: 'direct' },
|
|
305
343
|
parameters: [
|
|
306
344
|
{
|
|
307
345
|
name: 'request',
|
|
308
|
-
|
|
346
|
+
description: 'canonical WAV encoded as base64, provider id and language hint.',
|
|
309
347
|
source: 'json',
|
|
310
348
|
codec: {
|
|
311
349
|
mode: 'strict',
|
|
312
350
|
typeSymbol: '@deepseek-ai/dsh-experimental-api-speech-to-text/types#TranscriptionRequest',
|
|
313
351
|
create: _deepseek_ai_dsh_experimental_api_speech_to_text_speech_transcribe_parameter_0$schema,
|
|
352
|
+
jsonSchema: {"type":"object","properties":{"audioBase64":{"type":"string"},"providerId":{"type":"string"},"language":{"type":"string"}},"required":["audioBase64"],"additionalProperties":true},
|
|
353
|
+
},
|
|
354
|
+
strictCodec: {
|
|
355
|
+
mode: 'strict',
|
|
356
|
+
typeSymbol: '@deepseek-ai/dsh-experimental-api-speech-to-text/types#TranscriptionRequest',
|
|
357
|
+
create: _deepseek_ai_dsh_experimental_api_speech_to_text_speech_transcribe_parameter_0_strict$schema,
|
|
358
|
+
jsonSchema: {"type":"object","properties":{"audioBase64":{"type":"string"},"providerId":{"type":"string"},"language":{"type":"string"}},"required":["audioBase64"],"additionalProperties":false},
|
|
314
359
|
},
|
|
315
360
|
},
|
|
316
361
|
],
|
|
@@ -319,10 +364,12 @@ export const TYPERT_REMOTE = {
|
|
|
319
364
|
mode: 'strict',
|
|
320
365
|
typeSymbol: '@deepseek-ai/dsh-experimental-speech-to-text/types#Transcript',
|
|
321
366
|
create: _deepseek_ai_dsh_experimental_api_speech_to_text_speech_transcribe_result$schema,
|
|
367
|
+
description: 'final transcript without adding a Session event.',
|
|
368
|
+
jsonSchema: {"type":"object","properties":{"text":{"type":"string"},"audioSeconds":{"type":"number"},"inferenceSeconds":{"type":"number"}},"required":["text","audioSeconds","inferenceSeconds"],"additionalProperties":true},
|
|
322
369
|
},
|
|
323
370
|
sourceLocation: {"file":"packages/experimental/api-speech-to-text/src/index.ts","line":89,"column":9},
|
|
324
371
|
},
|
|
325
|
-
|
|
326
|
-
}
|
|
372
|
+
},
|
|
373
|
+
}, z)
|
|
327
374
|
|
|
328
375
|
export default TYPERT_REMOTE
|
package/locale/en.json
ADDED
package/locale/zh.json
ADDED
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@deepseek-ai/dsh-experimental-api-speech-to-text",
|
|
3
3
|
"description": "Authenticated experimental speech transcription for browser clients",
|
|
4
|
-
"version": "0.2.1-alpha.
|
|
4
|
+
"version": "0.2.1-alpha.3",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"access": "public"
|
|
7
7
|
},
|
|
@@ -20,6 +20,7 @@
|
|
|
20
20
|
},
|
|
21
21
|
"./src/*": "./src/*",
|
|
22
22
|
"./package.json": "./package.json",
|
|
23
|
+
"./locale/*.json": "./locale/*.json",
|
|
23
24
|
"./types": {
|
|
24
25
|
"types": "./lib/types/types.d.ts",
|
|
25
26
|
"default": "./lib/types/types.js"
|
|
@@ -34,6 +35,7 @@
|
|
|
34
35
|
}
|
|
35
36
|
},
|
|
36
37
|
"files": [
|
|
38
|
+
"locale/*.json",
|
|
37
39
|
"lib/index.js",
|
|
38
40
|
"lib/types/**/*.js",
|
|
39
41
|
"lib/types/**/*.d.ts",
|
|
@@ -44,17 +46,17 @@
|
|
|
44
46
|
],
|
|
45
47
|
"license": "MIT",
|
|
46
48
|
"dependencies": {
|
|
47
|
-
"
|
|
48
|
-
"
|
|
49
|
+
"@deepseek-ai/schemastery": "~3.18.5-alpha.2",
|
|
50
|
+
"zod": "4.4.3"
|
|
49
51
|
},
|
|
50
52
|
"peerDependencies": {
|
|
51
|
-
"@deepseek-ai/cordis": "~4.0.5-alpha.
|
|
52
|
-
"@deepseek-ai/dsh-experimental-speech-to-text": "0.2.1-alpha.
|
|
53
|
-
"@deepseek-ai/dsh-typert-protocol": "0.2.1-alpha.
|
|
53
|
+
"@deepseek-ai/cordis": "~4.0.5-alpha.2",
|
|
54
|
+
"@deepseek-ai/dsh-experimental-speech-to-text": "0.2.1-alpha.3",
|
|
55
|
+
"@deepseek-ai/dsh-typert-protocol": "0.2.1-alpha.3"
|
|
54
56
|
},
|
|
55
57
|
"devDependencies": {
|
|
56
|
-
"@deepseek-ai/cordis": "~4.0.5-alpha.
|
|
57
|
-
"@deepseek-ai/dsh-experimental-speech-to-text": "0.2.1-alpha.
|
|
58
|
-
"@deepseek-ai/dsh-typert-protocol": "0.2.1-alpha.
|
|
58
|
+
"@deepseek-ai/cordis": "~4.0.5-alpha.2",
|
|
59
|
+
"@deepseek-ai/dsh-experimental-speech-to-text": "0.2.1-alpha.3",
|
|
60
|
+
"@deepseek-ai/dsh-typert-protocol": "0.2.1-alpha.3"
|
|
59
61
|
}
|
|
60
62
|
}
|