@norskvideo/ctl-product-template-schema 0.1.9 → 0.1.10

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.
Files changed (3) hide show
  1. package/index.d.ts +9 -0
  2. package/index.js +17 -6
  3. package/package.json +1 -1
package/index.d.ts CHANGED
@@ -43,6 +43,9 @@ export declare const ProductTemplateAllocatedPortSchema: z.ZodObject<{
43
43
  export type ProductTemplateAllocatedPort = z.infer<typeof ProductTemplateAllocatedPortSchema>;
44
44
  export declare const ProductTemplateSideloadSchema: z.ZodObject<{
45
45
  gpuInference: z.ZodOptional<z.ZodBoolean>;
46
+ models: z.ZodOptional<z.ZodBoolean>;
47
+ modelsReasoning: z.ZodOptional<z.ZodBoolean>;
48
+ llmVenv: z.ZodOptional<z.ZodBoolean>;
46
49
  }, z.core.$strip>;
47
50
  export type ProductTemplateSideload = z.infer<typeof ProductTemplateSideloadSchema>;
48
51
  export declare const ProductTemplateManifestSchema: z.ZodObject<{
@@ -73,6 +76,9 @@ export declare const ProductTemplateManifestSchema: z.ZodObject<{
73
76
  requiresWorkingDirectory: z.ZodOptional<z.ZodBoolean>;
74
77
  sideload: z.ZodOptional<z.ZodObject<{
75
78
  gpuInference: z.ZodOptional<z.ZodBoolean>;
79
+ models: z.ZodOptional<z.ZodBoolean>;
80
+ modelsReasoning: z.ZodOptional<z.ZodBoolean>;
81
+ llmVenv: z.ZodOptional<z.ZodBoolean>;
76
82
  }, z.core.$strip>>;
77
83
  advanced: z.ZodOptional<z.ZodObject<{
78
84
  networkMode: z.ZodOptional<z.ZodObject<{
@@ -188,6 +194,9 @@ export declare const ProductTemplateMaterialsSchema: z.ZodObject<{
188
194
  requiresWorkingDirectory: z.ZodOptional<z.ZodBoolean>;
189
195
  sideload: z.ZodOptional<z.ZodObject<{
190
196
  gpuInference: z.ZodOptional<z.ZodBoolean>;
197
+ models: z.ZodOptional<z.ZodBoolean>;
198
+ modelsReasoning: z.ZodOptional<z.ZodBoolean>;
199
+ llmVenv: z.ZodOptional<z.ZodBoolean>;
191
200
  }, z.core.$strip>>;
192
201
  advanced: z.ZodOptional<z.ZodObject<{
193
202
  networkMode: z.ZodOptional<z.ZodObject<{
package/index.js CHANGED
@@ -115,15 +115,26 @@ export const ProductTemplateAllocatedPortSchema = z
115
115
  label: z.string().optional().meta({ description: "Human label, e.g. 'MoQ preview (WebTransport)'" }),
116
116
  })
117
117
  .meta({ id: "ProductTemplateAllocatedPort", outputId: "ProductTemplateAllocatedPort" });
118
- // CUDA sideload bundle needs (docker/SIDELOAD.md). Only `gpuInference` is
119
- // declared: `gpu-video` (NVENC/NVDEC) follows the GPU reservation automatically,
120
- // so it needs no declaration. The runner mounts the matching bundle only when
121
- // the image is slimmed AND the GPU is reserved; otherwise this is inert (a stock
122
- // image needs no bundle; inference without a bundle falls back to CPU).
118
+ // Sideload bundle needs (docker/SIDELOAD.md). `gpu-video` (NVENC/NVDEC) follows
119
+ // the GPU reservation automatically, so it needs no declaration. `gpuInference`
120
+ // gates the 1.58 GB CUDA bundle and is inert without a GPU reservation
121
+ // (inference falls back to CPU). The two model-weight declarations are
122
+ // GPU-independent: the weights ARE the feature, so a declaration is honoured on
123
+ // CPU-only hosts too. All of it is inert on a fat image (no `.refs`, nothing to
124
+ // mount).
123
125
  export const ProductTemplateSideloadSchema = z
124
126
  .object({
125
127
  gpuInference: z.boolean().optional().meta({
126
- description: "Deployment uses GPU-accelerated inference (ONNX NR-IQA/detection/VAD, GPU whisper). When the GPU is reserved on the host the runner mounts the gpu-inference CUDA bundle; otherwise inference falls back to CPU. gpu-video (NVENC/NVDEC) follows the GPU reservation automatically and needs no declaration.",
128
+ description: "Deployment uses GPU-accelerated inference (ONNX NR-IQA/reasoning local analysis/VAD, GPU whisper). When the GPU is reserved on the host the runner mounts the gpu-inference CUDA bundle; otherwise inference falls back to CPU. gpu-video (NVENC/NVDEC) follows the GPU reservation automatically and needs no declaration.",
129
+ }),
130
+ models: z.boolean().optional().meta({
131
+ description: "Deployment uses quality monitoring (NR-IQA). The runner mounts the arch-independent models bundle (the NR-IQA ONNX weights) — needed with or without a GPU; on a slimmed image the feature is unavailable without it.",
132
+ }),
133
+ modelsReasoning: z.boolean().optional().meta({
134
+ description: "Deployment uses AI reasoning local analysis (object detection, scene semantics, face identity, speaker identity, OCR). The runner mounts the arch-independent models-reasoning bundle (those ONNX weights) — needed with or without a GPU; on a slimmed image those tools are unavailable without it.",
135
+ }),
136
+ llmVenv: z.boolean().optional().meta({
137
+ description: "Deployment uses the remote LLM providers (OpenAI/Gemini/Claude — AI reasoning plan/evaluate, live evaluate). The runner mounts the per-arch llm-venv bundle (the provider Python SDKs) — needed with or without a GPU; on a slimmed image LLM provider nodes are unavailable without it.",
127
138
  }),
128
139
  })
129
140
  .meta({ id: "ProductTemplateSideload", outputId: "ProductTemplateSideload" });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@norskvideo/ctl-product-template-schema",
3
- "version": "0.1.9",
3
+ "version": "0.1.10",
4
4
  "type": "module",
5
5
  "exports": {
6
6
  ".": {