@transloadit/zod 6.0.0 → 7.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/v3/builtinTemplates.d.ts +40 -0
- package/dist/v3/builtinTemplates.d.ts.map +1 -1
- package/dist/v3/builtinTemplates.js +29 -0
- package/dist/v3/englishInteger.d.ts +3 -0
- package/dist/v3/englishInteger.d.ts.map +1 -0
- package/dist/v3/englishInteger.js +12 -0
- package/dist/v3/lib/zodInputSemantics.d.ts +3 -1
- package/dist/v3/lib/zodInputSemantics.d.ts.map +1 -1
- package/dist/v3/lib/zodInputSemantics.js +17 -0
- package/dist/v3/responseErrors/DocumentConvertRobot.d.ts +17 -0
- package/dist/v3/responseErrors/DocumentConvertRobot.d.ts.map +1 -0
- package/dist/v3/responseErrors/DocumentConvertRobot.js +16 -0
- package/dist/v3/robots/_image-describe-output.d.ts +55 -0
- package/dist/v3/robots/_image-describe-output.d.ts.map +1 -0
- package/dist/v3/robots/_image-describe-output.js +15 -0
- package/dist/v3/robots/_image-facedetect-output.d.ts +30 -0
- package/dist/v3/robots/_image-facedetect-output.d.ts.map +1 -0
- package/dist/v3/robots/_image-facedetect-output.js +14 -0
- package/dist/v3/robots/_index.d.ts +582 -48
- package/dist/v3/robots/_index.d.ts.map +1 -1
- package/dist/v3/robots/_index.js +84 -80
- package/dist/v3/robots/_instructions-primitives.d.ts +82 -0
- package/dist/v3/robots/_instructions-primitives.d.ts.map +1 -1
- package/dist/v3/robots/_instructions-primitives.js +46 -2
- package/dist/v3/robots/_ocr-output.d.ts +75 -0
- package/dist/v3/robots/_ocr-output.d.ts.map +1 -0
- package/dist/v3/robots/_ocr-output.js +14 -0
- package/dist/v3/robots/ai-chat.d.ts +12 -12
- package/dist/v3/robots/audio-encode.d.ts.map +1 -1
- package/dist/v3/robots/audio-encode.js +8 -1
- package/dist/v3/robots/audio-split.d.ts.map +1 -1
- package/dist/v3/robots/audio-split.js +2 -0
- package/dist/v3/robots/digitalocean-store.d.ts +4 -4
- package/dist/v3/robots/digitalocean-store.js +1 -1
- package/dist/v3/robots/document-convert.d.ts +8 -6
- package/dist/v3/robots/document-convert.d.ts.map +1 -1
- package/dist/v3/robots/document-convert.js +24 -5
- package/dist/v3/robots/document-extract.d.ts +28 -16
- package/dist/v3/robots/document-extract.d.ts.map +1 -1
- package/dist/v3/robots/document-extract.js +51 -1
- package/dist/v3/robots/document-ocr.d.ts +8 -8
- package/dist/v3/robots/google-store.d.ts +32 -8
- package/dist/v3/robots/google-store.d.ts.map +1 -1
- package/dist/v3/robots/google-store.js +10 -2
- package/dist/v3/robots/html-convert.d.ts.map +1 -1
- package/dist/v3/robots/html-convert.js +1 -0
- package/dist/v3/robots/image-bgremove.d.ts +16 -16
- package/dist/v3/robots/image-describe.d.ts +17 -17
- package/dist/v3/robots/image-describe.d.ts.map +1 -1
- package/dist/v3/robots/image-describe.js +2 -1
- package/dist/v3/robots/image-facedetect.d.ts +9 -35
- package/dist/v3/robots/image-facedetect.d.ts.map +1 -1
- package/dist/v3/robots/image-facedetect.js +1 -11
- package/dist/v3/robots/image-generate.d.ts +20 -20
- package/dist/v3/robots/image-generate.js +1 -1
- package/dist/v3/robots/image-ocr.d.ts +8 -8
- package/dist/v3/robots/image-upscale.d.ts +17 -12
- package/dist/v3/robots/image-upscale.d.ts.map +1 -1
- package/dist/v3/robots/image-upscale.js +14 -2
- package/dist/v3/robots/mega-store.d.ts +4 -4
- package/dist/v3/robots/mega-store.js +1 -1
- package/dist/v3/robots/s3-store.d.ts +8 -8
- package/dist/v3/robots/s3-store.d.ts.map +1 -1
- package/dist/v3/robots/s3-store.js +14 -2
- package/dist/v3/robots/speech-transcribe.d.ts +26 -12
- package/dist/v3/robots/speech-transcribe.d.ts.map +1 -1
- package/dist/v3/robots/speech-transcribe.js +42 -2
- package/dist/v3/robots/text-speak.d.ts +8 -8
- package/dist/v3/robots/text-translate.d.ts +8 -8
- package/dist/v3/robots/video-adaptive.d.ts +16 -19
- package/dist/v3/robots/video-adaptive.d.ts.map +1 -1
- package/dist/v3/robots/video-adaptive.js +37 -3
- package/dist/v3/robots/video-concat.d.ts.map +1 -1
- package/dist/v3/robots/video-concat.js +7 -3
- package/dist/v3/robots/video-encode.d.ts.map +1 -1
- package/dist/v3/robots/video-encode.js +6 -0
- package/dist/v3/robots/video-generate.d.ts +20 -20
- package/dist/v3/robots/video-generate.js +1 -1
- package/dist/v3/robots/video-merge.d.ts.map +1 -1
- package/dist/v3/robots/video-merge.js +15 -1
- package/dist/v3/robots/video-split.d.ts +11 -0
- package/dist/v3/robots/video-split.d.ts.map +1 -1
- package/dist/v3/robots/video-split.js +4 -1
- package/dist/v3/robots/video-subtitle.d.ts +71 -28
- package/dist/v3/robots/video-subtitle.d.ts.map +1 -1
- package/dist/v3/robots/video-subtitle.js +63 -49
- package/dist/v3/robots/video-thumbs.d.ts +36 -36
- package/dist/v3/robots/video-thumbs.d.ts.map +1 -1
- package/dist/v3/robots/video-thumbs.js +8 -3
- package/dist/v3/robots/vimeo-import.d.ts.map +1 -1
- package/dist/v3/robots/vimeo-import.js +1 -1
- package/dist/v3/robots/youtube-store.d.ts +37 -20
- package/dist/v3/robots/youtube-store.d.ts.map +1 -1
- package/dist/v3/robots/youtube-store.js +17 -29
- package/dist/v3/template.d.ts.map +1 -1
- package/dist/v3/template.js +5 -2
- package/dist/v3/youtubeCategories.d.ts +20 -0
- package/dist/v3/youtubeCategories.d.ts.map +1 -0
- package/dist/v3/youtubeCategories.js +20 -0
- package/dist/v4/assemblyStatus.d.ts +2 -2
- package/dist/v4/builtinTemplates.d.ts +22 -0
- package/dist/v4/builtinTemplates.d.ts.map +1 -1
- package/dist/v4/builtinTemplates.js +29 -0
- package/dist/v4/englishInteger.d.ts +3 -0
- package/dist/v4/englishInteger.d.ts.map +1 -0
- package/dist/v4/englishInteger.js +12 -0
- package/dist/v4/lib/zodInputSemantics.d.ts +3 -1
- package/dist/v4/lib/zodInputSemantics.d.ts.map +1 -1
- package/dist/v4/lib/zodInputSemantics.js +6 -0
- package/dist/v4/responseErrors/DocumentConvertRobot.d.ts +17 -0
- package/dist/v4/responseErrors/DocumentConvertRobot.d.ts.map +1 -0
- package/dist/v4/responseErrors/DocumentConvertRobot.js +16 -0
- package/dist/v4/robots/_image-describe-output.d.ts +23 -0
- package/dist/v4/robots/_image-describe-output.d.ts.map +1 -0
- package/dist/v4/robots/_image-describe-output.js +15 -0
- package/dist/v4/robots/_image-facedetect-output.d.ts +14 -0
- package/dist/v4/robots/_image-facedetect-output.d.ts.map +1 -0
- package/dist/v4/robots/_image-facedetect-output.js +15 -0
- package/dist/v4/robots/_index.d.ts +582 -48
- package/dist/v4/robots/_index.d.ts.map +1 -1
- package/dist/v4/robots/_index.js +84 -80
- package/dist/v4/robots/_instructions-primitives.d.ts +16 -0
- package/dist/v4/robots/_instructions-primitives.d.ts.map +1 -1
- package/dist/v4/robots/_instructions-primitives.js +50 -2
- package/dist/v4/robots/_ocr-output.d.ts +29 -0
- package/dist/v4/robots/_ocr-output.d.ts.map +1 -0
- package/dist/v4/robots/_ocr-output.js +14 -0
- package/dist/v4/robots/audio-encode.d.ts.map +1 -1
- package/dist/v4/robots/audio-encode.js +8 -1
- package/dist/v4/robots/audio-split.d.ts.map +1 -1
- package/dist/v4/robots/audio-split.js +2 -0
- package/dist/v4/robots/digitalocean-store.d.ts +8 -8
- package/dist/v4/robots/digitalocean-store.js +1 -1
- package/dist/v4/robots/document-convert.d.ts +22 -8
- package/dist/v4/robots/document-convert.d.ts.map +1 -1
- package/dist/v4/robots/document-convert.js +24 -5
- package/dist/v4/robots/document-extract.d.ts +12 -0
- package/dist/v4/robots/document-extract.d.ts.map +1 -1
- package/dist/v4/robots/document-extract.js +51 -1
- package/dist/v4/robots/google-store.d.ts +16 -4
- package/dist/v4/robots/google-store.d.ts.map +1 -1
- package/dist/v4/robots/google-store.js +10 -2
- package/dist/v4/robots/html-convert.d.ts.map +1 -1
- package/dist/v4/robots/html-convert.js +1 -0
- package/dist/v4/robots/image-describe.d.ts +1 -5
- package/dist/v4/robots/image-describe.d.ts.map +1 -1
- package/dist/v4/robots/image-describe.js +2 -1
- package/dist/v4/robots/image-facedetect.d.ts +1 -11
- package/dist/v4/robots/image-facedetect.d.ts.map +1 -1
- package/dist/v4/robots/image-facedetect.js +1 -12
- package/dist/v4/robots/image-generate.d.ts +0 -4
- package/dist/v4/robots/image-generate.d.ts.map +1 -1
- package/dist/v4/robots/image-generate.js +1 -1
- package/dist/v4/robots/image-upscale.d.ts +5 -0
- package/dist/v4/robots/image-upscale.d.ts.map +1 -1
- package/dist/v4/robots/image-upscale.js +14 -2
- package/dist/v4/robots/mega-store.d.ts +8 -8
- package/dist/v4/robots/mega-store.js +1 -1
- package/dist/v4/robots/s3-store.d.ts +20 -0
- package/dist/v4/robots/s3-store.d.ts.map +1 -1
- package/dist/v4/robots/s3-store.js +14 -2
- package/dist/v4/robots/speech-transcribe.d.ts +6 -0
- package/dist/v4/robots/speech-transcribe.d.ts.map +1 -1
- package/dist/v4/robots/speech-transcribe.js +42 -2
- package/dist/v4/robots/video-adaptive.d.ts +16 -16
- package/dist/v4/robots/video-adaptive.d.ts.map +1 -1
- package/dist/v4/robots/video-adaptive.js +38 -5
- package/dist/v4/robots/video-concat.d.ts.map +1 -1
- package/dist/v4/robots/video-concat.js +7 -3
- package/dist/v4/robots/video-encode.d.ts.map +1 -1
- package/dist/v4/robots/video-encode.js +6 -0
- package/dist/v4/robots/video-generate.d.ts +0 -4
- package/dist/v4/robots/video-generate.d.ts.map +1 -1
- package/dist/v4/robots/video-generate.js +1 -1
- package/dist/v4/robots/video-merge.d.ts.map +1 -1
- package/dist/v4/robots/video-merge.js +15 -1
- package/dist/v4/robots/video-split.d.ts +5 -0
- package/dist/v4/robots/video-split.d.ts.map +1 -1
- package/dist/v4/robots/video-split.js +4 -1
- package/dist/v4/robots/video-subtitle.d.ts +43 -16
- package/dist/v4/robots/video-subtitle.d.ts.map +1 -1
- package/dist/v4/robots/video-subtitle.js +65 -55
- package/dist/v4/robots/video-thumbs.d.ts +12 -12
- package/dist/v4/robots/video-thumbs.d.ts.map +1 -1
- package/dist/v4/robots/video-thumbs.js +10 -5
- package/dist/v4/robots/vimeo-import.d.ts.map +1 -1
- package/dist/v4/robots/vimeo-import.js +1 -1
- package/dist/v4/robots/youtube-store.d.ts +25 -76
- package/dist/v4/robots/youtube-store.d.ts.map +1 -1
- package/dist/v4/robots/youtube-store.js +18 -29
- package/dist/v4/template.d.ts.map +1 -1
- package/dist/v4/template.js +5 -2
- package/dist/v4/youtubeCategories.d.ts +20 -0
- package/dist/v4/youtubeCategories.d.ts.map +1 -0
- package/dist/v4/youtubeCategories.js +20 -0
- package/package.json +2 -2
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { optionalWithV3Semantics } from "../lib/sdkZodOptional.js";
|
|
2
1
|
import { z } from 'zod/v4';
|
|
3
2
|
import { awsGcpAiProviderSchema, createProcessingExample, defineRobot, robotArtificialIntelligenceMeta, robotBase, robotParameterDocs, robotUse, } from "./_instructions-primitives.js";
|
|
4
3
|
export const imageFacedetectFaceSelectionModes = [
|
|
@@ -8,17 +7,7 @@ export const imageFacedetectFaceSelectionModes = [
|
|
|
8
7
|
'max-size',
|
|
9
8
|
];
|
|
10
9
|
export const imageFacedetectFaceSelectionModeSchema = z.enum(imageFacedetectFaceSelectionModes);
|
|
11
|
-
export
|
|
12
|
-
.object({
|
|
13
|
-
confidence: optionalWithV3Semantics(z.number()),
|
|
14
|
-
height: z.number(),
|
|
15
|
-
width: z.number(),
|
|
16
|
-
x1: z.number(),
|
|
17
|
-
x2: optionalWithV3Semantics(z.number()),
|
|
18
|
-
y1: z.number(),
|
|
19
|
-
y2: optionalWithV3Semantics(z.number()),
|
|
20
|
-
})
|
|
21
|
-
.catchall(z.unknown());
|
|
10
|
+
export { imageFacedetectFaceCoordinatesSchema, } from "./_image-facedetect-output.js";
|
|
22
11
|
export const meta = {
|
|
23
12
|
...robotArtificialIntelligenceMeta,
|
|
24
13
|
example_code: createProcessingExample('faces_detected', '/image/facedetect', {
|
|
@@ -38,7 +38,6 @@ export declare const robotImageGenerateInstructionsSchema: z.ZodObject<{
|
|
|
38
38
|
model: z.ZodOptional<z.ZodString>;
|
|
39
39
|
prompt: z.ZodString;
|
|
40
40
|
format: z.ZodOptional<z.ZodEnum<{
|
|
41
|
-
gif: "gif";
|
|
42
41
|
jpeg: "jpeg";
|
|
43
42
|
jpg: "jpg";
|
|
44
43
|
png: "png";
|
|
@@ -88,7 +87,6 @@ export declare const robotImageGenerateInstructionsWithHiddenFieldsSchema: z.Zod
|
|
|
88
87
|
model: z.ZodOptional<z.ZodString>;
|
|
89
88
|
prompt: z.ZodString;
|
|
90
89
|
format: z.ZodOptional<z.ZodEnum<{
|
|
91
|
-
gif: "gif";
|
|
92
90
|
jpeg: "jpeg";
|
|
93
91
|
jpg: "jpg";
|
|
94
92
|
png: "png";
|
|
@@ -143,7 +141,6 @@ export declare const interpolatableRobotImageGenerateInstructionsSchema: z.ZodOb
|
|
|
143
141
|
model: z.ZodOptional<z.ZodString>;
|
|
144
142
|
prompt: z.ZodString;
|
|
145
143
|
format: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodEnum<{
|
|
146
|
-
gif: "gif";
|
|
147
144
|
jpeg: "jpeg";
|
|
148
145
|
jpg: "jpg";
|
|
149
146
|
png: "png";
|
|
@@ -195,7 +192,6 @@ export declare const interpolatableRobotImageGenerateInstructionsWithHiddenField
|
|
|
195
192
|
model: z.ZodOptional<z.ZodString>;
|
|
196
193
|
prompt: z.ZodString;
|
|
197
194
|
format: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodEnum<{
|
|
198
|
-
gif: "gif";
|
|
199
195
|
jpeg: "jpeg";
|
|
200
196
|
jpg: "jpg";
|
|
201
197
|
png: "png";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"image-generate.d.ts","sourceRoot":"","sources":["../../../src/v4/robots/image-generate.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAEpF,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAA;AAsB1B,eAAO,MAAM,IAAI,EAAE,cA6BlB,CAAA;AASD,eAAO,MAAM,oCAAoC
|
|
1
|
+
{"version":3,"file":"image-generate.d.ts","sourceRoot":"","sources":["../../../src/v4/robots/image-generate.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAEpF,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAA;AAsB1B,eAAO,MAAM,IAAI,EAAE,cA6BlB,CAAA;AASD,eAAO,MAAM,oCAAoC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAqEtC,CAAA;AAEX,eAAO,MAAM,oDAAoD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAK7D,CAAA;AAEJ,MAAM,MAAM,8BAA8B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oCAAoC,CAAC,CAAA;AACjG,MAAM,MAAM,8CAA8C,GAAG,CAAC,CAAC,KAAK,CAClE,OAAO,oDAAoD,CAC5D,CAAA;AAED,eAAO,MAAM,kDAAkD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAE9D,CAAA;AACD,MAAM,MAAM,4CAA4C,GACtD,iDAAiD,CAAA;AAEnD,MAAM,MAAM,iDAAiD,GAAG,CAAC,CAAC,KAAK,CACrE,OAAO,kDAAkD,CAC1D,CAAA;AAED,eAAO,MAAM,kEAAkE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAE9E,CAAA;AACD,MAAM,MAAM,4DAA4D,GAAG,CAAC,CAAC,KAAK,CAChF,OAAO,kEAAkE,CAC1E,CAAA;AACD,MAAM,MAAM,iEAAiE,GAAG,CAAC,CAAC,KAAK,CACrF,OAAO,kEAAkE,CAC1E,CAAA;AAED,eAAO,MAAM,eAAe,EAAE,eAAe,CAC3C,OAAO,kDAAkD,EACzD,OAAO,kEAAkE,CAM1E,CAAA"}
|
|
@@ -72,7 +72,7 @@ Best practice:
|
|
|
72
72
|
.string()
|
|
73
73
|
.describe('Prompt describing the desired image. For inpainting, describe what should appear in the masked/transparent region and that the rest should stay unchanged.'),
|
|
74
74
|
format: optionalWithV3Semantics(z
|
|
75
|
-
.enum(['jpeg', 'jpg', 'png', '
|
|
75
|
+
.enum(['jpeg', 'jpg', 'png', 'webp', 'svg']))
|
|
76
76
|
.describe('Output format. Defaults depend on model: png for Google and OpenAI models, svg for recraft-v3, jpeg for others. Google models currently return PNG only.'),
|
|
77
77
|
// Provider-specific limits are checked by the Robot so other models retain their seed range.
|
|
78
78
|
seed: optionalWithV3Semantics(z
|
|
@@ -1,6 +1,11 @@
|
|
|
1
1
|
import type { RobotDefinitionWithHiddenFields, RobotMetaInput, RobotSchemaVariantTypes } from './_instructions-primitives.ts';
|
|
2
2
|
import { z } from 'zod/v4';
|
|
3
3
|
export declare const meta: RobotMetaInput;
|
|
4
|
+
/**
|
|
5
|
+
* Maximum input area accepted by the pinned Real-ESRGAN Replicate predictor.
|
|
6
|
+
* @see https://github.com/replicate/cog-real-esrgan/blob/6cbd5e6ce8bd0fa90db54af899a8a9a85eb3db41/predict.py#L19
|
|
7
|
+
*/
|
|
8
|
+
export declare const realEsrganMaxInputPixels: number;
|
|
4
9
|
export declare const robotImageUpscaleInstructionsSchema: z.ZodObject<{
|
|
5
10
|
interpolate: z.ZodOptional<z.ZodUnion<readonly [z.ZodPipe<z.ZodUnion<readonly [z.ZodBoolean, z.ZodEnum<{
|
|
6
11
|
true: "true";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"image-upscale.d.ts","sourceRoot":"","sources":["../../../src/v4/robots/image-upscale.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,+BAA+B,EAC/B,cAAc,EACd,uBAAuB,EACxB,MAAM,+BAA+B,CAAA;AAEtC,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAA;
|
|
1
|
+
{"version":3,"file":"image-upscale.d.ts","sourceRoot":"","sources":["../../../src/v4/robots/image-upscale.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,+BAA+B,EAC/B,cAAc,EACd,uBAAuB,EACxB,MAAM,+BAA+B,CAAA;AAEtC,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAA;AAa1B,eAAO,MAAM,IAAI,EAAE,cAqBlB,CAAA;AAQD;;;GAGG;AACH,eAAO,MAAM,wBAAwB,QAAc,CAAA;AAEnD,eAAO,MAAM,mCAAmC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAkBrC,CAAA;AAEX,QAAA,MAAM,YAAY;;CAEjB,CAAA;AAED,eAAO,MAAM,eAAe,EAAE,+BAA+B,CAC3D,OAAO,mCAAmC,CAAC,KAAK,EAChD,OAAO,YAAY,CACmE,CAAA;AAExF,eAAO,MACa,mDAAmD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oBACrD,iDAAiD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oBACjC,iEAAiE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAChF,CAAA;AAEnB,KAAK,YAAY,GAAG,uBAAuB,CAAC,OAAO,eAAe,CAAC,CAAA;AAEnE,MAAM,MAAM,6BAA6B,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAA;AAClE,MAAM,MAAM,6CAA6C,GAAG,YAAY,CAAC,cAAc,CAAC,CAAA;AACxF,MAAM,MAAM,2CAA2C,GAAG,YAAY,CAAC,qBAAqB,CAAC,CAAA;AAC7F,MAAM,MAAM,gDAAgD,GAAG,YAAY,CAAC,qBAAqB,CAAC,CAAA;AAClG,MAAM,MAAM,2DAA2D,GACrE,YAAY,CAAC,4BAA4B,CAAC,CAAA;AAC5C,MAAM,MAAM,gEAAgE,GAC1E,YAAY,CAAC,2BAA2B,CAAC,CAAA"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { optionalWithV3Semantics } from "../lib/sdkZodOptional.js";
|
|
2
2
|
import { z } from 'zod/v4';
|
|
3
|
+
import { formatEnglishInteger } from "../englishInteger.js";
|
|
3
4
|
import { imageUpscaleDefaultModelIdentifier, imageUpscaleModelIdentifiers } from "./_ai-models.js";
|
|
4
5
|
import { autoProviderDescription, createProcessingExample, defineRobotWithHiddenFields, robotArtificialIntelligenceMeta, robotBase, robotUse, } from "./_instructions-primitives.js";
|
|
5
6
|
export const meta = {
|
|
@@ -15,7 +16,13 @@ export const meta = {
|
|
|
15
16
|
purpose_words: 'Upscale images',
|
|
16
17
|
title: 'Upscale images',
|
|
17
18
|
name: 'ImageUpscaleRobot',
|
|
19
|
+
// Preserve the runtime fallback; positive provider costs replace it during usage accounting.
|
|
18
20
|
minimumChargeUsd: 0.06,
|
|
21
|
+
providerCostPricing: {
|
|
22
|
+
provider: 'replicate',
|
|
23
|
+
model: imageUpscaleDefaultModelIdentifier,
|
|
24
|
+
models: [...imageUpscaleModelIdentifiers],
|
|
25
|
+
},
|
|
19
26
|
stage: 'beta',
|
|
20
27
|
};
|
|
21
28
|
const upscaleModelSchema = z
|
|
@@ -23,15 +30,20 @@ const upscaleModelSchema = z
|
|
|
23
30
|
.default(imageUpscaleDefaultModelIdentifier);
|
|
24
31
|
const upscaleScaleSchema = z.union([z.literal(2), z.literal(4)]).default(2);
|
|
25
32
|
const upscaleFaceEnhanceSchema = z.boolean().default(false);
|
|
33
|
+
/**
|
|
34
|
+
* Maximum input area accepted by the pinned Real-ESRGAN Replicate predictor.
|
|
35
|
+
* @see https://github.com/replicate/cog-real-esrgan/blob/6cbd5e6ce8bd0fa90db54af899a8a9a85eb3db41/predict.py#L19
|
|
36
|
+
*/
|
|
37
|
+
export const realEsrganMaxInputPixels = 1448 * 1448;
|
|
26
38
|
export const robotImageUpscaleInstructionsSchema = robotBase
|
|
27
39
|
.merge(robotUse)
|
|
28
40
|
.extend({
|
|
29
41
|
robot: z.literal('/image/upscale'),
|
|
30
42
|
// Outer optional preserves parsed input; normalization applies the published inner defaults.
|
|
31
43
|
model: optionalWithV3Semantics(upscaleModelSchema)
|
|
32
|
-
.describe(`The AI model to use for image upscaling. Defaults to ${upscaleModelSchema.parse(undefined)}.`),
|
|
44
|
+
.describe(`The AI model to use for image upscaling. Defaults to ${upscaleModelSchema.parse(undefined)}. Real-ESRGAN inputs exceeding ${formatEnglishInteger(realEsrganMaxInputPixels)} pixels are resized proportionally before upscaling.`),
|
|
33
45
|
scale: optionalWithV3Semantics(upscaleScaleSchema)
|
|
34
|
-
.describe(`Upscale factor. Defaults to ${upscaleScaleSchema.parse(undefined)}.`),
|
|
46
|
+
.describe(`Upscale factor, applied after any input resizing. Defaults to ${upscaleScaleSchema.parse(undefined)}. GFPGAN results are resized after restoration to match this factor.`),
|
|
35
47
|
face_enhance: optionalWithV3Semantics(upscaleFaceEnhanceSchema)
|
|
36
48
|
.describe(`Enable face enhancement for better face restoration. Defaults to ${upscaleFaceEnhanceSchema.parse(undefined)}.`),
|
|
37
49
|
})
|
|
@@ -42,10 +42,10 @@ export declare const robotMegaStoreInstructionsSchema: z.ZodObject<{
|
|
|
42
42
|
secret: z.ZodOptional<z.ZodString>;
|
|
43
43
|
robot: z.ZodLiteral<"/mega/store">;
|
|
44
44
|
path: z.ZodDefault<z.ZodString>;
|
|
45
|
-
acl: z.ZodDefault<z.ZodEnum<{
|
|
45
|
+
acl: z.ZodDefault<z.ZodDefault<z.ZodEnum<{
|
|
46
46
|
private: "private";
|
|
47
47
|
"public-read": "public-read";
|
|
48
|
-
}
|
|
48
|
+
}>>>;
|
|
49
49
|
headers: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
50
50
|
sign_urls_for: z.ZodOptional<z.ZodNumber>;
|
|
51
51
|
}, z.core.$strict>;
|
|
@@ -90,10 +90,10 @@ export declare const robotMegaStoreInstructionsWithHiddenFieldsSchema: z.ZodObje
|
|
|
90
90
|
secret: z.ZodOptional<z.ZodString>;
|
|
91
91
|
robot: z.ZodLiteral<"/mega/store">;
|
|
92
92
|
path: z.ZodDefault<z.ZodString>;
|
|
93
|
-
acl: z.ZodDefault<z.ZodEnum<{
|
|
93
|
+
acl: z.ZodDefault<z.ZodDefault<z.ZodEnum<{
|
|
94
94
|
private: "private";
|
|
95
95
|
"public-read": "public-read";
|
|
96
|
-
}
|
|
96
|
+
}>>>;
|
|
97
97
|
headers: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
98
98
|
sign_urls_for: z.ZodOptional<z.ZodNumber>;
|
|
99
99
|
result: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"debug">, z.ZodDefault<z.ZodBoolean>]>>;
|
|
@@ -138,10 +138,10 @@ export declare const robotMegaStoreInstructionsWithHiddenFieldsSchema: z.ZodObje
|
|
|
138
138
|
secret: z.ZodOptional<z.ZodString>;
|
|
139
139
|
robot: z.ZodLiteral<"/mega/store">;
|
|
140
140
|
path: z.ZodPrefault<z.ZodString>;
|
|
141
|
-
acl: z.ZodPrefault<z.ZodUnion<[z.ZodString, z.ZodEnum<{
|
|
141
|
+
acl: z.ZodPrefault<z.ZodPrefault<z.ZodUnion<[z.ZodString, z.ZodEnum<{
|
|
142
142
|
private: "private";
|
|
143
143
|
"public-read": "public-read";
|
|
144
|
-
}>]
|
|
144
|
+
}>]>>>;
|
|
145
145
|
headers: z.ZodPrefault<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
146
146
|
sign_urls_for: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNumber]>>;
|
|
147
147
|
}, z.core.$strict>, interpolatableRobotMegaStoreInstructionsWithHiddenFieldsSchema: z.ZodObject<{
|
|
@@ -184,10 +184,10 @@ export declare const robotMegaStoreInstructionsWithHiddenFieldsSchema: z.ZodObje
|
|
|
184
184
|
secret: z.ZodOptional<z.ZodString>;
|
|
185
185
|
robot: z.ZodLiteral<"/mega/store">;
|
|
186
186
|
path: z.ZodPrefault<z.ZodString>;
|
|
187
|
-
acl: z.ZodPrefault<z.ZodUnion<[z.ZodString, z.ZodEnum<{
|
|
187
|
+
acl: z.ZodPrefault<z.ZodPrefault<z.ZodUnion<[z.ZodString, z.ZodEnum<{
|
|
188
188
|
private: "private";
|
|
189
189
|
"public-read": "public-read";
|
|
190
|
-
}>]
|
|
190
|
+
}>]>>>;
|
|
191
191
|
headers: z.ZodPrefault<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
192
192
|
sign_urls_for: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNumber]>>;
|
|
193
193
|
result: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodUnion<[z.ZodString, z.ZodLiteral<"debug">]>, z.ZodPrefault<z.ZodUnion<[z.ZodString, z.ZodBoolean]>>]>>;
|
|
@@ -19,7 +19,7 @@ export const robotMegaStoreInstructionsSchema = robotBase
|
|
|
19
19
|
The URL to the result file will be returned in the <dfn>Assembly Status JSON</dfn>.
|
|
20
20
|
`),
|
|
21
21
|
path: storeFilePath,
|
|
22
|
-
acl: storageAcl,
|
|
22
|
+
acl: storageAcl.default('private'),
|
|
23
23
|
headers: z.record(z.string(), z.string())
|
|
24
24
|
.default({ 'Content-Type': '${file.mime}' })
|
|
25
25
|
.describe(`
|
|
@@ -45,8 +45,13 @@ export declare const robotS3StoreInstructionsSchema: z.ZodObject<{
|
|
|
45
45
|
acl: z.ZodDefault<z.ZodEnum<{
|
|
46
46
|
private: "private";
|
|
47
47
|
"public-read": "public-read";
|
|
48
|
+
"authenticated-read": "authenticated-read";
|
|
49
|
+
"bucket-owner-full-control": "bucket-owner-full-control";
|
|
50
|
+
"aws-exec-read": "aws-exec-read";
|
|
48
51
|
"bucket-default": "bucket-default";
|
|
52
|
+
"bucket-owner-read": "bucket-owner-read";
|
|
49
53
|
public: "public";
|
|
54
|
+
"public-read-write": "public-read-write";
|
|
50
55
|
}>>;
|
|
51
56
|
check_integrity: z.ZodDefault<z.ZodBoolean>;
|
|
52
57
|
headers: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
@@ -103,8 +108,13 @@ export declare const robotS3StoreInstructionsWithHiddenFieldsSchema: z.ZodObject
|
|
|
103
108
|
acl: z.ZodDefault<z.ZodEnum<{
|
|
104
109
|
private: "private";
|
|
105
110
|
"public-read": "public-read";
|
|
111
|
+
"authenticated-read": "authenticated-read";
|
|
112
|
+
"bucket-owner-full-control": "bucket-owner-full-control";
|
|
113
|
+
"aws-exec-read": "aws-exec-read";
|
|
106
114
|
"bucket-default": "bucket-default";
|
|
115
|
+
"bucket-owner-read": "bucket-owner-read";
|
|
107
116
|
public: "public";
|
|
117
|
+
"public-read-write": "public-read-write";
|
|
108
118
|
}>>;
|
|
109
119
|
check_integrity: z.ZodDefault<z.ZodBoolean>;
|
|
110
120
|
headers: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
@@ -159,8 +169,13 @@ export declare const robotS3StoreInstructionsWithHiddenFieldsSchema: z.ZodObject
|
|
|
159
169
|
acl: z.ZodPrefault<z.ZodUnion<[z.ZodString, z.ZodEnum<{
|
|
160
170
|
private: "private";
|
|
161
171
|
"public-read": "public-read";
|
|
172
|
+
"authenticated-read": "authenticated-read";
|
|
173
|
+
"bucket-owner-full-control": "bucket-owner-full-control";
|
|
174
|
+
"aws-exec-read": "aws-exec-read";
|
|
162
175
|
"bucket-default": "bucket-default";
|
|
176
|
+
"bucket-owner-read": "bucket-owner-read";
|
|
163
177
|
public: "public";
|
|
178
|
+
"public-read-write": "public-read-write";
|
|
164
179
|
}>]>>;
|
|
165
180
|
check_integrity: z.ZodPrefault<z.ZodUnion<[z.ZodString, z.ZodBoolean]>>;
|
|
166
181
|
headers: z.ZodPrefault<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
@@ -212,8 +227,13 @@ export declare const robotS3StoreInstructionsWithHiddenFieldsSchema: z.ZodObject
|
|
|
212
227
|
acl: z.ZodPrefault<z.ZodUnion<[z.ZodString, z.ZodEnum<{
|
|
213
228
|
private: "private";
|
|
214
229
|
"public-read": "public-read";
|
|
230
|
+
"authenticated-read": "authenticated-read";
|
|
231
|
+
"bucket-owner-full-control": "bucket-owner-full-control";
|
|
232
|
+
"aws-exec-read": "aws-exec-read";
|
|
215
233
|
"bucket-default": "bucket-default";
|
|
234
|
+
"bucket-owner-read": "bucket-owner-read";
|
|
216
235
|
public: "public";
|
|
236
|
+
"public-read-write": "public-read-write";
|
|
217
237
|
}>]>>;
|
|
218
238
|
check_integrity: z.ZodPrefault<z.ZodUnion<[z.ZodString, z.ZodBoolean]>>;
|
|
219
239
|
headers: z.ZodPrefault<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"s3-store.d.ts","sourceRoot":"","sources":["../../../src/v4/robots/s3-store.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,+BAA+B,EAC/B,cAAc,EACd,uBAAuB,EACxB,MAAM,+BAA+B,CAAA;AAEtC,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAA;
|
|
1
|
+
{"version":3,"file":"s3-store.d.ts","sourceRoot":"","sources":["../../../src/v4/robots/s3-store.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,+BAA+B,EAC/B,cAAc,EACd,uBAAuB,EACxB,MAAM,+BAA+B,CAAA;AAEtC,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAA;AA4B1B,eAAO,MAAM,IAAI,EAAE,cAYlB,CAAA;AAED,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBA4GhC,CAAA;AAEX,QAAA,MAAM,YAAY;;CAMjB,CAAA;AAED,eAAO,MAAM,eAAe,EAAE,+BAA+B,CAC3D,OAAO,8BAA8B,CAAC,KAAK,EAC3C,OAAO,YAAY,CAC8D,CAAA;AAEnF,eAAO,MACa,8CAA8C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oBAChD,4CAA4C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oBAC5B,4DAA4D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAC3E,CAAA;AAEnB,KAAK,YAAY,GAAG,uBAAuB,CAAC,OAAO,eAAe,CAAC,CAAA;AAEnE,MAAM,MAAM,wBAAwB,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAA;AAC7D,MAAM,MAAM,6BAA6B,GAAG,YAAY,CAAC,OAAO,CAAC,CAAA;AACjE,MAAM,MAAM,wCAAwC,GAAG,YAAY,CAAC,cAAc,CAAC,CAAA;AACnF,MAAM,MAAM,sCAAsC,GAAG,YAAY,CAAC,qBAAqB,CAAC,CAAA;AACxF,MAAM,MAAM,2CAA2C,GAAG,YAAY,CAAC,qBAAqB,CAAC,CAAA;AAC7F,MAAM,MAAM,sDAAsD,GAChE,YAAY,CAAC,4BAA4B,CAAC,CAAA;AAC5C,MAAM,MAAM,2DAA2D,GACrE,YAAY,CAAC,2BAA2B,CAAC,CAAA"}
|
|
@@ -2,7 +2,19 @@ import { optionalWithV3Semantics } from "../lib/sdkZodOptional.js";
|
|
|
2
2
|
import { z } from 'zod/v4';
|
|
3
3
|
import { createStorageStoreExample, defineRobotWithHiddenFields, robotBase, robotStoreMeta, robotUse, s3Base, storeFilePath, } from "./_instructions-primitives.js";
|
|
4
4
|
const s3StoreAclSchema = z
|
|
5
|
-
|
|
5
|
+
// AWS object canned ACLs, plus the existing omission sentinel and legacy `public` value.
|
|
6
|
+
// `log-delivery-write` is bucket-only: https://docs.aws.amazon.com/AmazonS3/latest/userguide/acl-overview.html#canned-acl
|
|
7
|
+
.enum([
|
|
8
|
+
'authenticated-read',
|
|
9
|
+
'aws-exec-read',
|
|
10
|
+
'bucket-default',
|
|
11
|
+
'bucket-owner-full-control',
|
|
12
|
+
'bucket-owner-read',
|
|
13
|
+
'private',
|
|
14
|
+
'public',
|
|
15
|
+
'public-read',
|
|
16
|
+
'public-read-write',
|
|
17
|
+
])
|
|
6
18
|
.default('public-read');
|
|
7
19
|
export const meta = {
|
|
8
20
|
...robotStoreMeta,
|
|
@@ -78,7 +90,7 @@ Short-lived AWS credentials are a matching set of \`key\`, \`secret\` and \`sess
|
|
|
78
90
|
The URL prefix used for the returned URL, such as \`"http://my.cdn.com/some/path/"\`.
|
|
79
91
|
`),
|
|
80
92
|
acl: s3StoreAclSchema.describe(`
|
|
81
|
-
The ACL used for this file. The default remains \`"${s3StoreAclSchema.parse(undefined)}"\`, which can conflict with S3 Block Public Access and disabled ACLs. For modern private buckets, explicitly set \`"bucket-default"\` to omit the generated ACL header, and do not supply ACL/grant headers in \`headers\`. \`"private"\` still sends an ACL.
|
|
93
|
+
The ACL used for this file. Supports AWS’s [canned ACLs for objects](https://docs.aws.amazon.com/AmazonS3/latest/userguide/acl-overview.html#canned-acl). Other S3-compatible providers may support different ACLs. The default remains \`"${s3StoreAclSchema.parse(undefined)}"\`, which can conflict with S3 Block Public Access and disabled ACLs. For modern private buckets, explicitly set \`"bucket-default"\` to omit the generated ACL header, and do not supply ACL/grant headers in \`headers\`. \`"private"\` still sends an ACL.
|
|
82
94
|
`),
|
|
83
95
|
check_integrity: z
|
|
84
96
|
.boolean()
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import type { RobotDefinitionWithHiddenFields, RobotMetaInput, RobotSchemaVariantTypes } from './_instructions-primitives.ts';
|
|
2
2
|
import { z } from 'zod/v4';
|
|
3
|
+
/** Shared vocabulary limits keep inline hints within GCP and Whisper prompt budgets. */
|
|
4
|
+
export declare const speechTranscribeVocabularySchema: z.ZodArray<z.ZodString>;
|
|
3
5
|
export declare const meta: RobotMetaInput;
|
|
4
6
|
export declare const robotSpeechTranscribeInstructionsSchema: z.ZodObject<{
|
|
5
7
|
interpolate: z.ZodOptional<z.ZodUnion<readonly [z.ZodPipe<z.ZodUnion<readonly [z.ZodBoolean, z.ZodEnum<{
|
|
@@ -41,6 +43,7 @@ export declare const robotSpeechTranscribeInstructionsSchema: z.ZodObject<{
|
|
|
41
43
|
replicate: "replicate";
|
|
42
44
|
auto: "auto";
|
|
43
45
|
}>>;
|
|
46
|
+
vocabulary: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
44
47
|
granularity: z.ZodDefault<z.ZodEnum<{
|
|
45
48
|
full: "full";
|
|
46
49
|
list: "list";
|
|
@@ -103,6 +106,7 @@ export declare const robotSpeechTranscribeInstructionsWithHiddenFieldsSchema: z.
|
|
|
103
106
|
fields: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
104
107
|
}, z.core.$strict>]>>;
|
|
105
108
|
robot: z.ZodLiteral<"/speech/transcribe">;
|
|
109
|
+
vocabulary: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
106
110
|
granularity: z.ZodDefault<z.ZodEnum<{
|
|
107
111
|
full: "full";
|
|
108
112
|
list: "list";
|
|
@@ -169,6 +173,7 @@ export declare const robotSpeechTranscribeInstructionsWithHiddenFieldsSchema: z.
|
|
|
169
173
|
replicate: "replicate";
|
|
170
174
|
auto: "auto";
|
|
171
175
|
}>]>>;
|
|
176
|
+
vocabulary: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString>]>>;
|
|
172
177
|
granularity: z.ZodPrefault<z.ZodUnion<[z.ZodString, z.ZodEnum<{
|
|
173
178
|
full: "full";
|
|
174
179
|
list: "list";
|
|
@@ -217,6 +222,7 @@ export declare const robotSpeechTranscribeInstructionsWithHiddenFieldsSchema: z.
|
|
|
217
222
|
fields: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
218
223
|
}, z.core.$strict>]>>;
|
|
219
224
|
robot: z.ZodLiteral<"/speech/transcribe">;
|
|
225
|
+
vocabulary: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString>]>>;
|
|
220
226
|
granularity: z.ZodPrefault<z.ZodUnion<[z.ZodString, z.ZodEnum<{
|
|
221
227
|
full: "full";
|
|
222
228
|
list: "list";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"speech-transcribe.d.ts","sourceRoot":"","sources":["../../../src/v4/robots/speech-transcribe.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,+BAA+B,EAC/B,cAAc,EACd,uBAAuB,EACxB,MAAM,+BAA+B,CAAA;AAEtC,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAA;
|
|
1
|
+
{"version":3,"file":"speech-transcribe.d.ts","sourceRoot":"","sources":["../../../src/v4/robots/speech-transcribe.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,+BAA+B,EAC/B,cAAc,EACd,uBAAuB,EACxB,MAAM,+BAA+B,CAAA;AAEtC,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAA;AAkB1B,wFAAwF;AACxF,eAAO,MAAM,gCAAgC,yBAoB5C,CAAA;AAED,eAAO,MAAM,IAAI,EAAE,cA2BlB,CAAA;AAED,eAAO,MAAM,uCAAuC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBA0HzC,CAAA;AAEX,QAAA,MAAM,YAAY;;;;;;;;;;;CAGjB,CAAA;AAED,eAAO,MAAM,eAAe,EAAE,+BAA+B,CAC3D,OAAO,uCAAuC,CAAC,KAAK,EACpD,OAAO,YAAY,CACuE,CAAA;AAE5F,eAAO,MACa,uDAAuD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oBACzD,qDAAqD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oBAEnE,qEAAqE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBACtD,CAAA;AAEnB,KAAK,YAAY,GAAG,uBAAuB,CAAC,OAAO,eAAe,CAAC,CAAA;AAEnE,MAAM,MAAM,iCAAiC,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAA;AACtE,MAAM,MAAM,iDAAiD,GAAG,YAAY,CAAC,cAAc,CAAC,CAAA;AAC5F,MAAM,MAAM,+CAA+C,GAAG,YAAY,CAAC,qBAAqB,CAAC,CAAA;AACjG,MAAM,MAAM,oDAAoD,GAC9D,YAAY,CAAC,qBAAqB,CAAC,CAAA;AACrC,MAAM,MAAM,+DAA+D,GACzE,YAAY,CAAC,4BAA4B,CAAC,CAAA;AAC5C,MAAM,MAAM,oEAAoE,GAC9E,YAAY,CAAC,2BAA2B,CAAC,CAAA"}
|
|
@@ -1,10 +1,29 @@
|
|
|
1
1
|
import { optionalWithV3Semantics } from "../lib/sdkZodOptional.js";
|
|
2
2
|
import { z } from 'zod/v4';
|
|
3
|
+
import { zodWithConservativeJsonInputSchema } from "../lib/zodInputSemantics.js";
|
|
3
4
|
import { autoProviderDescription, createProcessingExample, defineRobotWithHiddenFields, granularitySchema, robotArtificialIntelligenceMeta, robotBase, robotUse, } from "./_instructions-primitives.js";
|
|
4
5
|
const speechTranscribeProviderSchema = z.enum(['auto', 'aws', 'gcp', 'replicate']).default('auto');
|
|
5
6
|
const speechTranscribeProviderWithHiddenFieldsSchema = z
|
|
6
7
|
.enum(['auto', 'aws', 'gcp', 'replicate', 'transloadit'])
|
|
7
8
|
.default('auto');
|
|
9
|
+
/** Shared vocabulary limits keep inline hints within GCP and Whisper prompt budgets. */
|
|
10
|
+
export const speechTranscribeVocabularySchema = zodWithConservativeJsonInputSchema(z
|
|
11
|
+
.array(z
|
|
12
|
+
.string()
|
|
13
|
+
.trim()
|
|
14
|
+
.min(1)
|
|
15
|
+
.max(100)
|
|
16
|
+
.regex(/^[^\p{Cc}]+$/u))
|
|
17
|
+
.max(50)
|
|
18
|
+
.refine((terms) => new Set(terms.map((term) => term.toLowerCase())).size === terms.length, {
|
|
19
|
+
message: 'Vocabulary terms must be unique, ignoring case.',
|
|
20
|
+
})
|
|
21
|
+
// Byte-level tokenization uses at most one token per byte. Reserve room for sentence styling.
|
|
22
|
+
.refine((terms) => new TextEncoder().encode(terms.join(', ')).byteLength <= 200, {
|
|
23
|
+
message: 'Vocabulary terms joined with comma-space must not exceed 200 UTF-8 bytes.',
|
|
24
|
+
}),
|
|
25
|
+
// Trimming, Unicode case uniqueness and a joined UTF-8 budget have no portable JSON Schema form.
|
|
26
|
+
z.array(z.string().min(1)).max(50));
|
|
8
27
|
export const meta = {
|
|
9
28
|
...robotArtificialIntelligenceMeta,
|
|
10
29
|
example_code: createProcessingExample('transcribed', '/speech/transcribe', {
|
|
@@ -59,7 +78,8 @@ recurring speakers:
|
|
|
59
78
|
\`\`\`
|
|
60
79
|
|
|
61
80
|
Speaker labels are currently supported by the \`aws\` and \`gcp\` providers. If you enable
|
|
62
|
-
\`speaker_labels\` without setting \`provider\`, Transloadit uses \`aws\` for that <dfn>Step</dfn
|
|
81
|
+
\`speaker_labels\` without setting \`provider\`, Transloadit uses \`aws\` for that <dfn>Step</dfn>, or
|
|
82
|
+
\`gcp\` when \`vocabulary\` is also supplied. Labels
|
|
63
83
|
are normalized as \`speaker_1\`, \`speaker_2\`, and so on:
|
|
64
84
|
|
|
65
85
|
\`\`\`json
|
|
@@ -82,7 +102,27 @@ ${autoProviderDescription}
|
|
|
82
102
|
|
|
83
103
|
Set this to \`"aws"\`, \`"gcp"\`, or \`"replicate"\` to force a specific provider.
|
|
84
104
|
When set to \`"auto"\`, Transloadit uses \`"replicate"\` by default and uses \`"aws"\` when
|
|
85
|
-
\`speaker_labels\` is enabled.
|
|
105
|
+
\`speaker_labels\` is enabled. If both \`speaker_labels\` and a nonempty \`vocabulary\` are set,
|
|
106
|
+
\`"auto"\` uses \`"gcp"\`.
|
|
107
|
+
`),
|
|
108
|
+
vocabulary: optionalWithV3Semantics(speechTranscribeVocabularySchema).describe(`
|
|
109
|
+
Words or phrases to favor during speech recognition, using the spelling you want in the output.
|
|
110
|
+
For example, \`["Transloadit", "Uppy", "tus"]\` helps the provider recognize brand and product names.
|
|
111
|
+
|
|
112
|
+
Supply up to 50 distinct terms, each between 1 and 100 characters after trimming surrounding
|
|
113
|
+
whitespace. Terms must not contain control characters or case-insensitive duplicates. The terms
|
|
114
|
+
joined with \`", "\` must fit within 200 UTF-8 bytes, keeping all terms within Whisper’s prompt
|
|
115
|
+
budget. Omitting this parameter or supplying an empty array leaves recognition unchanged.
|
|
116
|
+
|
|
117
|
+
Supported by \`"replicate"\` and \`"gcp"\`. Replicate uses a prompt-capable WhisperX large-v3 model
|
|
118
|
+
with aligned word timestamps when vocabulary is supplied. GCP uses inline boosted phrase hints.
|
|
119
|
+
Explicit \`"aws"\` requests with vocabulary return a validation error because AWS requires a
|
|
120
|
+
pre-created Custom Vocabulary. Use \`"auto"\`, \`"replicate"\`, or \`"gcp"\` instead.
|
|
121
|
+
|
|
122
|
+
Hints improve recognition but do not guarantee that a term is recognized. Afterwards, complete
|
|
123
|
+
case-insensitive matches use your supplied spelling in every output format, including JSON words
|
|
124
|
+
and speaker segments, without changing timestamps. Similar-sounding words are never replaced:
|
|
125
|
+
\`"transloadit"\` becomes \`"Transloadit"\`, but \`"Transloaded"\` stays unchanged.
|
|
86
126
|
`),
|
|
87
127
|
granularity: granularitySchema.describe(`
|
|
88
128
|
Both \`"full"\` and \`"list"\` currently return the same complete transcription response. \`"list"\` remains accepted for backward compatibility.
|