blazen 0.5.4 → 0.6.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/README.md CHANGED
@@ -130,21 +130,21 @@ console.log(result.data); // { status: "done" }
130
130
 
131
131
  ## LLM Integration
132
132
 
133
- `CompletionModel` provides a unified interface to 15 LLM providers. Create a model instance with a static factory method and call `complete()` or `completeWithOptions()`. All messages and responses are fully typed.
133
+ `Model` provides a unified interface to 15 LLM providers. Create a model instance with a static factory method and call `complete()` or `completeWithOptions()`. All messages and responses are fully typed.
134
134
 
135
135
  ### ChatMessage and Role
136
136
 
137
137
  Build messages with the `ChatMessage` class and `Role` enum:
138
138
 
139
139
  ```typescript
140
- import { CompletionModel, ChatMessage, Role } from "blazen";
141
- import type { CompletionResponse, ToolCall, TokenUsage } from "blazen";
140
+ import { Model, ChatMessage, Role } from "blazen";
141
+ import type { ModelResponse, ToolCall, TokenUsage } from "blazen";
142
142
 
143
- const model = CompletionModel.openrouter({ apiKey: process.env.OPENROUTER_API_KEY! });
144
- // or rely on the OPENROUTER_API_KEY env var: CompletionModel.openrouter();
143
+ const model = Model.openrouter({ apiKey: process.env.OPENROUTER_API_KEY! });
144
+ // or rely on the OPENROUTER_API_KEY env var: Model.openrouter();
145
145
 
146
146
  // Using static factory methods (recommended)
147
- const response: CompletionResponse = await model.complete([
147
+ const response: ModelResponse = await model.complete([
148
148
  ChatMessage.system("You are helpful."),
149
149
  ChatMessage.user("What is 2+2?"),
150
150
  ]);
@@ -187,9 +187,9 @@ const msg = ChatMessage.userParts([
187
187
  Use `completeWithOptions` to control temperature, token limits, model selection, and tool definitions:
188
188
 
189
189
  ```typescript
190
- import type { CompletionOptions } from "blazen";
190
+ import type { ModelOptions } from "blazen";
191
191
 
