@qvac/sdk 0.10.2 → 0.12.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/NOTICE +1455 -29
- package/README.md +2 -0
- package/dist/client/api/cancel.d.ts +24 -32
- package/dist/client/api/cancel.js +58 -31
- package/dist/client/api/classify.d.ts +23 -0
- package/dist/client/api/classify.js +43 -0
- package/dist/client/api/client-request-id.d.ts +17 -0
- package/dist/client/api/client-request-id.js +27 -0
- package/dist/client/api/completion-stream.d.ts +1 -1
- package/dist/client/api/completion-stream.js +34 -3
- package/dist/client/api/diffusion.d.ts +46 -0
- package/dist/client/api/diffusion.js +50 -1
- package/dist/client/api/download-asset.d.ts +12 -2
- package/dist/client/api/download-asset.js +21 -3
- package/dist/client/api/embed.d.ts +8 -4
- package/dist/client/api/embed.js +14 -1
- package/dist/client/api/get-model-info.d.ts +1 -1
- package/dist/client/api/index.d.ts +5 -0
- package/dist/client/api/index.js +5 -0
- package/dist/client/api/load-model.d.ts +12 -4
- package/dist/client/api/load-model.js +49 -2
- package/dist/client/api/rag.d.ts +9 -3
- package/dist/client/api/rag.js +23 -3
- package/dist/client/api/transcribe.d.ts +23 -8
- package/dist/client/api/transcribe.js +69 -4
- package/dist/client/api/unload-model.d.ts +5 -2
- package/dist/client/api/unload-model.js +9 -4
- package/dist/client/api/upscale.d.ts +45 -0
- package/dist/client/api/upscale.js +99 -0
- package/dist/client/api/video.d.ts +64 -0
- package/dist/client/api/video.js +147 -0
- package/dist/client/api/vla-helpers.d.ts +45 -0
- package/dist/client/api/vla-helpers.js +130 -0
- package/dist/client/api/vla.d.ts +65 -0
- package/dist/client/api/vla.js +109 -0
- package/dist/client/config-loader/resolve-config.node.d.ts +16 -0
- package/dist/client/config-loader/resolve-config.node.js +77 -23
- package/dist/client/plugins-factory.d.ts +8 -0
- package/dist/client/plugins-factory.js +10 -0
- package/dist/client/rpc/bare-client.js +62 -66
- package/dist/client/rpc/ensure-worker-ready.d.ts +9 -0
- package/dist/client/rpc/ensure-worker-ready.js +17 -0
- package/dist/client/rpc/expo-rpc-client.js +2 -1
- package/dist/client/rpc/node-rpc-client.js +22 -8
- package/dist/client/rpc/rpc-client.d.ts +2 -2
- package/dist/client/rpc/rpc-client.js +10 -4
- package/dist/client/rpc/rpc-error.d.ts +9 -0
- package/dist/client/rpc/rpc-error.js +105 -0
- package/dist/commands/bundle/bare-pack.d.ts +13 -0
- package/dist/commands/bundle/bare-pack.js +54 -0
- package/dist/commands/bundle/constants.d.ts +7 -0
- package/dist/commands/bundle/constants.js +23 -0
- package/dist/commands/bundle/entry-gen.d.ts +2 -0
- package/dist/commands/bundle/entry-gen.js +48 -0
- package/dist/commands/bundle/index.d.ts +20 -0
- package/dist/commands/bundle/index.js +141 -0
- package/dist/commands/bundle/manifest.d.ts +21 -0
- package/dist/commands/bundle/manifest.js +193 -0
- package/dist/commands/bundle/plugins.d.ts +9 -0
- package/dist/commands/bundle/plugins.js +51 -0
- package/dist/commands/index.d.ts +5 -0
- package/dist/commands/index.js +2 -0
- package/dist/commands/verify/abi.d.ts +52 -0
- package/dist/commands/verify/abi.js +125 -0
- package/dist/commands/verify/addon-source.d.ts +43 -0
- package/dist/commands/verify/addon-source.js +75 -0
- package/dist/commands/verify/bundle-source.d.ts +12 -0
- package/dist/commands/verify/bundle-source.js +53 -0
- package/dist/commands/verify/index.d.ts +59 -0
- package/dist/commands/verify/index.js +371 -0
- package/dist/commands/verify/node-modules-source.d.ts +11 -0
- package/dist/commands/verify/node-modules-source.js +76 -0
- package/dist/commands/verify/prebuilds.d.ts +15 -0
- package/dist/commands/verify/prebuilds.js +39 -0
- package/dist/examples/cancel-by-request-id.d.ts +38 -0
- package/dist/examples/cancel-by-request-id.js +103 -0
- package/dist/examples/classification/classify-image.d.ts +2 -0
- package/dist/examples/classification/classify-image.js +23 -0
- package/dist/examples/diffusion-esrgan-upscale.d.ts +2 -0
- package/dist/examples/diffusion-esrgan-upscale.js +78 -0
- package/dist/examples/diffusion-txt2vid.d.ts +2 -0
- package/dist/examples/diffusion-txt2vid.js +81 -0
- package/dist/examples/download-with-cancel.js +10 -10
- package/dist/examples/embed-multi-gpu.d.ts +2 -0
- package/dist/examples/embed-multi-gpu.js +46 -0
- package/dist/examples/llamacpp-multi-gpu.d.ts +2 -0
- package/dist/examples/llamacpp-multi-gpu.js +57 -0
- package/dist/examples/plugins.js +3 -7
- package/dist/examples/rag/rag-hyperdb/cancellation.js +20 -17
- package/dist/examples/tools/llamacpp-tools-gemma4.d.ts +2 -0
- package/dist/examples/tools/llamacpp-tools-gemma4.js +73 -0
- package/dist/examples/tools/llamacpp-tools-qwen35.d.ts +2 -0
- package/dist/examples/tools/llamacpp-tools-qwen35.js +69 -0
- package/dist/examples/transcription/parakeet-ctc-filesystem.js +18 -12
- package/dist/examples/transcription/parakeet-microphone-record.js +7 -12
- package/dist/examples/transcription/parakeet-microphone-stream.d.ts +2 -0
- package/dist/examples/transcription/parakeet-microphone-stream.js +79 -0
- package/dist/examples/transcription/parakeet-sortformer-streaming.d.ts +2 -0
- package/dist/examples/transcription/parakeet-sortformer-streaming.js +121 -0
- package/dist/examples/transcription/parakeet-sortformer.js +58 -55
- package/dist/examples/transcription/parakeet-tdt-filesystem.js +18 -15
- package/dist/examples/transcription/whispercpp-microphone-conversation.d.ts +2 -0
- package/dist/examples/transcription/whispercpp-microphone-conversation.js +107 -0
- package/dist/examples/tts/chatterbox.js +7 -16
- package/dist/examples/tts/llm-to-tts-streaming.js +3 -10
- package/dist/examples/tts/supertonic-multilingual.js +4 -12
- package/dist/examples/tts/supertonic.js +5 -12
- package/dist/examples/vla-smolvla.d.ts +2 -0
- package/dist/examples/vla-smolvla.js +75 -0
- package/dist/examples/voice-assistant/voice-assistant.js +3 -10
- package/dist/expo/plugins/find-in-ancestor-node-modules.d.ts +14 -0
- package/dist/expo/plugins/find-in-ancestor-node-modules.js +24 -0
- package/dist/expo/plugins/get-project-root.d.ts +22 -0
- package/dist/expo/plugins/get-project-root.js +23 -0
- package/dist/expo/plugins/index.d.ts +4 -0
- package/dist/expo/plugins/index.js +4 -0
- package/dist/expo/plugins/resolve-sdk-package-dir.d.ts +9 -2
- package/dist/expo/plugins/resolve-sdk-package-dir.js +38 -11
- package/dist/expo/plugins/withDeviceInfo.js +2 -1
- package/dist/expo/plugins/withMobileBundle.d.ts +5 -4
- package/dist/expo/plugins/withMobileBundle.js +42 -58
- package/dist/index.d.ts +6 -2
- package/dist/index.js +23 -2
- package/dist/models/registry/models.d.ts +3725 -514
- package/dist/models/registry/models.js +7269 -3910
- package/dist/models/update-models/naming.js +22 -8
- package/dist/pear/pre.d.ts +3 -0
- package/dist/pear/pre.js +9 -2
- package/dist/schemas/cancel.d.ts +172 -28
- package/dist/schemas/cancel.js +120 -19
- package/dist/schemas/classification.d.ts +53 -0
- package/dist/schemas/classification.js +33 -0
- package/dist/schemas/common.d.ts +860 -1379
- package/dist/schemas/common.js +8 -1
- package/dist/schemas/completion-event.d.ts +17 -0
- package/dist/schemas/completion-event.js +12 -1
- package/dist/schemas/completion-stream.d.ts +16 -1
- package/dist/schemas/completion-stream.js +25 -7
- package/dist/schemas/download-asset.d.ts +25 -9
- package/dist/schemas/download-asset.js +17 -6
- package/dist/schemas/embed.d.ts +1 -0
- package/dist/schemas/embed.js +5 -0
- package/dist/schemas/engine-addon-map.d.ts +3 -0
- package/dist/schemas/engine-addon-map.js +18 -5
- package/dist/schemas/error.d.ts +31 -0
- package/dist/schemas/error.js +29 -1
- package/dist/schemas/finetune.d.ts +2 -0
- package/dist/schemas/finetune.js +5 -0
- package/dist/schemas/get-model-info.d.ts +10 -6
- package/dist/schemas/get-model-info.js +2 -0
- package/dist/schemas/index.d.ts +3 -0
- package/dist/schemas/index.js +3 -0
- package/dist/schemas/llamacpp-config.d.ts +64 -8
- package/dist/schemas/llamacpp-config.js +12 -0
- package/dist/schemas/load-model.d.ts +4644 -8605
- package/dist/schemas/load-model.js +90 -7
- package/dist/schemas/model-src-utils.d.ts +34 -14
- package/dist/schemas/model-types.d.ts +54 -14
- package/dist/schemas/model-types.js +28 -5
- package/dist/schemas/ocr.d.ts +8 -3
- package/dist/schemas/plugin.d.ts +60 -6
- package/dist/schemas/plugin.js +31 -5
- package/dist/schemas/rag.d.ts +9 -0
- package/dist/schemas/rag.js +17 -9
- package/dist/schemas/registry.d.ts +74 -30
- package/dist/schemas/registry.js +5 -0
- package/dist/schemas/reload-config.d.ts +34 -14
- package/dist/schemas/sdcpp-config.d.ts +445 -16
- package/dist/schemas/sdcpp-config.js +387 -26
- package/dist/schemas/sdk-config.d.ts +2431 -2723
- package/dist/schemas/sdk-config.js +16 -1
- package/dist/schemas/sdk-errors-client.d.ts +6 -0
- package/dist/schemas/sdk-errors-client.js +31 -1
- package/dist/schemas/sdk-errors-server.d.ts +8 -1
- package/dist/schemas/sdk-errors-server.js +45 -5
- package/dist/schemas/text-to-speech.d.ts +81 -698
- package/dist/schemas/text-to-speech.js +46 -19
- package/dist/schemas/transcription-config.d.ts +40 -229
- package/dist/schemas/transcription-config.js +76 -15
- package/dist/schemas/transcription.d.ts +108 -2
- package/dist/schemas/transcription.js +81 -0
- package/dist/schemas/translate.d.ts +2 -0
- package/dist/schemas/translate.js +13 -2
- package/dist/schemas/translation-config.d.ts +90 -40
- package/dist/schemas/unload-model.d.ts +2 -1
- package/dist/schemas/unload-model.js +4 -1
- package/dist/schemas/vla.d.ts +87 -0
- package/dist/schemas/vla.js +108 -0
- package/dist/scripts/run-unit-tests.js +22 -3
- package/dist/server/bare/ops/cancel.d.ts +27 -1
- package/dist/server/bare/ops/cancel.js +36 -10
- package/dist/server/bare/ops/embed.d.ts +3 -3
- package/dist/server/bare/ops/embed.js +144 -28
- package/dist/server/bare/ops/kv-cache-utils.d.ts +0 -7
- package/dist/server/bare/ops/kv-cache-utils.js +8 -47
- package/dist/server/bare/ops/transcribe.d.ts +11 -5
- package/dist/server/bare/ops/transcribe.js +230 -50
- package/dist/server/bare/ops/translate.d.ts +1 -1
- package/dist/server/bare/ops/translate.js +197 -88
- package/dist/server/bare/plugins/ggml-classification/ops/classify.d.ts +6 -0
- package/dist/server/bare/plugins/ggml-classification/ops/classify.js +30 -0
- package/dist/server/bare/plugins/ggml-classification/plugin.d.ts +32 -0
- package/dist/server/bare/plugins/ggml-classification/plugin.js +55 -0
- package/dist/server/bare/plugins/ggml-vla/ops/vla-hparams.d.ts +3 -0
- package/dist/server/bare/plugins/ggml-vla/ops/vla-hparams.js +12 -0
- package/dist/server/bare/plugins/ggml-vla/ops/vla-run.d.ts +3 -0
- package/dist/server/bare/plugins/ggml-vla/ops/vla-run.js +75 -0
- package/dist/server/bare/plugins/ggml-vla/plugin.d.ts +54 -0
- package/dist/server/bare/plugins/ggml-vla/plugin.js +57 -0
- package/dist/server/bare/plugins/index.d.ts +3 -1
- package/dist/server/bare/plugins/index.js +3 -1
- package/dist/server/bare/plugins/llamacpp-completion/ops/completion-stream.d.ts +12 -3
- package/dist/server/bare/plugins/llamacpp-completion/ops/completion-stream.js +173 -172
- package/dist/server/bare/plugins/llamacpp-completion/ops/context-overflow.d.ts +29 -0
- package/dist/server/bare/plugins/llamacpp-completion/ops/context-overflow.js +65 -0
- package/dist/server/bare/plugins/llamacpp-completion/ops/finetune.js +125 -21
- package/dist/server/bare/plugins/llamacpp-completion/ops/kv-cache-session.d.ts +154 -0
- package/dist/server/bare/plugins/llamacpp-completion/ops/kv-cache-session.js +448 -0
- package/dist/server/bare/plugins/llamacpp-completion/ops/kv-cache-state.d.ts +21 -73
- package/dist/server/bare/plugins/llamacpp-completion/ops/kv-cache-state.js +18 -101
- package/dist/server/bare/plugins/llamacpp-completion/plugin.d.ts +36 -3
- package/dist/server/bare/plugins/llamacpp-completion/plugin.js +183 -85
- package/dist/server/bare/plugins/llamacpp-completion/transform.d.ts +10 -0
- package/dist/server/bare/plugins/llamacpp-completion/transform.js +34 -0
- package/dist/server/bare/plugins/llamacpp-embedding/plugin.d.ts +7 -0
- package/dist/server/bare/plugins/llamacpp-embedding/plugin.js +10 -1
- package/dist/server/bare/plugins/nmtcpp-translation/plugin.d.ts +42 -15
- package/dist/server/bare/plugins/nmtcpp-translation/plugin.js +5 -1
- package/dist/server/bare/plugins/onnx-ocr/plugin.d.ts +8 -3
- package/dist/server/bare/plugins/onnx-ocr/plugin.js +3 -0
- package/dist/server/bare/plugins/parakeet-transcription/plugin.d.ts +73 -244
- package/dist/server/bare/plugins/parakeet-transcription/plugin.js +68 -96
- package/dist/server/bare/plugins/sdcpp-generation/ops/diffusion.js +8 -0
- package/dist/server/bare/plugins/sdcpp-generation/ops/upscale.d.ts +3 -0
- package/dist/server/bare/plugins/sdcpp-generation/ops/upscale.js +40 -0
- package/dist/server/bare/plugins/sdcpp-generation/ops/video.d.ts +3 -0
- package/dist/server/bare/plugins/sdcpp-generation/ops/video.js +199 -0
- package/dist/server/bare/plugins/sdcpp-generation/plugin.d.ts +288 -15
- package/dist/server/bare/plugins/sdcpp-generation/plugin.js +150 -7
- package/dist/server/bare/plugins/{onnx-tts → tts-ggml}/ops/text-to-speech-stream.js +2 -15
- package/dist/server/bare/plugins/{onnx-tts → tts-ggml}/ops/text-to-speech.js +2 -1
- package/dist/server/bare/plugins/tts-ggml/plugin.d.ts +75 -0
- package/dist/server/bare/plugins/tts-ggml/plugin.js +189 -0
- package/dist/server/bare/plugins/whispercpp-transcription/plugin.d.ts +47 -3
- package/dist/server/bare/plugins/whispercpp-transcription/plugin.js +61 -14
- package/dist/server/bare/rag-hyperdb/index.d.ts +1 -1
- package/dist/server/bare/rag-hyperdb/index.js +1 -1
- package/dist/server/bare/rag-hyperdb/rag-operation-manager.d.ts +26 -4
- package/dist/server/bare/rag-hyperdb/rag-operation-manager.js +65 -28
- package/dist/server/bare/registry/model-config-utils.js +7 -0
- package/dist/server/bare/runtime/disposable-scope.d.ts +36 -0
- package/dist/server/bare/runtime/disposable-scope.js +69 -0
- package/dist/server/bare/runtime/index.d.ts +8 -0
- package/dist/server/bare/runtime/index.js +3 -0
- package/dist/server/bare/runtime/request-context.d.ts +49 -0
- package/dist/server/bare/runtime/request-context.js +1 -0
- package/dist/server/bare/runtime/request-id.d.ts +12 -0
- package/dist/server/bare/runtime/request-id.js +14 -0
- package/dist/server/bare/runtime/request-registry-singleton.d.ts +4 -0
- package/dist/server/bare/runtime/request-registry-singleton.js +27 -0
- package/dist/server/bare/runtime/request-registry.d.ts +136 -0
- package/dist/server/bare/runtime/request-registry.js +297 -0
- package/dist/server/bare/runtime/with-request-context.d.ts +22 -0
- package/dist/server/bare/runtime/with-request-context.js +53 -0
- package/dist/server/bare/runtime-lifecycle.js +9 -9
- package/dist/server/bare/types/addon-responses.d.ts +12 -1
- package/dist/server/env.js +4 -1
- package/dist/server/plugins/index.d.ts +1 -1
- package/dist/server/plugins/index.js +1 -1
- package/dist/server/plugins/registry.d.ts +1 -0
- package/dist/server/plugins/registry.js +5 -0
- package/dist/server/rpc/handler-registry.js +30 -7
- package/dist/server/rpc/handler-selection.d.ts +9 -0
- package/dist/server/rpc/handler-selection.js +14 -0
- package/dist/server/rpc/handler-utils.js +5 -13
- package/dist/server/rpc/handlers/cancel-delegated.js +28 -31
- package/dist/server/rpc/handlers/cancelHandler.d.ts +30 -1
- package/dist/server/rpc/handlers/cancelHandler.js +54 -22
- package/dist/server/rpc/handlers/classify.d.ts +3 -0
- package/dist/server/rpc/handlers/classify.js +4 -0
- package/dist/server/rpc/handlers/delete-cache.d.ts +9 -0
- package/dist/server/rpc/handlers/delete-cache.js +13 -15
- package/dist/server/rpc/handlers/download-asset.js +133 -40
- package/dist/server/rpc/handlers/index.d.ts +4 -0
- package/dist/server/rpc/handlers/index.js +4 -0
- package/dist/server/rpc/handlers/load-model/download-manager.d.ts +60 -2
- package/dist/server/rpc/handlers/load-model/download-manager.js +141 -8
- package/dist/server/rpc/handlers/load-model/handler.js +216 -98
- package/dist/server/rpc/handlers/load-model/http.js +3 -3
- package/dist/server/rpc/handlers/load-model/hyperdrive.js +1 -1
- package/dist/server/rpc/handlers/load-model/registry.js +1 -1
- package/dist/server/rpc/handlers/load-model/resolve-session.d.ts +20 -1
- package/dist/server/rpc/handlers/load-model/resolve-session.js +6 -5
- package/dist/server/rpc/handlers/load-model/resolve.d.ts +3 -2
- package/dist/server/rpc/handlers/load-model/resolve.js +18 -6
- package/dist/server/rpc/handlers/load-model/types.d.ts +24 -0
- package/dist/server/rpc/handlers/rag.js +133 -15
- package/dist/server/rpc/handlers/upscale-stream.d.ts +3 -0
- package/dist/server/rpc/handlers/upscale-stream.js +4 -0
- package/dist/server/rpc/handlers/video-stream.d.ts +3 -0
- package/dist/server/rpc/handlers/video-stream.js +4 -0
- package/dist/server/rpc/profiling/operation-metrics.js +23 -0
- package/dist/server/utils/completion-normalizer.js +8 -0
- package/dist/server/utils/config-transform.js +1 -1
- package/dist/server/utils/tools/dialect.js +4 -0
- package/dist/server/utils/tools/parser.js +16 -1
- package/dist/server/utils/tools/parsers/gemma4native.d.ts +4 -0
- package/dist/server/utils/tools/parsers/gemma4native.js +60 -0
- package/dist/server/utils/tools/parsers/qwen35.d.ts +4 -0
- package/dist/server/utils/tools/parsers/qwen35.js +120 -0
- package/dist/server/worker.js +14 -11
- package/dist/utils/aggregate-events.d.ts +9 -0
- package/dist/utils/aggregate-events.js +18 -3
- package/dist/utils/decorate-promise.d.ts +34 -0
- package/dist/utils/decorate-promise.js +35 -0
- package/dist/utils/errors-client.d.ts +18 -0
- package/dist/utils/errors-client.js +31 -0
- package/dist/utils/errors-server.d.ts +115 -2
- package/dist/utils/errors-server.js +148 -3
- package/package.json +68 -77
- package/dist/server/bare/plugins/onnx-tts/plugin.d.ts +0 -490
- package/dist/server/bare/plugins/onnx-tts/plugin.js +0 -266
- package/dist/server/bare/plugins/onnx-tts/wav-helper.d.ts +0 -14
- package/dist/server/bare/plugins/onnx-tts/wav-helper.js +0 -107
- /package/dist/server/bare/plugins/{onnx-tts → tts-ggml}/ops/text-to-speech-stream.d.ts +0 -0
- /package/dist/server/bare/plugins/{onnx-tts → tts-ggml}/ops/text-to-speech.d.ts +0 -0
|
@@ -1,10 +1,23 @@
|
|
|
1
1
|
import { type CreateModelParams, type PluginModelResult, type ResolveContext, type ResolveResult, type SdcppConfig } from "../../../../schemas/index";
|
|
2
|
-
type DiffusionArtifactKey = "clipLModelPath" | "clipGModelPath" | "t5XxlModelPath" | "llmModelPath" | "vaeModelPath";
|
|
2
|
+
type DiffusionArtifactKey = "clipLModelPath" | "clipGModelPath" | "t5XxlModelPath" | "llmModelPath" | "vaeModelPath" | "highNoiseDiffusionModelPath" | "esrganModelPath";
|
|
3
|
+
/**
|
|
4
|
+
* Stable-diffusion.cpp plugin for image diffusion, upscaling, and Wan video.
|
|
5
|
+
*
|
|
6
|
+
* Video mode is supported on React Native, but the SDK-published Wan model
|
|
7
|
+
* set is too large to load on typical mobile devices. Mobile apps should
|
|
8
|
+
* pass a `delegate` to `loadModel(...)` to run video generation on a
|
|
9
|
+
* desktop peer instead of loading the model on-device.
|
|
10
|
+
*/
|
|
3
11
|
export declare const diffusionPlugin: {
|
|
4
12
|
modelType: "sdcpp-generation";
|
|
5
13
|
displayName: string;
|
|
6
14
|
addonPackage: "@qvac/diffusion-cpp";
|
|
7
15
|
loadConfigSchema: import("zod").ZodObject<{
|
|
16
|
+
mode: import("zod").ZodDefault<import("zod").ZodEnum<{
|
|
17
|
+
diffusion: "diffusion";
|
|
18
|
+
upscale: "upscale";
|
|
19
|
+
video: "video";
|
|
20
|
+
}>>;
|
|
8
21
|
threads: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
9
22
|
device: import("zod").ZodOptional<import("zod").ZodEnum<{
|
|
10
23
|
cpu: "cpu";
|
|
@@ -16,7 +29,6 @@ export declare const diffusionPlugin: {
|
|
|
16
29
|
v: "v";
|
|
17
30
|
edm_v: "edm_v";
|
|
18
31
|
flow: "flow";
|
|
19
|
-
flux_flow: "flux_flow";
|
|
20
32
|
flux2_flow: "flux2_flow";
|
|
21
33
|
}>>;
|
|
22
34
|
type: import("zod").ZodOptional<import("zod").ZodEnum<{
|
|
@@ -48,7 +60,14 @@ export declare const diffusionPlugin: {
|
|
|
48
60
|
clip_on_cpu: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
49
61
|
vae_on_cpu: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
50
62
|
vae_tiling: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
63
|
+
offload_to_cpu: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
51
64
|
flash_attn: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
65
|
+
diffusion_fa: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
66
|
+
lora_apply_mode: import("zod").ZodOptional<import("zod").ZodEnum<{
|
|
67
|
+
auto: "auto";
|
|
68
|
+
immediately: "immediately";
|
|
69
|
+
at_runtime: "at_runtime";
|
|
70
|
+
}>>;
|
|
52
71
|
verbosity: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
53
72
|
clipLModelSrc: import("zod").ZodOptional<import("zod").ZodUnion<readonly [import("zod").ZodString, import("zod").ZodObject<{
|
|
54
73
|
src: import("zod").ZodString;
|
|
@@ -63,21 +82,26 @@ export declare const diffusionPlugin: {
|
|
|
63
82
|
sha256Checksum: import("zod").ZodOptional<import("zod").ZodString>;
|
|
64
83
|
addon: import("zod").ZodOptional<import("zod").ZodUnion<readonly [import("zod").ZodEnum<{
|
|
65
84
|
embeddings: "embeddings";
|
|
85
|
+
diffusion: "diffusion";
|
|
86
|
+
tts: "tts";
|
|
87
|
+
ocr: "ocr";
|
|
88
|
+
vla: "vla";
|
|
66
89
|
"llamacpp-completion": "llamacpp-completion";
|
|
67
90
|
"whispercpp-transcription": "whispercpp-transcription";
|
|
68
91
|
"llamacpp-embedding": "llamacpp-embedding";
|
|
69
92
|
"nmtcpp-translation": "nmtcpp-translation";
|
|
70
93
|
"onnx-tts": "onnx-tts";
|
|
94
|
+
"tts-ggml": "tts-ggml";
|
|
71
95
|
"parakeet-transcription": "parakeet-transcription";
|
|
72
96
|
"onnx-ocr": "onnx-ocr";
|
|
73
97
|
"sdcpp-generation": "sdcpp-generation";
|
|
98
|
+
"ggml-vla": "ggml-vla";
|
|
99
|
+
"ggml-classification": "ggml-classification";
|
|
74
100
|
llm: "llm";
|
|
75
101
|
whisper: "whisper";
|
|
76
102
|
nmt: "nmt";
|
|
77
103
|
parakeet: "parakeet";
|
|
78
|
-
|
|
79
|
-
ocr: "ocr";
|
|
80
|
-
diffusion: "diffusion";
|
|
104
|
+
classification: "classification";
|
|
81
105
|
}>, import("zod").ZodLiteral<"vad">]>>;
|
|
82
106
|
}, import("zod/v4/core").$strip>]>>;
|
|
83
107
|
clipGModelSrc: import("zod").ZodOptional<import("zod").ZodUnion<readonly [import("zod").ZodString, import("zod").ZodObject<{
|
|
@@ -93,21 +117,26 @@ export declare const diffusionPlugin: {
|
|
|
93
117
|
sha256Checksum: import("zod").ZodOptional<import("zod").ZodString>;
|
|
94
118
|
addon: import("zod").ZodOptional<import("zod").ZodUnion<readonly [import("zod").ZodEnum<{
|
|
95
119
|
embeddings: "embeddings";
|
|
120
|
+
diffusion: "diffusion";
|
|
121
|
+
tts: "tts";
|
|
122
|
+
ocr: "ocr";
|
|
123
|
+
vla: "vla";
|
|
96
124
|
"llamacpp-completion": "llamacpp-completion";
|
|
97
125
|
"whispercpp-transcription": "whispercpp-transcription";
|
|
98
126
|
"llamacpp-embedding": "llamacpp-embedding";
|
|
99
127
|
"nmtcpp-translation": "nmtcpp-translation";
|
|
100
128
|
"onnx-tts": "onnx-tts";
|
|
129
|
+
"tts-ggml": "tts-ggml";
|
|
101
130
|
"parakeet-transcription": "parakeet-transcription";
|
|
102
131
|
"onnx-ocr": "onnx-ocr";
|
|
103
132
|
"sdcpp-generation": "sdcpp-generation";
|
|
133
|
+
"ggml-vla": "ggml-vla";
|
|
134
|
+
"ggml-classification": "ggml-classification";
|
|
104
135
|
llm: "llm";
|
|
105
136
|
whisper: "whisper";
|
|
106
137
|
nmt: "nmt";
|
|
107
138
|
parakeet: "parakeet";
|
|
108
|
-
|
|
109
|
-
ocr: "ocr";
|
|
110
|
-
diffusion: "diffusion";
|
|
139
|
+
classification: "classification";
|
|
111
140
|
}>, import("zod").ZodLiteral<"vad">]>>;
|
|
112
141
|
}, import("zod/v4/core").$strip>]>>;
|
|
113
142
|
t5XxlModelSrc: import("zod").ZodOptional<import("zod").ZodUnion<readonly [import("zod").ZodString, import("zod").ZodObject<{
|
|
@@ -123,21 +152,26 @@ export declare const diffusionPlugin: {
|
|
|
123
152
|
sha256Checksum: import("zod").ZodOptional<import("zod").ZodString>;
|
|
124
153
|
addon: import("zod").ZodOptional<import("zod").ZodUnion<readonly [import("zod").ZodEnum<{
|
|
125
154
|
embeddings: "embeddings";
|
|
155
|
+
diffusion: "diffusion";
|
|
156
|
+
tts: "tts";
|
|
157
|
+
ocr: "ocr";
|
|
158
|
+
vla: "vla";
|
|
126
159
|
"llamacpp-completion": "llamacpp-completion";
|
|
127
160
|
"whispercpp-transcription": "whispercpp-transcription";
|
|
128
161
|
"llamacpp-embedding": "llamacpp-embedding";
|
|
129
162
|
"nmtcpp-translation": "nmtcpp-translation";
|
|
130
163
|
"onnx-tts": "onnx-tts";
|
|
164
|
+
"tts-ggml": "tts-ggml";
|
|
131
165
|
"parakeet-transcription": "parakeet-transcription";
|
|
132
166
|
"onnx-ocr": "onnx-ocr";
|
|
133
167
|
"sdcpp-generation": "sdcpp-generation";
|
|
168
|
+
"ggml-vla": "ggml-vla";
|
|
169
|
+
"ggml-classification": "ggml-classification";
|
|
134
170
|
llm: "llm";
|
|
135
171
|
whisper: "whisper";
|
|
136
172
|
nmt: "nmt";
|
|
137
173
|
parakeet: "parakeet";
|
|
138
|
-
|
|
139
|
-
ocr: "ocr";
|
|
140
|
-
diffusion: "diffusion";
|
|
174
|
+
classification: "classification";
|
|
141
175
|
}>, import("zod").ZodLiteral<"vad">]>>;
|
|
142
176
|
}, import("zod/v4/core").$strip>]>>;
|
|
143
177
|
llmModelSrc: import("zod").ZodOptional<import("zod").ZodUnion<readonly [import("zod").ZodString, import("zod").ZodObject<{
|
|
@@ -153,21 +187,26 @@ export declare const diffusionPlugin: {
|
|
|
153
187
|
sha256Checksum: import("zod").ZodOptional<import("zod").ZodString>;
|
|
154
188
|
addon: import("zod").ZodOptional<import("zod").ZodUnion<readonly [import("zod").ZodEnum<{
|
|
155
189
|
embeddings: "embeddings";
|
|
190
|
+
diffusion: "diffusion";
|
|
191
|
+
tts: "tts";
|
|
192
|
+
ocr: "ocr";
|
|
193
|
+
vla: "vla";
|
|
156
194
|
"llamacpp-completion": "llamacpp-completion";
|
|
157
195
|
"whispercpp-transcription": "whispercpp-transcription";
|
|
158
196
|
"llamacpp-embedding": "llamacpp-embedding";
|
|
159
197
|
"nmtcpp-translation": "nmtcpp-translation";
|
|
160
198
|
"onnx-tts": "onnx-tts";
|
|
199
|
+
"tts-ggml": "tts-ggml";
|
|
161
200
|
"parakeet-transcription": "parakeet-transcription";
|
|
162
201
|
"onnx-ocr": "onnx-ocr";
|
|
163
202
|
"sdcpp-generation": "sdcpp-generation";
|
|
203
|
+
"ggml-vla": "ggml-vla";
|
|
204
|
+
"ggml-classification": "ggml-classification";
|
|
164
205
|
llm: "llm";
|
|
165
206
|
whisper: "whisper";
|
|
166
207
|
nmt: "nmt";
|
|
167
208
|
parakeet: "parakeet";
|
|
168
|
-
|
|
169
|
-
ocr: "ocr";
|
|
170
|
-
diffusion: "diffusion";
|
|
209
|
+
classification: "classification";
|
|
171
210
|
}>, import("zod").ZodLiteral<"vad">]>>;
|
|
172
211
|
}, import("zod/v4/core").$strip>]>>;
|
|
173
212
|
vaeModelSrc: import("zod").ZodOptional<import("zod").ZodUnion<readonly [import("zod").ZodString, import("zod").ZodObject<{
|
|
@@ -183,23 +222,105 @@ export declare const diffusionPlugin: {
|
|
|
183
222
|
sha256Checksum: import("zod").ZodOptional<import("zod").ZodString>;
|
|
184
223
|
addon: import("zod").ZodOptional<import("zod").ZodUnion<readonly [import("zod").ZodEnum<{
|
|
185
224
|
embeddings: "embeddings";
|
|
225
|
+
diffusion: "diffusion";
|
|
226
|
+
tts: "tts";
|
|
227
|
+
ocr: "ocr";
|
|
228
|
+
vla: "vla";
|
|
186
229
|
"llamacpp-completion": "llamacpp-completion";
|
|
187
230
|
"whispercpp-transcription": "whispercpp-transcription";
|
|
188
231
|
"llamacpp-embedding": "llamacpp-embedding";
|
|
189
232
|
"nmtcpp-translation": "nmtcpp-translation";
|
|
190
233
|
"onnx-tts": "onnx-tts";
|
|
234
|
+
"tts-ggml": "tts-ggml";
|
|
191
235
|
"parakeet-transcription": "parakeet-transcription";
|
|
192
236
|
"onnx-ocr": "onnx-ocr";
|
|
193
237
|
"sdcpp-generation": "sdcpp-generation";
|
|
238
|
+
"ggml-vla": "ggml-vla";
|
|
239
|
+
"ggml-classification": "ggml-classification";
|
|
194
240
|
llm: "llm";
|
|
195
241
|
whisper: "whisper";
|
|
196
242
|
nmt: "nmt";
|
|
197
243
|
parakeet: "parakeet";
|
|
244
|
+
classification: "classification";
|
|
245
|
+
}>, import("zod").ZodLiteral<"vad">]>>;
|
|
246
|
+
}, import("zod/v4/core").$strip>]>>;
|
|
247
|
+
highNoiseDiffusionModelSrc: import("zod").ZodOptional<import("zod").ZodUnion<readonly [import("zod").ZodString, import("zod").ZodObject<{
|
|
248
|
+
src: import("zod").ZodString;
|
|
249
|
+
name: import("zod").ZodOptional<import("zod").ZodString>;
|
|
250
|
+
modelId: import("zod").ZodOptional<import("zod").ZodString>;
|
|
251
|
+
registryPath: import("zod").ZodOptional<import("zod").ZodString>;
|
|
252
|
+
registrySource: import("zod").ZodOptional<import("zod").ZodString>;
|
|
253
|
+
blobCoreKey: import("zod").ZodOptional<import("zod").ZodString>;
|
|
254
|
+
blobIndex: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
255
|
+
engine: import("zod").ZodOptional<import("zod").ZodString>;
|
|
256
|
+
expectedSize: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
257
|
+
sha256Checksum: import("zod").ZodOptional<import("zod").ZodString>;
|
|
258
|
+
addon: import("zod").ZodOptional<import("zod").ZodUnion<readonly [import("zod").ZodEnum<{
|
|
259
|
+
embeddings: "embeddings";
|
|
260
|
+
diffusion: "diffusion";
|
|
198
261
|
tts: "tts";
|
|
199
262
|
ocr: "ocr";
|
|
200
|
-
|
|
263
|
+
vla: "vla";
|
|
264
|
+
"llamacpp-completion": "llamacpp-completion";
|
|
265
|
+
"whispercpp-transcription": "whispercpp-transcription";
|
|
266
|
+
"llamacpp-embedding": "llamacpp-embedding";
|
|
267
|
+
"nmtcpp-translation": "nmtcpp-translation";
|
|
268
|
+
"onnx-tts": "onnx-tts";
|
|
269
|
+
"tts-ggml": "tts-ggml";
|
|
270
|
+
"parakeet-transcription": "parakeet-transcription";
|
|
271
|
+
"onnx-ocr": "onnx-ocr";
|
|
272
|
+
"sdcpp-generation": "sdcpp-generation";
|
|
273
|
+
"ggml-vla": "ggml-vla";
|
|
274
|
+
"ggml-classification": "ggml-classification";
|
|
275
|
+
llm: "llm";
|
|
276
|
+
whisper: "whisper";
|
|
277
|
+
nmt: "nmt";
|
|
278
|
+
parakeet: "parakeet";
|
|
279
|
+
classification: "classification";
|
|
201
280
|
}>, import("zod").ZodLiteral<"vad">]>>;
|
|
202
281
|
}, import("zod/v4/core").$strip>]>>;
|
|
282
|
+
upscaler: import("zod").ZodOptional<import("zod").ZodObject<{
|
|
283
|
+
type: import("zod").ZodOptional<import("zod").ZodLiteral<"esrgan">>;
|
|
284
|
+
model_src: import("zod").ZodOptional<import("zod").ZodUnion<readonly [import("zod").ZodString, import("zod").ZodObject<{
|
|
285
|
+
src: import("zod").ZodString;
|
|
286
|
+
name: import("zod").ZodOptional<import("zod").ZodString>;
|
|
287
|
+
modelId: import("zod").ZodOptional<import("zod").ZodString>;
|
|
288
|
+
registryPath: import("zod").ZodOptional<import("zod").ZodString>;
|
|
289
|
+
registrySource: import("zod").ZodOptional<import("zod").ZodString>;
|
|
290
|
+
blobCoreKey: import("zod").ZodOptional<import("zod").ZodString>;
|
|
291
|
+
blobIndex: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
292
|
+
engine: import("zod").ZodOptional<import("zod").ZodString>;
|
|
293
|
+
expectedSize: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
294
|
+
sha256Checksum: import("zod").ZodOptional<import("zod").ZodString>;
|
|
295
|
+
addon: import("zod").ZodOptional<import("zod").ZodUnion<readonly [import("zod").ZodEnum<{
|
|
296
|
+
embeddings: "embeddings";
|
|
297
|
+
diffusion: "diffusion";
|
|
298
|
+
tts: "tts";
|
|
299
|
+
ocr: "ocr";
|
|
300
|
+
vla: "vla";
|
|
301
|
+
"llamacpp-completion": "llamacpp-completion";
|
|
302
|
+
"whispercpp-transcription": "whispercpp-transcription";
|
|
303
|
+
"llamacpp-embedding": "llamacpp-embedding";
|
|
304
|
+
"nmtcpp-translation": "nmtcpp-translation";
|
|
305
|
+
"onnx-tts": "onnx-tts";
|
|
306
|
+
"tts-ggml": "tts-ggml";
|
|
307
|
+
"parakeet-transcription": "parakeet-transcription";
|
|
308
|
+
"onnx-ocr": "onnx-ocr";
|
|
309
|
+
"sdcpp-generation": "sdcpp-generation";
|
|
310
|
+
"ggml-vla": "ggml-vla";
|
|
311
|
+
"ggml-classification": "ggml-classification";
|
|
312
|
+
llm: "llm";
|
|
313
|
+
whisper: "whisper";
|
|
314
|
+
nmt: "nmt";
|
|
315
|
+
parakeet: "parakeet";
|
|
316
|
+
classification: "classification";
|
|
317
|
+
}>, import("zod").ZodLiteral<"vad">]>>;
|
|
318
|
+
}, import("zod/v4/core").$strip>]>>;
|
|
319
|
+
tile_size: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
320
|
+
direct: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
321
|
+
offload_params_to_cpu: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
322
|
+
threads: import("zod").ZodOptional<import("zod").ZodUnion<readonly [import("zod").ZodLiteral<-1>, import("zod").ZodNumber]>>;
|
|
323
|
+
}, import("zod/v4/core").$strict>>;
|
|
203
324
|
}, import("zod/v4/core").$strip>;
|
|
204
325
|
resolveConfig(cfg: SdcppConfig, ctx: ResolveContext): Promise<ResolveResult<SdcppConfig, DiffusionArtifactKey>>;
|
|
205
326
|
createModel(params: CreateModelParams): PluginModelResult;
|
|
@@ -248,7 +369,14 @@ export declare const diffusionPlugin: {
|
|
|
248
369
|
vae_tiling: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
249
370
|
cache_preset: import("zod").ZodOptional<import("zod").ZodString>;
|
|
250
371
|
init_image: import("zod").ZodOptional<import("zod").ZodString>;
|
|
372
|
+
init_images: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString>>;
|
|
373
|
+
increase_ref_index: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
374
|
+
auto_resize_ref_image: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
375
|
+
lora: import("zod").ZodOptional<import("zod").ZodString>;
|
|
251
376
|
strength: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
377
|
+
upscale: import("zod").ZodOptional<import("zod").ZodUnion<readonly [import("zod").ZodBoolean, import("zod").ZodObject<{
|
|
378
|
+
repeats: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
379
|
+
}, import("zod/v4/core").$strict>]>>;
|
|
252
380
|
}, import("zod/v4/core").$strip>, import("zod").ZodObject<{
|
|
253
381
|
type: import("zod").ZodLiteral<"diffusionStream">;
|
|
254
382
|
step: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
@@ -271,6 +399,151 @@ export declare const diffusionPlugin: {
|
|
|
271
399
|
seed: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
272
400
|
}, import("zod/v4/core").$strip>>;
|
|
273
401
|
}, import("zod/v4/core").$strip>>;
|
|
402
|
+
videoStream: import("../../../../schemas/index").PluginHandlerDefinition<import("zod").ZodObject<{
|
|
403
|
+
modelId: import("zod").ZodString;
|
|
404
|
+
requestId: import("zod").ZodOptional<import("zod").ZodString>;
|
|
405
|
+
mode: import("zod").ZodEnum<{
|
|
406
|
+
txt2vid: "txt2vid";
|
|
407
|
+
}>;
|
|
408
|
+
prompt: import("zod").ZodString;
|
|
409
|
+
negative_prompt: import("zod").ZodOptional<import("zod").ZodString>;
|
|
410
|
+
width: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
411
|
+
height: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
412
|
+
video_frames: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
413
|
+
fps: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
414
|
+
seed: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
415
|
+
steps: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
416
|
+
sampling_method: import("zod").ZodOptional<import("zod").ZodEnum<{
|
|
417
|
+
euler: "euler";
|
|
418
|
+
euler_a: "euler_a";
|
|
419
|
+
heun: "heun";
|
|
420
|
+
dpm2: "dpm2";
|
|
421
|
+
"dpm++2m": "dpm++2m";
|
|
422
|
+
"dpm++2mv2": "dpm++2mv2";
|
|
423
|
+
"dpm++2s_a": "dpm++2s_a";
|
|
424
|
+
lcm: "lcm";
|
|
425
|
+
ipndm: "ipndm";
|
|
426
|
+
ipndm_v: "ipndm_v";
|
|
427
|
+
ddim_trailing: "ddim_trailing";
|
|
428
|
+
tcd: "tcd";
|
|
429
|
+
res_multistep: "res_multistep";
|
|
430
|
+
res_2s: "res_2s";
|
|
431
|
+
}>>;
|
|
432
|
+
scheduler: import("zod").ZodOptional<import("zod").ZodEnum<{
|
|
433
|
+
lcm: "lcm";
|
|
434
|
+
discrete: "discrete";
|
|
435
|
+
karras: "karras";
|
|
436
|
+
exponential: "exponential";
|
|
437
|
+
ays: "ays";
|
|
438
|
+
gits: "gits";
|
|
439
|
+
sgm_uniform: "sgm_uniform";
|
|
440
|
+
simple: "simple";
|
|
441
|
+
smoothstep: "smoothstep";
|
|
442
|
+
kl_optimal: "kl_optimal";
|
|
443
|
+
bong_tangent: "bong_tangent";
|
|
444
|
+
}>>;
|
|
445
|
+
cfg_scale: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
446
|
+
flow_shift: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
447
|
+
high_noise_steps: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
448
|
+
high_noise_sampler: import("zod").ZodOptional<import("zod").ZodEnum<{
|
|
449
|
+
euler: "euler";
|
|
450
|
+
euler_a: "euler_a";
|
|
451
|
+
heun: "heun";
|
|
452
|
+
dpm2: "dpm2";
|
|
453
|
+
"dpm++2m": "dpm++2m";
|
|
454
|
+
"dpm++2mv2": "dpm++2mv2";
|
|
455
|
+
"dpm++2s_a": "dpm++2s_a";
|
|
456
|
+
lcm: "lcm";
|
|
457
|
+
ipndm: "ipndm";
|
|
458
|
+
ipndm_v: "ipndm_v";
|
|
459
|
+
ddim_trailing: "ddim_trailing";
|
|
460
|
+
tcd: "tcd";
|
|
461
|
+
res_multistep: "res_multistep";
|
|
462
|
+
res_2s: "res_2s";
|
|
463
|
+
}>>;
|
|
464
|
+
high_noise_scheduler: import("zod").ZodOptional<import("zod").ZodEnum<{
|
|
465
|
+
lcm: "lcm";
|
|
466
|
+
discrete: "discrete";
|
|
467
|
+
karras: "karras";
|
|
468
|
+
exponential: "exponential";
|
|
469
|
+
ays: "ays";
|
|
470
|
+
gits: "gits";
|
|
471
|
+
sgm_uniform: "sgm_uniform";
|
|
472
|
+
simple: "simple";
|
|
473
|
+
smoothstep: "smoothstep";
|
|
474
|
+
kl_optimal: "kl_optimal";
|
|
475
|
+
bong_tangent: "bong_tangent";
|
|
476
|
+
}>>;
|
|
477
|
+
high_noise_cfg_scale: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
478
|
+
high_noise_flow_shift: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
479
|
+
moe_boundary: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
480
|
+
vace_strength: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
481
|
+
control_frames: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString>>;
|
|
482
|
+
vae_tiling: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
483
|
+
vae_tile_size: import("zod").ZodOptional<import("zod").ZodUnion<readonly [import("zod").ZodNumber, import("zod").ZodString]>>;
|
|
484
|
+
vae_tile_overlap: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
485
|
+
cache_mode: import("zod").ZodOptional<import("zod").ZodEnum<{
|
|
486
|
+
disabled: "disabled";
|
|
487
|
+
easycache: "easycache";
|
|
488
|
+
ucache: "ucache";
|
|
489
|
+
dbcache: "dbcache";
|
|
490
|
+
taylorseer: "taylorseer";
|
|
491
|
+
"cache-dit": "cache-dit";
|
|
492
|
+
}>>;
|
|
493
|
+
cache_preset: import("zod").ZodOptional<import("zod").ZodString>;
|
|
494
|
+
cache_threshold: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
495
|
+
}, import("zod/v4/core").$strip>, import("zod").ZodObject<{
|
|
496
|
+
type: import("zod").ZodLiteral<"videoStream">;
|
|
497
|
+
step: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
498
|
+
totalSteps: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
499
|
+
elapsedMs: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
500
|
+
data: import("zod").ZodOptional<import("zod").ZodString>;
|
|
501
|
+
outputIndex: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
502
|
+
done: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
503
|
+
stats: import("zod").ZodOptional<import("zod").ZodObject<{
|
|
504
|
+
seed: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
505
|
+
modelLoadMs: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
506
|
+
generationMs: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
507
|
+
totalGenerationMs: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
508
|
+
totalWallMs: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
509
|
+
totalSteps: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
510
|
+
totalGenerations: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
511
|
+
totalImages: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
512
|
+
totalPixels: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
513
|
+
width: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
514
|
+
height: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
515
|
+
totalVideos: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
516
|
+
totalVideoFrames: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
517
|
+
videoFrames: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
518
|
+
fps: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
519
|
+
}, import("zod/v4/core").$strip>>;
|
|
520
|
+
}, import("zod/v4/core").$strip>>;
|
|
521
|
+
upscaleStream: import("../../../../schemas/index").PluginHandlerDefinition<import("zod").ZodObject<{
|
|
522
|
+
modelId: import("zod").ZodString;
|
|
523
|
+
image: import("zod").ZodString;
|
|
524
|
+
repeats: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
525
|
+
}, import("zod/v4/core").$strip>, import("zod").ZodObject<{
|
|
526
|
+
type: import("zod").ZodLiteral<"upscaleStream">;
|
|
527
|
+
data: import("zod").ZodOptional<import("zod").ZodString>;
|
|
528
|
+
outputIndex: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
529
|
+
done: import("zod").ZodOptional<import("zod").ZodBoolean>;
|
|
530
|
+
stats: import("zod").ZodOptional<import("zod").ZodObject<{
|
|
531
|
+
modelLoadMs: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
532
|
+
upscaleMs: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
533
|
+
totalUpscaleMs: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
534
|
+
totalWallMs: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
535
|
+
totalUpscales: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
536
|
+
totalImages: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
537
|
+
totalPixels: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
538
|
+
width: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
539
|
+
height: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
540
|
+
repeats: import("zod").ZodOptional<import("zod").ZodNumber>;
|
|
541
|
+
backendDevice: import("zod").ZodOptional<import("zod").ZodEnum<{
|
|
542
|
+
cpu: "cpu";
|
|
543
|
+
gpu: "gpu";
|
|
544
|
+
}>>;
|
|
545
|
+
}, import("zod/v4/core").$strip>>;
|
|
546
|
+
}, import("zod/v4/core").$strip>>;
|
|
274
547
|
};
|
|
275
548
|
logging: {
|
|
276
549
|
module: import("@qvac/diffusion-cpp/addonLogging").AddonLogging;
|
|
@@ -1,27 +1,88 @@
|
|
|
1
|
-
import ImgStableDiffusion, {} from "@qvac/diffusion-cpp";
|
|
1
|
+
import ImgStableDiffusion, { EsrganUpscaler, VideoStableDiffusion, } from "@qvac/diffusion-cpp";
|
|
2
2
|
import addonLogging from "@qvac/diffusion-cpp/addonLogging.js";
|
|
3
|
-
import { definePlugin, defineHandler, sdcppConfigSchema, diffusionRequestSchema, diffusionStreamResponseSchema, ModelType, ADDON_DIFFUSION, } from "../../../../schemas/index.js";
|
|
3
|
+
import { definePlugin, defineHandler, sdcppConfigSchema, diffusionRequestSchema, diffusionStreamResponseSchema, videoRequestSchema, videoStreamResponseSchema, upscaleRequestSchema, upscaleStreamResponseSchema, ModelType, ADDON_DIFFUSION, } from "../../../../schemas/index.js";
|
|
4
4
|
import { createStreamLogger, registerAddonLogger } from "../../../../logging/index.js";
|
|
5
|
+
import { ModelLoadFailedError } from "../../../../utils/errors-server.js";
|
|
5
6
|
import { diffusion } from "./ops/diffusion.js";
|
|
7
|
+
import { video } from "./ops/video.js";
|
|
8
|
+
import { upscale } from "./ops/upscale.js";
|
|
9
|
+
// Single source of truth for `SdcppConfig.upscaler.*` → addon-config key
|
|
10
|
+
// mapping. Used by both the diffusion-mode (post-generation upscaler) and the
|
|
11
|
+
// standalone-upscale-mode branches; keeping the mapping in one place avoids
|
|
12
|
+
// drift if `@qvac/diffusion-cpp` ever adds or renames an `upscaler_*` key.
|
|
13
|
+
function flattenUpscalerKeys(upscaler) {
|
|
14
|
+
if (!upscaler)
|
|
15
|
+
return {};
|
|
16
|
+
return {
|
|
17
|
+
...(upscaler.tile_size !== undefined && {
|
|
18
|
+
upscaler_tile_size: upscaler.tile_size,
|
|
19
|
+
}),
|
|
20
|
+
...(upscaler.direct !== undefined && {
|
|
21
|
+
upscaler_direct: upscaler.direct,
|
|
22
|
+
}),
|
|
23
|
+
...(upscaler.offload_params_to_cpu !== undefined && {
|
|
24
|
+
upscaler_offload_params_to_cpu: upscaler.offload_params_to_cpu,
|
|
25
|
+
}),
|
|
26
|
+
...(upscaler.threads !== undefined && {
|
|
27
|
+
upscaler_threads: upscaler.threads,
|
|
28
|
+
}),
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
// `mode: "upscale"` builds an EsrganUpscaler directly (not via SdCtx), so the
|
|
32
|
+
// top-level `device` field has to be forwarded explicitly — it is not part of
|
|
33
|
+
// the `upscaler.*` block.
|
|
34
|
+
function toEsrganAddonConfig(config) {
|
|
35
|
+
return {
|
|
36
|
+
...flattenUpscalerKeys(config.upscaler),
|
|
37
|
+
...(config.device !== undefined && { device: config.device }),
|
|
38
|
+
...(config.verbosity !== undefined && { verbosity: config.verbosity }),
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Stable-diffusion.cpp plugin for image diffusion, upscaling, and Wan video.
|
|
43
|
+
*
|
|
44
|
+
* Video mode is supported on React Native, but the SDK-published Wan model
|
|
45
|
+
* set is too large to load on typical mobile devices. Mobile apps should
|
|
46
|
+
* pass a `delegate` to `loadModel(...)` to run video generation on a
|
|
47
|
+
* desktop peer instead of loading the model on-device.
|
|
48
|
+
*/
|
|
6
49
|
export const diffusionPlugin = definePlugin({
|
|
7
50
|
modelType: ModelType.sdcppGeneration,
|
|
8
|
-
displayName: "Image Generation (stable-diffusion.cpp)",
|
|
51
|
+
displayName: "Image Generation & Upscaling (stable-diffusion.cpp)",
|
|
9
52
|
addonPackage: ADDON_DIFFUSION,
|
|
10
53
|
loadConfigSchema: sdcppConfigSchema,
|
|
11
54
|
async resolveConfig(cfg, ctx) {
|
|
12
|
-
|
|
13
|
-
|
|
55
|
+
// Standalone-upscaler mode never references auxiliary models: the primary
|
|
56
|
+
// modelSrc IS the ESRGAN file. Skip resolution to avoid downloading
|
|
57
|
+
// unused encoders/VAEs and to keep load fast.
|
|
58
|
+
if (cfg.mode === "upscale") {
|
|
59
|
+
return { config: cfg };
|
|
60
|
+
}
|
|
61
|
+
const { clipLModelSrc, clipGModelSrc, t5XxlModelSrc, llmModelSrc, vaeModelSrc, highNoiseDiffusionModelSrc, upscaler, ...rest } = cfg;
|
|
62
|
+
// Video jobs do not apply ESRGAN so we drop the whole `upscaler` object.
|
|
63
|
+
const effectiveUpscaler = cfg.mode === "video" ? undefined : upscaler;
|
|
64
|
+
const { model_src: esrganModelSrc, ...upscalerRuntime } = effectiveUpscaler ?? {};
|
|
65
|
+
const runtimeConfig = {
|
|
66
|
+
...rest,
|
|
67
|
+
...(effectiveUpscaler && { upscaler: upscalerRuntime }),
|
|
68
|
+
};
|
|
69
|
+
const sources = {
|
|
70
|
+
clipLModelSrc, clipGModelSrc, t5XxlModelSrc,
|
|
71
|
+
llmModelSrc, vaeModelSrc, highNoiseDiffusionModelSrc, esrganModelSrc,
|
|
72
|
+
};
|
|
14
73
|
const hasSources = Object.values(sources).some(Boolean);
|
|
15
74
|
if (!hasSources) {
|
|
16
75
|
return { config: runtimeConfig };
|
|
17
76
|
}
|
|
18
77
|
const resolve = ctx.resolveModelPath;
|
|
19
|
-
const [clipLModelPath, clipGModelPath, t5XxlModelPath, llmModelPath, vaeModelPath] = await Promise.all([
|
|
78
|
+
const [clipLModelPath, clipGModelPath, t5XxlModelPath, llmModelPath, vaeModelPath, highNoiseDiffusionModelPath, esrganModelPath,] = await Promise.all([
|
|
20
79
|
clipLModelSrc ? resolve(clipLModelSrc) : undefined,
|
|
21
80
|
clipGModelSrc ? resolve(clipGModelSrc) : undefined,
|
|
22
81
|
t5XxlModelSrc ? resolve(t5XxlModelSrc) : undefined,
|
|
23
82
|
llmModelSrc ? resolve(llmModelSrc) : undefined,
|
|
24
83
|
vaeModelSrc ? resolve(vaeModelSrc) : undefined,
|
|
84
|
+
highNoiseDiffusionModelSrc ? resolve(highNoiseDiffusionModelSrc) : undefined,
|
|
85
|
+
esrganModelSrc ? resolve(esrganModelSrc) : undefined,
|
|
25
86
|
]);
|
|
26
87
|
return {
|
|
27
88
|
config: runtimeConfig,
|
|
@@ -31,14 +92,67 @@ export const diffusionPlugin = definePlugin({
|
|
|
31
92
|
...(t5XxlModelPath && { t5XxlModelPath }),
|
|
32
93
|
...(llmModelPath && { llmModelPath }),
|
|
33
94
|
...(vaeModelPath && { vaeModelPath }),
|
|
95
|
+
...(highNoiseDiffusionModelPath && { highNoiseDiffusionModelPath }),
|
|
96
|
+
...(esrganModelPath && { esrganModelPath }),
|
|
34
97
|
},
|
|
35
98
|
};
|
|
36
99
|
},
|
|
37
100
|
createModel(params) {
|
|
38
101
|
const { modelId, modelPath, modelConfig, artifacts } = params;
|
|
39
102
|
const config = (modelConfig ?? {});
|
|
103
|
+
// In diffusion mode the ESRGAN file (when post-generation upscale is
|
|
104
|
+
// wanted) must come from upscaler.model_src — the primary modelPath is
|
|
105
|
+
// the main diffusion checkpoint. Reject early with a clear error
|
|
106
|
+
// instead of letting the native addon fail mid-load. Done before any
|
|
107
|
+
// logger / native side-effects so callers can recover cleanly.
|
|
108
|
+
if (config.mode === "diffusion" &&
|
|
109
|
+
config.upscaler !== undefined &&
|
|
110
|
+
!artifacts?.["esrganModelPath"]) {
|
|
111
|
+
throw new ModelLoadFailedError("modelConfig.upscaler.model_src is required when modelConfig.upscaler " +
|
|
112
|
+
"is set in diffusion mode. Provide the ESRGAN model, omit the " +
|
|
113
|
+
"upscaler block, or switch to modelConfig.mode = 'upscale' to load " +
|
|
114
|
+
"a standalone upscaler.");
|
|
115
|
+
}
|
|
40
116
|
const logger = createStreamLogger(modelId, ModelType.sdcppGeneration);
|
|
41
117
|
registerAddonLogger(modelId, ModelType.sdcppGeneration, logger);
|
|
118
|
+
if (config.mode === "upscale") {
|
|
119
|
+
const model = new EsrganUpscaler({
|
|
120
|
+
files: { esrgan: modelPath },
|
|
121
|
+
config: toEsrganAddonConfig(config),
|
|
122
|
+
logger,
|
|
123
|
+
opts: { stats: true },
|
|
124
|
+
});
|
|
125
|
+
return { model };
|
|
126
|
+
}
|
|
127
|
+
if (config.mode === "video") {
|
|
128
|
+
if (!artifacts?.["t5XxlModelPath"]) {
|
|
129
|
+
throw new ModelLoadFailedError("modelConfig.t5XxlModelSrc is required in video mode. " +
|
|
130
|
+
"Provide the Wan text encoder model before loading the video pipeline.");
|
|
131
|
+
}
|
|
132
|
+
if (!artifacts?.["vaeModelPath"]) {
|
|
133
|
+
throw new ModelLoadFailedError("modelConfig.vaeModelSrc is required in video mode. " +
|
|
134
|
+
"Provide the Wan VAE model before loading the video pipeline.");
|
|
135
|
+
}
|
|
136
|
+
const files = {
|
|
137
|
+
model: modelPath,
|
|
138
|
+
t5Xxl: artifacts["t5XxlModelPath"],
|
|
139
|
+
vae: artifacts["vaeModelPath"],
|
|
140
|
+
...(artifacts?.["highNoiseDiffusionModelPath"] && {
|
|
141
|
+
highNoiseDiffusionModel: artifacts["highNoiseDiffusionModelPath"],
|
|
142
|
+
}),
|
|
143
|
+
...(artifacts?.["esrganModelPath"] && { esrgan: artifacts["esrganModelPath"] }),
|
|
144
|
+
};
|
|
145
|
+
/* eslint-disable @typescript-eslint/no-unused-vars */
|
|
146
|
+
const { clipLModelSrc, clipGModelSrc, t5XxlModelSrc, llmModelSrc, vaeModelSrc, highNoiseDiffusionModelSrc, upscaler, mode, ...rest } = config;
|
|
147
|
+
/* eslint-enable @typescript-eslint/no-unused-vars */
|
|
148
|
+
const model = new VideoStableDiffusion({
|
|
149
|
+
files,
|
|
150
|
+
config: rest,
|
|
151
|
+
logger,
|
|
152
|
+
opts: { stats: true },
|
|
153
|
+
});
|
|
154
|
+
return { model };
|
|
155
|
+
}
|
|
42
156
|
const files = {
|
|
43
157
|
model: modelPath,
|
|
44
158
|
...(artifacts?.["clipLModelPath"] && { clipL: artifacts["clipLModelPath"] }),
|
|
@@ -46,10 +160,20 @@ export const diffusionPlugin = definePlugin({
|
|
|
46
160
|
...(artifacts?.["t5XxlModelPath"] && { t5Xxl: artifacts["t5XxlModelPath"] }),
|
|
47
161
|
...(artifacts?.["llmModelPath"] && { llm: artifacts["llmModelPath"] }),
|
|
48
162
|
...(artifacts?.["vaeModelPath"] && { vae: artifacts["vaeModelPath"] }),
|
|
163
|
+
...(artifacts?.["esrganModelPath"] && { esrgan: artifacts["esrganModelPath"] }),
|
|
164
|
+
};
|
|
165
|
+
// `mode` is consumed by this plugin to select the model class above; the
|
|
166
|
+
// stable-diffusion.cpp native config does not understand it. Strip it
|
|
167
|
+
// before forwarding `rest` to the addon.
|
|
168
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
169
|
+
const { upscaler, mode, ...rest } = config;
|
|
170
|
+
const addonConfig = {
|
|
171
|
+
...rest,
|
|
172
|
+
...flattenUpscalerKeys(upscaler),
|
|
49
173
|
};
|
|
50
174
|
const model = new ImgStableDiffusion({
|
|
51
175
|
files,
|
|
52
|
-
config:
|
|
176
|
+
config: addonConfig,
|
|
53
177
|
logger,
|
|
54
178
|
opts: { stats: true },
|
|
55
179
|
});
|
|
@@ -60,8 +184,27 @@ export const diffusionPlugin = definePlugin({
|
|
|
60
184
|
requestSchema: diffusionRequestSchema,
|
|
61
185
|
responseSchema: diffusionStreamResponseSchema,
|
|
62
186
|
streaming: true,
|
|
187
|
+
// sdcpp diffusion exposes a model-wide hard cancel — compute
|
|
188
|
+
// is interrupted on the currently-running generation.
|
|
189
|
+
cancel: { scope: "model", hard: true },
|
|
63
190
|
handler: diffusion,
|
|
64
191
|
}),
|
|
192
|
+
videoStream: defineHandler({
|
|
193
|
+
requestSchema: videoRequestSchema,
|
|
194
|
+
responseSchema: videoStreamResponseSchema,
|
|
195
|
+
streaming: true,
|
|
196
|
+
cancel: { scope: "model", hard: true },
|
|
197
|
+
handler: video,
|
|
198
|
+
}),
|
|
199
|
+
upscaleStream: defineHandler({
|
|
200
|
+
requestSchema: upscaleRequestSchema,
|
|
201
|
+
responseSchema: upscaleStreamResponseSchema,
|
|
202
|
+
streaming: true,
|
|
203
|
+
// sdcpp upscale path has no cancel surface today — SDK falls
|
|
204
|
+
// back to soft-cancel.
|
|
205
|
+
cancel: { scope: "none" },
|
|
206
|
+
handler: upscale,
|
|
207
|
+
}),
|
|
65
208
|
},
|
|
66
209
|
logging: {
|
|
67
210
|
module: addonLogging,
|