192
- const options: CompletionOptions = {
192
+ const options: ModelOptions = {
193
193
  temperature: 0.9,
194
194
  maxTokens: 256,
195
195
  topP: 0.95,
@@ -212,35 +212,35 @@ Every factory method takes a single options object (or no argument, to read the
212
212
 
213
213
  | Factory Method | Provider |
214
214
  |---|---|
215
- | `CompletionModel.openai({ apiKey })` | OpenAI |
216
- | `CompletionModel.anthropic({ apiKey })` | Anthropic |
217
- | `CompletionModel.gemini({ apiKey })` | Google Gemini |
218
- | `CompletionModel.azure({ apiKey, resourceName, deploymentName })` | Azure OpenAI |
219
- | `CompletionModel.openrouter({ apiKey })` | OpenRouter |
220
- | `CompletionModel.groq({ apiKey })` | Groq |
221
- | `CompletionModel.together({ apiKey })` | Together AI |
222
- | `CompletionModel.mistral({ apiKey })` | Mistral AI |
223
- | `CompletionModel.deepseek({ apiKey })` | DeepSeek |
224
- | `CompletionModel.fireworks({ apiKey })` | Fireworks AI |
225
- | `CompletionModel.perplexity({ apiKey })` | Perplexity |
226
- | `CompletionModel.xai({ apiKey })` | xAI / Grok |
227
- | `CompletionModel.cohere({ apiKey })` | Cohere |
228
- | `CompletionModel.bedrock({ apiKey, region })` | AWS Bedrock |
229
- | `CompletionModel.fal({ apiKey })` | fal.ai |
215
+ | `Model.openai({ apiKey })` | OpenAI |
216
+ | `Model.anthropic({ apiKey })` | Anthropic |
217
+ | `Model.gemini({ apiKey })` | Google Gemini |
218
+ | `Model.azure({ apiKey, resourceName, deploymentName })` | Azure OpenAI |
219
+ | `Model.openrouter({ apiKey })` | OpenRouter |
220
+ | `Model.groq({ apiKey })` | Groq |
221
+ | `Model.together({ apiKey })` | Together AI |
222
+ | `Model.mistral({ apiKey })` | Mistral AI |
223
+ | `Model.deepseek({ apiKey })` | DeepSeek |
224
+ | `Model.fireworks({ apiKey })` | Fireworks AI |
225
+ | `Model.perplexity({ apiKey })` | Perplexity |
226
+ | `Model.xai({ apiKey })` | xAI / Grok |
227
+ | `Model.cohere({ apiKey })` | Cohere |
228
+ | `Model.bedrock({ apiKey, region })` | AWS Bedrock |
229
+ | `Model.fal({ apiKey })` | fal.ai |
230
230
 
231
231
  Omit the argument entirely to fall back to provider-specific environment variables (e.g. `OPENAI_API_KEY`, `ANTHROPIC_API_KEY`, `OPENROUTER_API_KEY`):
232
232
 
233
233
  ```typescript
234
- const model = CompletionModel.openai(); // reads OPENAI_API_KEY
234
+ const model = Model.openai(); // reads OPENAI_API_KEY
235
235
  ```
236
236
 
237
237
  ### Using LLMs Inside Workflows
238
238
 
239
239
  ```typescript
240
- import { Workflow, CompletionModel, ChatMessage } from "blazen";
240
+ import { Workflow, Model, ChatMessage } from "blazen";
241
241
 
242
- const model = CompletionModel.openai({ apiKey: process.env.OPENAI_API_KEY! });
243
- // or rely on the OPENAI_API_KEY env var: CompletionModel.openai();
242
+ const model = Model.openai({ apiKey: process.env.OPENAI_API_KEY! });
243
+ // or rely on the OPENAI_API_KEY env var: Model.openai();
244
244
 
245
245
  const wf = new Workflow("llm-workflow");
246
246
 
@@ -264,12 +264,12 @@ Every error thrown across the FFI boundary is an instance of `BlazenError extend
264
264
 
265
265
  ```typescript
266
266
  import {
267
- CompletionModel, ChatMessage,
267
+ Model, ChatMessage,
268
268
  BlazenError, RateLimitError, AuthError, TimeoutError, ValidationError,
269
269
  ContentPolicyError, ProviderError,
270
270
  } from "blazen";
271
271
 
272
- const model = CompletionModel.openai();
272
+ const model = Model.openai();
273
273
 
274
274
  try {
275
275
  const response = await model.complete([ChatMessage.user("Hello")]);
@@ -330,25 +330,31 @@ Each local-inference backend has its own `ProviderError` subtree:
330
330
 
331
331
  `PromptError`, `MemoryError`, `CacheError`, `PersistError`, and several `Peer*` errors all extend `BlazenError` with their own narrower subclasses (e.g. `PromptMissingVariableError`, `MemoryNotFoundError`, `DownloadError`).
332
332
 
333
- ### `enrichError` -- re-classify across the FFI boundary
333
+ ### Native typed errors -- no shim required
334
334
 
335
- If an error has been re-thrown through plain `Error` (for example after being serialized through a structured-clone boundary, or wrapped by user code), call `enrichError(err)` to re-attach the correct `BlazenError` subclass:
335
+ Errors are constructed as proper JS subclasses by the native binding itself.
336
+ When Rust returns a `ProviderError`, `instanceof ProviderError` is true on the
337
+ JS side and structured fields (`provider`, `status`, `endpoint`, `requestId`,
338
+ `detail`, `retryAfterMs`) are own properties on the error instance:
336
339
 
337
340
  ```typescript
338
- import { enrichError, RateLimitError } from "blazen";
341
+ import { ProviderError } from "blazen";
339
342
 
340
343
  try {
341
- await someWrapperThatRethrows();
342
- } catch (raw) {
343
- const e = enrichError(raw);
344
- if (e instanceof RateLimitError) {
345
- // narrow as usual
344
+ await model.complete([ChatMessage.user("hi")]);
345
+ } catch (err) {
346
+ if (err instanceof ProviderError) {
347
+ console.log(err.provider, err.status, err.requestId);
346
348
  } else {
347
- throw e;
349
+ throw err;
348
350
  }
349
351
  }
350
352
  ```
351
353
 
354
+ No `enrichError` wrapper is needed -- the JS instance is the original throw
355
+ value (preserved through napi-rs 3.9.0's `napi::Error::with_class` and
356
+ `call_async_catch`).
357
+
352
358
  ---
353
359
 
354
360
  ## Typed Result Classes
@@ -363,7 +369,7 @@ Returned by agent runs that may invoke tools across multiple iterations.
363
369
  import type { AgentResult } from "blazen";
364
370
 
365
371
  const result: AgentResult = await agent.run("Summarize this document");
366
- console.log(result.response); // CompletionResponse from the final model call
372
+ console.log(result.response); // ModelResponse from the final model call
367
373
  console.log(result.messages); // full message history (incl. tool calls + results)
368
374
  console.log(result.iterations); // number of tool-calling iterations
369
375
  console.log(result.totalCost); // aggregated USD cost across iterations, or null
@@ -372,7 +378,7 @@ console.log(result.toString()); // matches the Python AgentResult.__repr__
372
378
 
373
379
  | Getter | Type | Description |
374
380
  |---|---|---|
375
- | `.response` | `CompletionResponse` | Final completion response from the model |
381
+ | `.response` | `ModelResponse` | Final completion response from the model |
376
382
  | `.messages` | `Array<any>` | Full message history including tool calls and results |
377
383
  | `.iterations` | `number` | Number of tool-calling iterations performed |
378
384
  | `.totalCost` | `number \| null` | Aggregated USD cost across iterations, if available |
@@ -399,7 +405,7 @@ console.log("total cost:", batch.totalCost);
399
405
 
400
406
  | Getter | Type | Description |
401
407
  |---|---|---|
402
- | `.responses` | `Array<CompletionResponse \| null>` | One response per request; `null` for failures |
408
+ | `.responses` | `Array<ModelResponse \| null>` | One response per request; `null` for failures |
403
409
  | `.errors` | `Array<string \| null>` | One error message per request; `null` for successes |
404
410
  | `.totalUsage` | `TokenUsage \| null` | Aggregated token usage across successful responses |
405
411
  | `.totalCost` | `number \| null` | Aggregated USD cost across successful responses |
@@ -411,7 +417,7 @@ console.log("total cost:", batch.totalCost);
411
417
 
412
418
  ## Local Inference Types
413
419
 
414
- Local inference (mistral.rs, llama.cpp, candle) exposes its own typed result and streaming classes alongside the higher-level `CompletionModel` API. Streams are pulled by repeatedly awaiting `stream.next()` until it returns `null` -- they are **not** `for await`-iterable.
420
+ Local inference (mistral.rs, llama.cpp, candle) exposes its own typed result and streaming classes alongside the higher-level `Model` API. Streams are pulled by repeatedly awaiting `stream.next()` until it returns `null` -- they are **not** `for await`-iterable.
415
421
 
416
422
  ### mistral.rs
417
423
 
@@ -769,13 +775,12 @@ Full TypeScript type definitions ship with the package -- no `@types` needed. Al
769
775
 
770
776
  ```typescript
771
777
  import {
772
- Workflow, WorkflowHandler, Context, CompletionModel,
778
+ Workflow, WorkflowHandler, Context, Model,
773
779
  ChatMessage, Role, version,
774
780
  // Typed errors
775
781
  BlazenError, RateLimitError, AuthError, ProviderError,
776
782
  LlamaCppError, MistralRsError, CandleLlmError, WhisperError,
777
783
  PiperError, DiffusionError, FastEmbedError, TractError,
778
- enrichError,
779
784
  // Typed result classes
780
785
  AgentResult, BatchResult,
781
786
  // Local inference
@@ -787,7 +792,7 @@ import {
787
792
  LangfuseConfig, initLangfuse,
788
793
  } from "blazen";
789
794
  import type {
790
- JsWorkflowResult, CompletionResponse, CompletionOptions,
795
+ JsWorkflowResult, ModelResponse, ModelOptions,
791
796
  ToolCall, TokenUsage, ContentPart, ImageContent, ImageSource, MediaSource,
792
797
  } from "blazen";
793
798
  ```
@@ -825,16 +830,16 @@ import type {
825
830
  | `Context.session` | `SessionNamespace` getter -- in-process-only values (excluded from snapshots) |
826
831
  | `StateNamespace.set / get / setBytes / getBytes` | Async persistable storage routed through the same dispatch as `ctx.set` |
827
832
  | `SessionNamespace.set / get / has / remove` | Async in-process-only storage; values are routed through `serde_json::Value` (no JS identity preservation) |
828
- | `CompletionModel` | Unified LLM client with 15 provider factory methods |
829
- | `CompletionModel.complete(messages)` | Chat completion with typed `ChatMessage[]` input, returns `CompletionResponse` (async) |
830
- | `CompletionModel.completeWithOptions(messages, opts)` | Chat completion with `CompletionOptions` (async) |
831
- | `CompletionModel.modelId` | Getter for the current model ID |
833
+ | `Model` | Unified LLM client with 15 provider factory methods |
834
+ | `Model.complete(messages)` | Chat completion with typed `ChatMessage[]` input, returns `ModelResponse` (async) |
835
+ | `Model.completeWithOptions(messages, opts)` | Chat completion with `ModelOptions` (async) |
836
+ | `Model.modelId` | Getter for the current model ID |
832
837
  | `ChatMessage` | Chat message class with static factories: `.system()`, `.user()`, `.assistant()`, `.tool()`, `.userImageUrl()`, `.userImageBase64()`, `.userParts()` |
833
838
  | `Role` | String enum: `Role.System`, `Role.User`, `Role.Assistant`, `Role.Tool` |
834
- | `CompletionResponse` | Interface: `{ content, toolCalls, usage, model, finishReason }` |
839
+ | `ModelResponse` | Interface: `{ content, toolCalls, usage, model, finishReason }` |
835
840
  | `ToolCall` | Interface: `{ id, name, arguments }` |
836
841
  | `TokenUsage` | Interface: `{ promptTokens, completionTokens, totalTokens }` |
837
- | `CompletionOptions` | Interface: `{ temperature?, maxTokens?, topP?, model?, tools? }` |
842
+ | `ModelOptions` | Interface: `{ temperature?, maxTokens?, topP?, model?, tools? }` |
838
843
  | `ContentPart` / `ImageContent` / `ImageSource` | Types for multimodal message content |
839
844
  | `MediaSource` | Type alias for `ImageSource` |
840
845
  | `AgentResult` | Class: `.response`, `.messages`, `.iterations`, `.totalCost`, `.toString()` |
@@ -844,7 +849,6 @@ import type {
844
849
  | `ProviderError` | `BlazenError` subclass with structured fields: `provider`, `status`, `endpoint`, `requestId`, `detail`, `retryAfterMs` |
845
850
  | `LlamaCppError` / `MistralRsError` / `CandleLlmError` / `CandleEmbedError` / `WhisperError` / `PiperError` / `DiffusionError` / `FastEmbedError` / `TractError` | Per-backend `ProviderError` subtrees with narrower variants |
846
851
  | `PromptError` / `MemoryError` / `CacheError` / `PersistError` | Other `BlazenError` subtrees |
847
- | `enrichError(err)` | Re-classify a re-thrown error back to the correct `BlazenError` subclass |
848
852
  | `ProgressCallback` | Subclassable JS class; override `onProgress(downloaded: bigint, total?: bigint)` |
849
853
  | `PipelineBuilder.onPersist(callback)` / `.onPersistJson(callback)` | Per-stage persist hooks; callback returns `Promise<void>` |
850
854
  | `LangfuseConfig(publicKey, secretKey, host?, batchSize?, flushIntervalMs?)` | Positional ctor for the Langfuse exporter |
package/blazen.workers.js CHANGED
@@ -37,6 +37,20 @@ globalThis.__blazenScheduler = () => {
37
37
  globalThis.__blazenSleeper = (ms) =>
38
38
  new Promise((r) => globalThis.setTimeout(r, ms))
39
39
 
40
+ // Error-class factory: napi-patched's `register_error_class` uses this
41
+ // global to build the JS subclass chain when running on hosts that block
42
+ // dynamic code generation (i.e. workerd's `napi_run_script` is a no-op).
43
+ // On Node / wasi-node / browsers, this global is absent and napi-patched
44
+ // falls back to evaluating an inline script with the same shape.
45
+ globalThis.__blazenErrorClassFactory = (parent, name) =>
46
+ class extends parent {
47
+ constructor(message, props) {
48
+ super(message)
49
+ this.name = name
50
+ if (props) Object.assign(this, props)
51
+ }
52
+ }
53
+
40
54
  const __wasi = new __WASI({ version: 'preview1' })
41
55
  const __emnapiContext = __emnapiGetDefaultContext()
42
56
 
@@ -83,6 +97,8 @@ export const ApiProtocol = __napiModule.exports.ApiProtocol
83
97
  export const JsApiProtocol = __napiModule.exports.JsApiProtocol
84
98
  export const AssignmentContext = __napiModule.exports.AssignmentContext
85
99
  export const JsAssignmentContext = __napiModule.exports.JsAssignmentContext
100
+ export const AudioGenBackend = __napiModule.exports.AudioGenBackend
101
+ export const JsAudioGenBackend = __napiModule.exports.JsAudioGenBackend
86
102
  export const AudioMusicProviderDefaults = __napiModule.exports.AudioMusicProviderDefaults
87
103
  export const JsAudioMusicProviderDefaults = __napiModule.exports.JsAudioMusicProviderDefaults
88
104
  export const AudioSpeechProviderDefaults = __napiModule.exports.AudioSpeechProviderDefaults
@@ -93,8 +109,6 @@ export const BackgroundRemovalProvider = __napiModule.exports.BackgroundRemovalP
93
109
  export const JsBackgroundRemovalProvider = __napiModule.exports.JsBackgroundRemovalProvider
94
110
  export const BackgroundRemovalProviderDefaults = __napiModule.exports.BackgroundRemovalProviderDefaults
95
111
  export const JsBackgroundRemovalProviderDefaults = __napiModule.exports.JsBackgroundRemovalProviderDefaults
96
- export const BaseProvider = __napiModule.exports.BaseProvider
97
- export const JsBaseProvider = __napiModule.exports.JsBaseProvider
98
112
  export const BaseProviderDefaults = __napiModule.exports.BaseProviderDefaults
99
113
  export const JsBaseProviderDefaults = __napiModule.exports.JsBaseProviderDefaults
100
114
  export const BatchConfig = __napiModule.exports.BatchConfig
@@ -109,8 +123,8 @@ export const BlazenPeerServer = __napiModule.exports.BlazenPeerServer
109
123
  export const JsBlazenPeerServer = __napiModule.exports.JsBlazenPeerServer
110
124
  export const BytesWrapper = __napiModule.exports.BytesWrapper
111
125
  export const JsBytesWrapper = __napiModule.exports.JsBytesWrapper
112
- export const CachedCompletionModel = __napiModule.exports.CachedCompletionModel
113
- export const JsCachedCompletionModel = __napiModule.exports.JsCachedCompletionModel
126
+ export const CachedModel = __napiModule.exports.CachedModel
127
+ export const JsCachedModel = __napiModule.exports.JsCachedModel
114
128
  export const CacheMiddleware = __napiModule.exports.CacheMiddleware
115
129
  export const JsCacheMiddleware = __napiModule.exports.JsCacheMiddleware
116
130
  export const CandleEmbedProvider = __napiModule.exports.CandleEmbedProvider
@@ -129,12 +143,10 @@ export const CheckpointStore = __napiModule.exports.CheckpointStore
129
143
  export const JsCheckpointStore = __napiModule.exports.JsCheckpointStore
130
144
  export const Citation = __napiModule.exports.Citation
131
145
  export const JsCitationClass = __napiModule.exports.JsCitationClass
146
+ export const CodecBackendHandle = __napiModule.exports.CodecBackendHandle
147
+ export const JsCodecBackendHandle = __napiModule.exports.JsCodecBackendHandle
132
148
  export const CohereProvider = __napiModule.exports.CohereProvider
133
149
  export const JsCohereProvider = __napiModule.exports.JsCohereProvider
134
- export const CompletionModel = __napiModule.exports.CompletionModel
135
- export const JsCompletionModel = __napiModule.exports.JsCompletionModel
136
- export const CompletionProviderDefaults = __napiModule.exports.CompletionProviderDefaults
137
- export const JsCompletionProviderDefaults = __napiModule.exports.JsCompletionProviderDefaults
138
150
  export const ContentStore = __napiModule.exports.ContentStore
139
151
  export const JsContentStore = __napiModule.exports.JsContentStore
140
152
  export const Context = __napiModule.exports.Context
@@ -155,6 +167,8 @@ export const DynamicEvent = __napiModule.exports.DynamicEvent
155
167
  export const JsDynamicEvent = __napiModule.exports.JsDynamicEvent
156
168
  export const EmbeddingModel = __napiModule.exports.EmbeddingModel
157
169
  export const JsEmbeddingModel = __napiModule.exports.JsEmbeddingModel
170
+ export const EmbeddingProvider = __napiModule.exports.EmbeddingProvider
171
+ export const JsEmbeddingProvider = __napiModule.exports.JsEmbeddingProvider
158
172
  export const EmbeddingProviderDefaults = __napiModule.exports.EmbeddingProviderDefaults
159
173
  export const JsEmbeddingProviderDefaults = __napiModule.exports.JsEmbeddingProviderDefaults
160
174
  export const EmbedProvider = __napiModule.exports.EmbedProvider
@@ -169,6 +183,8 @@ export const FalProvider = __napiModule.exports.FalProvider
169
183
  export const JsFalProvider = __napiModule.exports.JsFalProvider
170
184
  export const FastEmbedModel = __napiModule.exports.FastEmbedModel
171
185
  export const JsFastEmbedModel = __napiModule.exports.JsFastEmbedModel
186
+ export const FasterWhisperBackend = __napiModule.exports.FasterWhisperBackend
187
+ export const JsFasterWhisperBackend = __napiModule.exports.JsFasterWhisperBackend
172
188
  export const FireworksProvider = __napiModule.exports.FireworksProvider
173
189
  export const JsFireworksProvider = __napiModule.exports.JsFireworksProvider
174
190
  export const GeminiProvider = __napiModule.exports.GeminiProvider
@@ -183,6 +199,8 @@ export const HttpPeerClient = __napiModule.exports.HttpPeerClient
183
199
  export const JsHttpPeerClient = __napiModule.exports.JsHttpPeerClient
184
200
  export const ImageGenerationProviderDefaults = __napiModule.exports.ImageGenerationProviderDefaults
185
201
  export const JsImageGenerationProviderDefaults = __napiModule.exports.JsImageGenerationProviderDefaults
202
+ export const ImageGenProvider = __napiModule.exports.ImageGenProvider
203
+ export const JsImageGenProvider = __napiModule.exports.JsImageGenProvider
186
204
  export const ImageModel = __napiModule.exports.ImageModel
187
205
  export const JsImageModel = __napiModule.exports.JsImageModel
188
206
  export const ImageProvider = __napiModule.exports.ImageProvider
@@ -209,6 +227,8 @@ export const JobHandle = __napiModule.exports.JobHandle
209
227
  export const JsJobHandleClass = __napiModule.exports.JsJobHandleClass
210
228
  export const JsonlBackend = __napiModule.exports.JsonlBackend
211
229
  export const JsJsonlBackend = __napiModule.exports.JsJsonlBackend
230
+ export const JsonlDataset = __napiModule.exports.JsonlDataset
231
+ export const JsJsonlDataset = __napiModule.exports.JsJsonlDataset
212
232
  export const LangfuseConfig = __napiModule.exports.LangfuseConfig
213
233
  export const JsLangfuseConfig = __napiModule.exports.JsLangfuseConfig
214
234
  export const LlamaCppChatMessageInput = __napiModule.exports.LlamaCppChatMessageInput
@@ -223,8 +243,14 @@ export const LlamaCppInferenceUsage = __napiModule.exports.LlamaCppInferenceUsag
223
243
  export const JsLlamaCppInferenceUsage = __napiModule.exports.JsLlamaCppInferenceUsage
224
244
  export const LlamaCppProvider = __napiModule.exports.LlamaCppProvider
225
245
  export const JsLlamaCppProvider = __napiModule.exports.JsLlamaCppProvider
246
+ export const LLMProvider = __napiModule.exports.LLMProvider
247
+ export const JsLLMProvider = __napiModule.exports.JsLLMProvider
248
+ export const LlmProviderDefaults = __napiModule.exports.LlmProviderDefaults
249
+ export const JsBaseProvider = __napiModule.exports.JsBaseProvider
226
250
  export const LocalModel = __napiModule.exports.LocalModel
227
251
  export const JsLocalModel = __napiModule.exports.JsLocalModel
252
+ export const LoopStage = __napiModule.exports.LoopStage
253
+ export const JsLoopStage = __napiModule.exports.JsLoopStage
228
254
  export const Memory = __napiModule.exports.Memory
229
255
  export const JsMemory = __napiModule.exports.JsMemory
230
256
  export const MemoryBackend = __napiModule.exports.MemoryBackend
@@ -239,12 +265,22 @@ export const MistralProvider = __napiModule.exports.MistralProvider
239
265
  export const JsMistralProvider = __napiModule.exports.JsMistralProvider
240
266
  export const MistralRsProvider = __napiModule.exports.MistralRsProvider
241
267
  export const JsMistralRsProvider = __napiModule.exports.JsMistralRsProvider
268
+ export const Model = __napiModule.exports.Model
269
+ export const JsModel = __napiModule.exports.JsModel
242
270
  export const ModelCache = __napiModule.exports.ModelCache
243
271
  export const JsModelCache = __napiModule.exports.JsModelCache
272
+ export const ModelClient = __napiModule.exports.ModelClient
273
+ export const JsModelClient = __napiModule.exports.JsModelClient
244
274
  export const ModelManager = __napiModule.exports.ModelManager
245
275
  export const JsModelManager = __napiModule.exports.JsModelManager
246
276
  export const ModelRegistry = __napiModule.exports.ModelRegistry
247
277
  export const JsModelRegistry = __napiModule.exports.JsModelRegistry
278
+ export const MusicBackendHandle = __napiModule.exports.MusicBackendHandle
279
+ export const JsMusicBackendHandle = __napiModule.exports.JsMusicBackendHandle
280
+ export const MusicgenBackend = __napiModule.exports.MusicgenBackend
281
+ export const JsMusicgenBackend = __napiModule.exports.JsMusicgenBackend
282
+ export const MusicModel = __napiModule.exports.MusicModel
283
+ export const JsMusicModel = __napiModule.exports.JsMusicModel
248
284
  export const MusicProvider = __napiModule.exports.MusicProvider
249
285
  export const JsMusicProvider = __napiModule.exports.JsMusicProvider
250
286
  export const NoopUsageEmitter = __napiModule.exports.NoopUsageEmitter
@@ -279,8 +315,8 @@ export const PipelineResult = __napiModule.exports.PipelineResult
279
315
  export const JsPipelineResult = __napiModule.exports.JsPipelineResult
280
316
  export const PipelineSnapshot = __napiModule.exports.PipelineSnapshot
281
317
  export const JsPipelineSnapshot = __napiModule.exports.JsPipelineSnapshot
282
- export const PiperProvider = __napiModule.exports.PiperProvider
283
- export const JsPiperProvider = __napiModule.exports.JsPiperProvider
318
+ export const PreferenceJsonlDataset = __napiModule.exports.PreferenceJsonlDataset
319
+ export const JsPreferenceJsonlDataset = __napiModule.exports.JsPreferenceJsonlDataset
284
320
  export const ProgressCallback = __napiModule.exports.ProgressCallback
285
321
  export const JsProgressCallback = __napiModule.exports.JsProgressCallback
286
322
  export const PromptFile = __napiModule.exports.PromptFile
@@ -289,6 +325,10 @@ export const PromptRegistry = __napiModule.exports.PromptRegistry
289
325
  export const JsPromptRegistry = __napiModule.exports.JsPromptRegistry
290
326
  export const PromptTemplate = __napiModule.exports.PromptTemplate
291
327
  export const JsPromptTemplate = __napiModule.exports.JsPromptTemplate
328
+ export const ProviderDefaults = __napiModule.exports.ProviderDefaults
329
+ export const JsProviderDefaults = __napiModule.exports.JsProviderDefaults
330
+ export const RatedJsonlDataset = __napiModule.exports.RatedJsonlDataset
331
+ export const JsRatedJsonlDataset = __napiModule.exports.JsRatedJsonlDataset
292
332
  export const ReasoningTrace = __napiModule.exports.ReasoningTrace
293
333
  export const JsReasoningTraceClass = __napiModule.exports.JsReasoningTraceClass
294
334
  export const RedbCheckpointStore = __napiModule.exports.RedbCheckpointStore
@@ -297,16 +337,22 @@ export const RegistryKey = __napiModule.exports.RegistryKey
297
337
  export const JsRegistryKey = __napiModule.exports.JsRegistryKey
298
338
  export const RequestTiming = __napiModule.exports.RequestTiming
299
339
  export const JsRequestTimingClass = __napiModule.exports.JsRequestTimingClass
300
- export const RetryCompletionModel = __napiModule.exports.RetryCompletionModel
301
- export const JsRetryCompletionModel = __napiModule.exports.JsRetryCompletionModel
302
340
  export const RetryMemoryBackend = __napiModule.exports.RetryMemoryBackend
303
341
  export const JsRetryMemoryBackend = __napiModule.exports.JsRetryMemoryBackend
304
342
  export const RetryMiddleware = __napiModule.exports.RetryMiddleware
305
343
  export const JsRetryMiddleware = __napiModule.exports.JsRetryMiddleware
344
+ export const RetryModel = __napiModule.exports.RetryModel
345
+ export const JsRetryModel = __napiModule.exports.JsRetryModel
346
+ export const RvcBackend = __napiModule.exports.RvcBackend
347
+ export const JsRvcBackend = __napiModule.exports.JsRvcBackend
306
348
  export const SessionNamespace = __napiModule.exports.SessionNamespace
307
349
  export const JsSessionNamespace = __napiModule.exports.JsSessionNamespace
308
350
  export const SessionRefRegistry = __napiModule.exports.SessionRefRegistry
309
351
  export const JsSessionRefRegistry = __napiModule.exports.JsSessionRefRegistry
352
+ export const SparkTtsBackend = __napiModule.exports.SparkTtsBackend
353
+ export const JsSparkTtsBackend = __napiModule.exports.JsSparkTtsBackend
354
+ export const StableAudioBackend = __napiModule.exports.StableAudioBackend
355
+ export const JsStableAudioBackend = __napiModule.exports.JsStableAudioBackend
310
356
  export const Stage = __napiModule.exports.Stage
311
357
  export const JsStage = __napiModule.exports.JsStage
312
358
  export const StageResult = __napiModule.exports.StageResult
@@ -327,6 +373,12 @@ export const StopEvent = __napiModule.exports.StopEvent
327
373
  export const JsStopEventClass = __napiModule.exports.JsStopEventClass
328
374
  export const StructuredOutput = __napiModule.exports.StructuredOutput
329
375
  export const JsStructuredOutput = __napiModule.exports.JsStructuredOutput
376
+ export const SttBackendHandle = __napiModule.exports.SttBackendHandle
377
+ export const JsSttBackendHandle = __napiModule.exports.JsSttBackendHandle
378
+ export const SubExecutable = __napiModule.exports.SubExecutable
379
+ export const JsSubExecutable = __napiModule.exports.JsSubExecutable
380
+ export const SubPipelineStep = __napiModule.exports.SubPipelineStep
381
+ export const JsSubPipelineStep = __napiModule.exports.JsSubPipelineStep
330
382
  export const SubWorkflowStep = __napiModule.exports.SubWorkflowStep
331
383
  export const JsSubWorkflowStep = __napiModule.exports.JsSubWorkflowStep
332
384
  export const ThreeDProvider = __napiModule.exports.ThreeDProvider
@@ -353,6 +405,10 @@ export const Transcription = __napiModule.exports.Transcription
353
405
  export const JsTranscription = __napiModule.exports.JsTranscription
354
406
  export const TranscriptionProviderDefaults = __napiModule.exports.TranscriptionProviderDefaults
355
407
  export const JsTranscriptionProviderDefaults = __napiModule.exports.JsTranscriptionProviderDefaults
408
+ export const TtsBackendHandle = __napiModule.exports.TtsBackendHandle
409
+ export const JsTtsBackendHandle = __napiModule.exports.JsTtsBackendHandle
410
+ export const TtsProvider = __napiModule.exports.TtsProvider
411
+ export const JsTtsProvider = __napiModule.exports.JsTtsProvider
356
412
  export const TTSProvider = __napiModule.exports.TTSProvider
357
413
  export const JsTTSProvider = __napiModule.exports.JsTTSProvider
358
414
  export const TypedTool = __napiModule.exports.TypedTool
@@ -361,14 +417,18 @@ export const UpstashBackend = __napiModule.exports.UpstashBackend
361
417
  export const JsUpstashBackend = __napiModule.exports.JsUpstashBackend
362
418
  export const UsageEmitter = __napiModule.exports.UsageEmitter
363
419
  export const JsUsageEmitter = __napiModule.exports.JsUsageEmitter
364
- export const UsageRecordingCompletionModel = __napiModule.exports.UsageRecordingCompletionModel
365
- export const JsUsageRecordingCompletionModel = __napiModule.exports.JsUsageRecordingCompletionModel
366
420
  export const UsageRecordingEmbeddingModel = __napiModule.exports.UsageRecordingEmbeddingModel
367
421
  export const JsUsageRecordingEmbeddingModel = __napiModule.exports.JsUsageRecordingEmbeddingModel
422
+ export const UsageRecordingModel = __napiModule.exports.UsageRecordingModel
423
+ export const JsUsageRecordingModel = __napiModule.exports.JsUsageRecordingModel
368
424
  export const ValkeyBackend = __napiModule.exports.ValkeyBackend
369
425
  export const JsValkeyBackend = __napiModule.exports.JsValkeyBackend
370
426
  export const ValkeyCheckpointStore = __napiModule.exports.ValkeyCheckpointStore
371
427
  export const JsValkeyCheckpointStore = __napiModule.exports.JsValkeyCheckpointStore
428
+ export const VcModel = __napiModule.exports.VcModel
429
+ export const JsVcModel = __napiModule.exports.JsVcModel
430
+ export const VcProvider = __napiModule.exports.VcProvider
431
+ export const JsVcProvider = __napiModule.exports.JsVcProvider
372
432
  export const VideoProvider = __napiModule.exports.VideoProvider
373
433
  export const JsVideoProvider = __napiModule.exports.JsVideoProvider
374
434
  export const VideoProviderDefaults = __napiModule.exports.VideoProviderDefaults
@@ -396,6 +456,8 @@ export const JsXaiProvider = __napiModule.exports.JsXaiProvider
396
456
  export const addUsageToTokenUsage = __napiModule.exports.addUsageToTokenUsage
397
457
  export const audioInput = __napiModule.exports.audioInput
398
458
  export const cadInput = __napiModule.exports.cadInput
459
+ export const CapabilityKind = __napiModule.exports.CapabilityKind
460
+ export const JsCapabilityKind = __napiModule.exports.JsCapabilityKind
399
461
  export const ChatRole = __napiModule.exports.ChatRole
400
462
  export const JsChatRole = __napiModule.exports.JsChatRole
401
463
  export const completeBatch = __napiModule.exports.completeBatch
@@ -432,13 +494,19 @@ export const JoinStrategy = __napiModule.exports.JoinStrategy
432
494
  export const JsJoinStrategy = __napiModule.exports.JsJoinStrategy
433
495
  export const JsAdmissionModeTag = __napiModule.exports.JsAdmissionModeTag
434
496
  export const JsAuthMethod = __napiModule.exports.JsAuthMethod
497
+ export const JsBackendHint = __napiModule.exports.JsBackendHint
435
498
  export const JsCacheStrategy = __napiModule.exports.JsCacheStrategy
436
499
  export const JsContentKind = __napiModule.exports.JsContentKind
437
500
  export const JsDiffusionScheduler = __napiModule.exports.JsDiffusionScheduler
438
501
  export const JsFalLlmEndpointKind = __napiModule.exports.JsFalLlmEndpointKind
439
502
  export const JsJobStatus = __napiModule.exports.JsJobStatus
503
+ export const JsMixedPrecision = __napiModule.exports.JsMixedPrecision
504
+ export const JsMusicgenVariant = __napiModule.exports.JsMusicgenVariant
440
505
  export const JsRole = __napiModule.exports.JsRole
441
506
  export const JsRunStatus = __napiModule.exports.JsRunStatus
507
+ export const JsSchedulerKind = __napiModule.exports.JsSchedulerKind
508
+ export const JsStableAudioVariant = __napiModule.exports.JsStableAudioVariant
509
+ export const JsTtsModel = __napiModule.exports.JsTtsModel
442
510
  export const JsWhisperModel = __napiModule.exports.JsWhisperModel
443
511
  export const LlamaCppChatRole = __napiModule.exports.LlamaCppChatRole
444
512
  export const JsLlamaCppChatRole = __napiModule.exports.JsLlamaCppChatRole
@@ -446,10 +514,14 @@ export const loadClientTls = __napiModule.exports.loadClientTls
446
514
  export const loadServerTls = __napiModule.exports.loadServerTls
447
515
  export const lookupPricing = __napiModule.exports.lookupPricing
448
516
  export const lookupStepBuilder = __napiModule.exports.lookupStepBuilder
517
+ export const LoopDecision = __napiModule.exports.LoopDecision
518
+ export const JsLoopDecision = __napiModule.exports.JsLoopDecision
449
519
  export const Modality = __napiModule.exports.Modality
450
520
  export const JsModality = __napiModule.exports.JsModality
451
521
  export const newRetryStack = __napiModule.exports.newRetryStack
452
522
  export const newUsageEvent = __napiModule.exports.newUsageEvent
523
+ export const OtlpProtocol = __napiModule.exports.OtlpProtocol
524
+ export const JsOtlpProtocol = __napiModule.exports.JsOtlpProtocol
453
525
  export const PauseReason = __napiModule.exports.PauseReason
454
526
  export const JsPauseReason = __napiModule.exports.JsPauseReason
455
527
  export const peerEnvelopeVersion = __napiModule.exports.peerEnvelopeVersion
@@ -467,6 +539,7 @@ export const refreshPricing = __napiModule.exports.refreshPricing
467
539
  export const registeredStepIds = __napiModule.exports.registeredStepIds
468
540
  export const registerEventDeserializer = __napiModule.exports.registerEventDeserializer
469
541
  export const registerFromModelInfo = __napiModule.exports.registerFromModelInfo
542
+ export const registerNativeSerializer = __napiModule.exports.registerNativeSerializer
470
543
  export const registerPricing = __napiModule.exports.registerPricing
471
544
  export const registerStepBuilder = __napiModule.exports.registerStepBuilder
472
545
  export const resolveApiKey = __napiModule.exports.resolveApiKey