@trymirai/uzu 0.1.50 → 0.2.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.
Files changed (74) hide show
  1. package/README.md +41 -1
  2. package/bridging/grammarConfig.d.mts +13 -0
  3. package/bridging/grammarConfig.d.mts.map +1 -0
  4. package/bridging/grammarConfig.d.ts +13 -0
  5. package/bridging/grammarConfig.d.ts.map +1 -0
  6. package/bridging/grammarConfig.js +36 -0
  7. package/bridging/grammarConfig.js.map +1 -0
  8. package/bridging/grammarConfig.mjs +31 -0
  9. package/bridging/grammarConfig.mjs.map +1 -0
  10. package/bridging/parsedText.d.mts +2 -0
  11. package/bridging/parsedText.d.mts.map +1 -1
  12. package/bridging/parsedText.d.ts +2 -0
  13. package/bridging/parsedText.d.ts.map +1 -1
  14. package/bridging/parsedText.js +8 -0
  15. package/bridging/parsedText.js.map +1 -1
  16. package/bridging/parsedText.mjs +8 -0
  17. package/bridging/parsedText.mjs.map +1 -1
  18. package/bridging/runConfig.d.mts +3 -0
  19. package/bridging/runConfig.d.mts.map +1 -1
  20. package/bridging/runConfig.d.ts +3 -0
  21. package/bridging/runConfig.d.ts.map +1 -1
  22. package/bridging/runConfig.js +14 -6
  23. package/bridging/runConfig.js.map +1 -1
  24. package/bridging/runConfig.mjs +14 -6
  25. package/bridging/runConfig.mjs.map +1 -1
  26. package/bridging/samplingMethod.d.mts +1 -1
  27. package/bridging/samplingMethod.d.mts.map +1 -1
  28. package/bridging/samplingMethod.d.ts +1 -1
  29. package/bridging/samplingMethod.d.ts.map +1 -1
  30. package/bridging/samplingMethod.js +4 -1
  31. package/bridging/samplingMethod.js.map +1 -1
  32. package/bridging/samplingMethod.mjs +4 -1
  33. package/bridging/samplingMethod.mjs.map +1 -1
  34. package/index.d.mts +1 -0
  35. package/index.d.mts.map +1 -1
  36. package/index.d.ts +1 -0
  37. package/index.d.ts.map +1 -1
  38. package/index.js +3 -1
  39. package/index.js.map +1 -1
  40. package/index.mjs +1 -0
  41. package/index.mjs.map +1 -1
  42. package/interactors/chatSessionInteractor.d.mts +2 -0
  43. package/interactors/chatSessionInteractor.d.mts.map +1 -1
  44. package/interactors/chatSessionInteractor.d.ts +2 -0
  45. package/interactors/chatSessionInteractor.d.ts.map +1 -1
  46. package/interactors/chatSessionInteractor.js +4 -0
  47. package/interactors/chatSessionInteractor.js.map +1 -1
  48. package/interactors/chatSessionInteractor.mjs +4 -0
  49. package/interactors/chatSessionInteractor.mjs.map +1 -1
  50. package/internal/tslib.js +55 -0
  51. package/napi/uzu.d.ts +11 -5
  52. package/napi/uzu.js +2 -0
  53. package/napi/uzu.mjs +1 -0
  54. package/napi/uzu.node +0 -0
  55. package/package.json +4 -1
  56. package/src/bridging/grammarConfig.ts +40 -0
  57. package/src/bridging/parsedText.ts +10 -0
  58. package/src/bridging/runConfig.ts +22 -6
  59. package/src/bridging/samplingMethod.ts +9 -1
  60. package/src/index.ts +1 -0
  61. package/src/interactors/chatSessionInteractor.ts +6 -0
  62. package/src/napi/uzu.d.ts +11 -5
  63. package/src/napi/uzu.js +2 -0
  64. package/src/napi/uzu.mjs +1 -0
  65. package/src/napi/uzu.node +0 -0
  66. package/src/version.ts +1 -1
  67. package/version.d.mts +1 -1
  68. package/version.d.mts.map +1 -1
  69. package/version.d.ts +1 -1
  70. package/version.d.ts.map +1 -1
  71. package/version.js +1 -1
  72. package/version.js.map +1 -1
  73. package/version.mjs +1 -1
  74. package/version.mjs.map +1 -1
package/README.md CHANGED
@@ -26,7 +26,7 @@ Add the `uzu` dependency to your project's `package.json`:
26
26
 
27
27
  ```json
28
28
  "dependencies": {
29
- "@trymirai/uzu": "0.1.50"
29
+ "@trymirai/uzu": "0.2.0"
30
30
  }
31
31
  ```
32
32
 
@@ -52,6 +52,7 @@ pnpm run tsn examples/chatStaticContext.ts
52
52
  pnpm run tsn examples/summarization.ts
53
53
  pnpm run tsn examples/classification.ts
54
54
  pnpm run tsn examples/cloud.ts
55
+ pnpm run tsn examples/structutedOutput.ts
55
56
  ```
56
57
 
57
58
  ### Chat
@@ -285,6 +286,45 @@ main().catch((error) => {
285
286
  });
286
287
  ```
287
288
 
289
+ ### Structured Output
290
+
291
+ Sometimes you want the generated output to be valid JSON with predefined fields. You can use `GrammarConfig` to manually specify a JSON schema, or define the schema using [Zod](https://github.com/colinhacks/zod).
292
+
293
+ ```ts
294
+ import Engine, { GrammarConfig } from '@trymirai/uzu';
295
+ import * as z from "zod";
296
+
297
+ const CountryType = z.object({
298
+ name: z.string(),
299
+ capital: z.string(),
300
+ });
301
+ const CountryListType = z.array(CountryType);
302
+
303
+ async function main() {
304
+ const output = await Engine.create('API_KEY')
305
+ .chatModel('Qwen/Qwen3-0.6B')
306
+ .download((update) => {
307
+ console.log('Progress:', update.progress);
308
+ })
309
+ .session()
310
+ .enableThinking(false)
311
+ .grammarConfig(GrammarConfig.fromType(CountryListType))
312
+ .reply(
313
+ "Give me a JSON object containing a list of 3 countries, where each country has name and capital fields",
314
+ (partialOutput) => {
315
+ return true;
316
+ },
317
+ );
318
+
319
+ const countries = output.text.parsed.structuredResponse(CountryListType);
320
+ console.log(countries);
321
+ }
322
+
323
+ main().catch((error) => {
324
+ console.error(error);
325
+ });
326
+ ```
327
+
288
328
  ## Troubleshooting
289
329
 
290
330
  If you experience any problems, please contact us via [Discord](https://discord.com/invite/trymirai) or [email](mailto:contact@getmirai.co).
@@ -0,0 +1,13 @@
1
+ import * as z from 'zod';
2
+ import { GrammarConfig as NapiGrammarConfig } from "../napi/uzu.mjs";
3
+ import { ToNapi } from "./napi.mjs";
4
+ export declare class GrammarConfig implements ToNapi<NapiGrammarConfig> {
5
+ private readonly napiGrammarConfig;
6
+ private constructor();
7
+ static jsonSchema(schema: string): GrammarConfig;
8
+ static regex(pattern: string): GrammarConfig;
9
+ static builtinJson(): GrammarConfig;
10
+ static fromType(type: z.ZodType): GrammarConfig;
11
+ toNapi(): NapiGrammarConfig;
12
+ }
13
+ //# sourceMappingURL=grammarConfig.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"grammarConfig.d.mts","sourceRoot":"","sources":["../src/bridging/grammarConfig.ts"],"names":[],"mappings":"OAAO,KAAK,CAAC,MAAM,KAAK;OACjB,EAAE,aAAa,IAAI,iBAAiB,EAAE;OACtC,EAAE,MAAM,EAAE;AAEjB,qBAAa,aAAc,YAAW,MAAM,CAAC,iBAAiB,CAAC;IAC3D,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAoB;IAEtD,OAAO;IAIP,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,aAAa;IAShD,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,aAAa;IAK5C,MAAM,CAAC,WAAW,IAAI,aAAa;IAKnC,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,GAAG,aAAa;IAM/C,MAAM,IAAI,iBAAiB;CAG9B"}
@@ -0,0 +1,13 @@
1
+ import * as z from 'zod';
2
+ import { GrammarConfig as NapiGrammarConfig } from "../napi/uzu.js";
3
+ import { ToNapi } from "./napi.js";
4
+ export declare class GrammarConfig implements ToNapi<NapiGrammarConfig> {
5
+ private readonly napiGrammarConfig;
6
+ private constructor();
7
+ static jsonSchema(schema: string): GrammarConfig;
8
+ static regex(pattern: string): GrammarConfig;
9
+ static builtinJson(): GrammarConfig;
10
+ static fromType(type: z.ZodType): GrammarConfig;
11
+ toNapi(): NapiGrammarConfig;
12
+ }
13
+ //# sourceMappingURL=grammarConfig.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"grammarConfig.d.ts","sourceRoot":"","sources":["../src/bridging/grammarConfig.ts"],"names":[],"mappings":"OAAO,KAAK,CAAC,MAAM,KAAK;OACjB,EAAE,aAAa,IAAI,iBAAiB,EAAE;OACtC,EAAE,MAAM,EAAE;AAEjB,qBAAa,aAAc,YAAW,MAAM,CAAC,iBAAiB,CAAC;IAC3D,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAoB;IAEtD,OAAO;IAIP,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,aAAa;IAShD,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,aAAa;IAK5C,MAAM,CAAC,WAAW,IAAI,aAAa;IAKnC,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,GAAG,aAAa;IAM/C,MAAM,IAAI,iBAAiB;CAG9B"}
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.GrammarConfig = void 0;
4
+ const tslib_1 = require("../internal/tslib.js");
5
+ const z = tslib_1.__importStar(require("zod"));
6
+ class GrammarConfig {
7
+ constructor(napiGrammarConfig) {
8
+ this.napiGrammarConfig = napiGrammarConfig;
9
+ }
10
+ static jsonSchema(schema) {
11
+ let a = z.object({
12
+ name: z.string(),
13
+ age: z.number(),
14
+ });
15
+ const napiGrammarConfig = { type: 'JsonSchema', schema: schema };
16
+ return new GrammarConfig(napiGrammarConfig);
17
+ }
18
+ static regex(pattern) {
19
+ const napiGrammarConfig = { type: 'Regex', pattern: pattern };
20
+ return new GrammarConfig(napiGrammarConfig);
21
+ }
22
+ static builtinJson() {
23
+ const napiGrammarConfig = { type: 'BuiltinJson' };
24
+ return new GrammarConfig(napiGrammarConfig);
25
+ }
26
+ static fromType(type) {
27
+ let schema = z.toJSONSchema(type);
28
+ let schemaString = JSON.stringify(schema);
29
+ return GrammarConfig.jsonSchema(schemaString);
30
+ }
31
+ toNapi() {
32
+ return this.napiGrammarConfig;
33
+ }
34
+ }
35
+ exports.GrammarConfig = GrammarConfig;
36
+ //# sourceMappingURL=grammarConfig.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"grammarConfig.js","sourceRoot":"","sources":["../src/bridging/grammarConfig.ts"],"names":[],"mappings":";;;;AAAA,+CAAyB;AAIzB,MAAa,aAAa;IAGtB,YAAoB,iBAAoC;QACpD,IAAI,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;IAC/C,CAAC;IAED,MAAM,CAAC,UAAU,CAAC,MAAc;QAC5B,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC;YACb,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;YAChB,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE;SAClB,CAAC,CAAC;QACH,MAAM,iBAAiB,GAAsB,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;QACpF,OAAO,IAAI,aAAa,CAAC,iBAAiB,CAAC,CAAC;IAChD,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,OAAe;QACxB,MAAM,iBAAiB,GAAsB,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC;QACjF,OAAO,IAAI,aAAa,CAAC,iBAAiB,CAAC,CAAC;IAChD,CAAC;IAED,MAAM,CAAC,WAAW;QACd,MAAM,iBAAiB,GAAsB,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC;QACrE,OAAO,IAAI,aAAa,CAAC,iBAAiB,CAAC,CAAC;IAChD,CAAC;IAED,MAAM,CAAC,QAAQ,CAAC,IAAe;QAC3B,IAAI,MAAM,GAAG,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QAClC,IAAI,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QAC1C,OAAO,aAAa,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;IAClD,CAAC;IAED,MAAM;QACF,OAAO,IAAI,CAAC,iBAAiB,CAAC;IAClC,CAAC;CACJ;AAnCD,sCAmCC"}
@@ -0,0 +1,31 @@
1
+ import * as z from 'zod';
2
+ export class GrammarConfig {
3
+ constructor(napiGrammarConfig) {
4
+ this.napiGrammarConfig = napiGrammarConfig;
5
+ }
6
+ static jsonSchema(schema) {
7
+ let a = z.object({
8
+ name: z.string(),
9
+ age: z.number(),
10
+ });
11
+ const napiGrammarConfig = { type: 'JsonSchema', schema: schema };
12
+ return new GrammarConfig(napiGrammarConfig);
13
+ }
14
+ static regex(pattern) {
15
+ const napiGrammarConfig = { type: 'Regex', pattern: pattern };
16
+ return new GrammarConfig(napiGrammarConfig);
17
+ }
18
+ static builtinJson() {
19
+ const napiGrammarConfig = { type: 'BuiltinJson' };
20
+ return new GrammarConfig(napiGrammarConfig);
21
+ }
22
+ static fromType(type) {
23
+ let schema = z.toJSONSchema(type);
24
+ let schemaString = JSON.stringify(schema);
25
+ return GrammarConfig.jsonSchema(schemaString);
26
+ }
27
+ toNapi() {
28
+ return this.napiGrammarConfig;
29
+ }
30
+ }
31
+ //# sourceMappingURL=grammarConfig.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"grammarConfig.mjs","sourceRoot":"","sources":["../src/bridging/grammarConfig.ts"],"names":[],"mappings":"OAAO,KAAK,CAAC,MAAM,KAAK;AAIxB,MAAM,OAAO,aAAa;IAGtB,YAAoB,iBAAoC;QACpD,IAAI,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;IAC/C,CAAC;IAED,MAAM,CAAC,UAAU,CAAC,MAAc;QAC5B,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC;YACb,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;YAChB,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE;SAClB,CAAC,CAAC;QACH,MAAM,iBAAiB,GAAsB,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;QACpF,OAAO,IAAI,aAAa,CAAC,iBAAiB,CAAC,CAAC;IAChD,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,OAAe;QACxB,MAAM,iBAAiB,GAAsB,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC;QACjF,OAAO,IAAI,aAAa,CAAC,iBAAiB,CAAC,CAAC;IAChD,CAAC;IAED,MAAM,CAAC,WAAW;QACd,MAAM,iBAAiB,GAAsB,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC;QACrE,OAAO,IAAI,aAAa,CAAC,iBAAiB,CAAC,CAAC;IAChD,CAAC;IAED,MAAM,CAAC,QAAQ,CAAC,IAAe;QAC3B,IAAI,MAAM,GAAG,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QAClC,IAAI,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QAC1C,OAAO,aAAa,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;IAClD,CAAC;IAED,MAAM;QACF,OAAO,IAAI,CAAC,iBAAiB,CAAC;IAClC,CAAC;CACJ"}
@@ -1,8 +1,10 @@
1
+ import * as z from 'zod';
1
2
  import { ParsedText as NapiParsedText } from "../napi/uzu.mjs";
2
3
  export declare class ParsedText {
3
4
  readonly chainOfThought: string | null;
4
5
  readonly response: string | null;
5
6
  private constructor();
6
7
  static fromNapi(napiEntity: NapiParsedText): ParsedText;
8
+ structuredResponse<T extends z.ZodType>(type: T): z.infer<T> | null;
7
9
  }
8
10
  //# sourceMappingURL=parsedText.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"parsedText.d.mts","sourceRoot":"","sources":["../src/bridging/parsedText.ts"],"names":[],"mappings":"OAAO,EAAE,UAAU,IAAI,cAAc,EAAE;AAEvC,qBAAa,UAAU;IACnB,QAAQ,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IACvC,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IAEjC,OAAO;IAKP,MAAM,CAAC,QAAQ,CAAC,UAAU,EAAE,cAAc,GAAG,UAAU;CAK1D"}
1
+ {"version":3,"file":"parsedText.d.mts","sourceRoot":"","sources":["../src/bridging/parsedText.ts"],"names":[],"mappings":"OAAO,KAAK,CAAC,MAAM,KAAK;OACjB,EAAE,UAAU,IAAI,cAAc,EAAE;AAEvC,qBAAa,UAAU;IACnB,QAAQ,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IACvC,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IAEjC,OAAO;IAKP,MAAM,CAAC,QAAQ,CAAC,UAAU,EAAE,cAAc,GAAG,UAAU;IAMvD,kBAAkB,CAAC,CAAC,SAAS,CAAC,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,IAAI;CAQtE"}
@@ -1,8 +1,10 @@
1
+ import * as z from 'zod';
1
2
  import { ParsedText as NapiParsedText } from "../napi/uzu.js";
2
3
  export declare class ParsedText {
3
4
  readonly chainOfThought: string | null;
4
5
  readonly response: string | null;
5
6
  private constructor();
6
7
  static fromNapi(napiEntity: NapiParsedText): ParsedText;
8
+ structuredResponse<T extends z.ZodType>(type: T): z.infer<T> | null;
7
9
  }
8
10
  //# sourceMappingURL=parsedText.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"parsedText.d.ts","sourceRoot":"","sources":["../src/bridging/parsedText.ts"],"names":[],"mappings":"OAAO,EAAE,UAAU,IAAI,cAAc,EAAE;AAEvC,qBAAa,UAAU;IACnB,QAAQ,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IACvC,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IAEjC,OAAO;IAKP,MAAM,CAAC,QAAQ,CAAC,UAAU,EAAE,cAAc,GAAG,UAAU;CAK1D"}
1
+ {"version":3,"file":"parsedText.d.ts","sourceRoot":"","sources":["../src/bridging/parsedText.ts"],"names":[],"mappings":"OAAO,KAAK,CAAC,MAAM,KAAK;OACjB,EAAE,UAAU,IAAI,cAAc,EAAE;AAEvC,qBAAa,UAAU;IACnB,QAAQ,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IACvC,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IAEjC,OAAO;IAKP,MAAM,CAAC,QAAQ,CAAC,UAAU,EAAE,cAAc,GAAG,UAAU;IAMvD,kBAAkB,CAAC,CAAC,SAAS,CAAC,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,IAAI;CAQtE"}
@@ -11,6 +11,14 @@ class ParsedText {
11
11
  const response = napiEntity.response ?? null;
12
12
  return new ParsedText(chainOfThought, response);
13
13
  }
14
+ structuredResponse(type) {
15
+ if (this.response === null) {
16
+ return null;
17
+ }
18
+ const data = JSON.parse(this.response);
19
+ const result = type.parse(data);
20
+ return result;
21
+ }
14
22
  }
15
23
  exports.ParsedText = ParsedText;
16
24
  //# sourceMappingURL=parsedText.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"parsedText.js","sourceRoot":"","sources":["../src/bridging/parsedText.ts"],"names":[],"mappings":";;;AAEA,MAAa,UAAU;IAInB,YAAoB,cAA6B,EAAE,QAAuB;QACtE,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;QACrC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC7B,CAAC;IAED,MAAM,CAAC,QAAQ,CAAC,UAA0B;QACtC,MAAM,cAAc,GAAG,UAAU,CAAC,cAAc,IAAI,IAAI,CAAC;QACzD,MAAM,QAAQ,GAAG,UAAU,CAAC,QAAQ,IAAI,IAAI,CAAC;QAC7C,OAAO,IAAI,UAAU,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAC;IACpD,CAAC;CACJ;AAdD,gCAcC"}
1
+ {"version":3,"file":"parsedText.js","sourceRoot":"","sources":["../src/bridging/parsedText.ts"],"names":[],"mappings":";;;AAGA,MAAa,UAAU;IAInB,YAAoB,cAA6B,EAAE,QAAuB;QACtE,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;QACrC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC7B,CAAC;IAED,MAAM,CAAC,QAAQ,CAAC,UAA0B;QACtC,MAAM,cAAc,GAAG,UAAU,CAAC,cAAc,IAAI,IAAI,CAAC;QACzD,MAAM,QAAQ,GAAG,UAAU,CAAC,QAAQ,IAAI,IAAI,CAAC;QAC7C,OAAO,IAAI,UAAU,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAC;IACpD,CAAC;IAED,kBAAkB,CAAsB,IAAO;QAC3C,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,EAAE,CAAC;YACzB,OAAO,IAAI,CAAC;QAChB,CAAC;QACD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACvC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAChC,OAAO,MAAM,CAAC;IAClB,CAAC;CACJ;AAvBD,gCAuBC"}
@@ -8,5 +8,13 @@ export class ParsedText {
8
8
  const response = napiEntity.response ?? null;
9
9
  return new ParsedText(chainOfThought, response);
10
10
  }
11
+ structuredResponse(type) {
12
+ if (this.response === null) {
13
+ return null;
14
+ }
15
+ const data = JSON.parse(this.response);
16
+ const result = type.parse(data);
17
+ return result;
18
+ }
11
19
  }
12
20
  //# sourceMappingURL=parsedText.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"parsedText.mjs","sourceRoot":"","sources":["../src/bridging/parsedText.ts"],"names":[],"mappings":"AAEA,MAAM,OAAO,UAAU;IAInB,YAAoB,cAA6B,EAAE,QAAuB;QACtE,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;QACrC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC7B,CAAC;IAED,MAAM,CAAC,QAAQ,CAAC,UAA0B;QACtC,MAAM,cAAc,GAAG,UAAU,CAAC,cAAc,IAAI,IAAI,CAAC;QACzD,MAAM,QAAQ,GAAG,UAAU,CAAC,QAAQ,IAAI,IAAI,CAAC;QAC7C,OAAO,IAAI,UAAU,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAC;IACpD,CAAC;CACJ"}
1
+ {"version":3,"file":"parsedText.mjs","sourceRoot":"","sources":["../src/bridging/parsedText.ts"],"names":[],"mappings":"AAGA,MAAM,OAAO,UAAU;IAInB,YAAoB,cAA6B,EAAE,QAAuB;QACtE,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;QACrC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC7B,CAAC;IAED,MAAM,CAAC,QAAQ,CAAC,UAA0B;QACtC,MAAM,cAAc,GAAG,UAAU,CAAC,cAAc,IAAI,IAAI,CAAC;QACzD,MAAM,QAAQ,GAAG,UAAU,CAAC,QAAQ,IAAI,IAAI,CAAC;QAC7C,OAAO,IAAI,UAAU,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAC;IACpD,CAAC;IAED,kBAAkB,CAAsB,IAAO;QAC3C,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,EAAE,CAAC;YACzB,OAAO,IAAI,CAAC;QAChB,CAAC;QACD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACvC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAChC,OAAO,MAAM,CAAC;IAClB,CAAC;CACJ"}
@@ -1,15 +1,18 @@
1
1
  import { RunConfig as NapiRunConfig } from "../napi/uzu.mjs";
2
+ import { GrammarConfig } from "./grammarConfig.mjs";
2
3
  import { ToNapi } from "./napi.mjs";
3
4
  import { SamplingPolicy } from "./samplingPolicy.mjs";
4
5
  export declare class RunConfig implements ToNapi<NapiRunConfig> {
5
6
  readonly tokensLimit: number;
6
7
  readonly enableThinking: boolean;
7
8
  readonly samplingPolicy: SamplingPolicy;
9
+ readonly grammarConfig: GrammarConfig | null;
8
10
  private constructor();
9
11
  static default(): RunConfig;
10
12
  withTokensLimit(tokensLimit: number): RunConfig;
11
13
  withEnableThinking(enableThinking: boolean): RunConfig;
12
14
  withSamplingPolicy(samplingPolicy: SamplingPolicy): RunConfig;
15
+ withGrammarConfig(grammarConfig: GrammarConfig | null): RunConfig;
13
16
  toNapi(): NapiRunConfig;
14
17
  }
15
18
  //# sourceMappingURL=runConfig.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"runConfig.d.mts","sourceRoot":"","sources":["../src/bridging/runConfig.ts"],"names":[],"mappings":"OAAO,EAAE,SAAS,IAAI,aAAa,EAAE;OAC9B,EAAE,MAAM,EAAE;OACV,EAAE,cAAc,EAAE;AAEzB,qBAAa,SAAU,YAAW,MAAM,CAAC,aAAa,CAAC;IACnD,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC;IACjC,QAAQ,CAAC,cAAc,EAAE,cAAc,CAAC;IAExC,OAAO;IAMP,MAAM,CAAC,OAAO,IAAI,SAAS;IAI3B,eAAe,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS;IAI/C,kBAAkB,CAAC,cAAc,EAAE,OAAO,GAAG,SAAS;IAItD,kBAAkB,CAAC,cAAc,EAAE,cAAc,GAAG,SAAS;IAI7D,MAAM,IAAI,aAAa;CAS1B"}
1
+ {"version":3,"file":"runConfig.d.mts","sourceRoot":"","sources":["../src/bridging/runConfig.ts"],"names":[],"mappings":"OAAO,EAAE,SAAS,IAAI,aAAa,EAAE;OAC9B,EAAE,aAAa,EAAE;OACjB,EAAE,MAAM,EAAE;OACV,EAAE,cAAc,EAAE;AAEzB,qBAAa,SAAU,YAAW,MAAM,CAAC,aAAa,CAAC;IACnD,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC;IACjC,QAAQ,CAAC,cAAc,EAAE,cAAc,CAAC;IACxC,QAAQ,CAAC,aAAa,EAAE,aAAa,GAAG,IAAI,CAAC;IAE7C,OAAO;IAYP,MAAM,CAAC,OAAO,IAAI,SAAS;IAI3B,eAAe,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS;IAI/C,kBAAkB,CAAC,cAAc,EAAE,OAAO,GAAG,SAAS;IAItD,kBAAkB,CAAC,cAAc,EAAE,cAAc,GAAG,SAAS;IAI7D,iBAAiB,CAAC,aAAa,EAAE,aAAa,GAAG,IAAI,GAAG,SAAS;IAIjE,MAAM,IAAI,aAAa;CAa1B"}
@@ -1,15 +1,18 @@
1
1
  import { RunConfig as NapiRunConfig } from "../napi/uzu.js";
2
+ import { GrammarConfig } from "./grammarConfig.js";
2
3
  import { ToNapi } from "./napi.js";
3
4
  import { SamplingPolicy } from "./samplingPolicy.js";
4
5
  export declare class RunConfig implements ToNapi<NapiRunConfig> {
5
6
  readonly tokensLimit: number;
6
7
  readonly enableThinking: boolean;
7
8
  readonly samplingPolicy: SamplingPolicy;
9
+ readonly grammarConfig: GrammarConfig | null;
8
10
  private constructor();
9
11
  static default(): RunConfig;
10
12
  withTokensLimit(tokensLimit: number): RunConfig;
11
13
  withEnableThinking(enableThinking: boolean): RunConfig;
12
14
  withSamplingPolicy(samplingPolicy: SamplingPolicy): RunConfig;
15
+ withGrammarConfig(grammarConfig: GrammarConfig | null): RunConfig;
13
16
  toNapi(): NapiRunConfig;
14
17
  }
15
18
  //# sourceMappingURL=runConfig.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"runConfig.d.ts","sourceRoot":"","sources":["../src/bridging/runConfig.ts"],"names":[],"mappings":"OAAO,EAAE,SAAS,IAAI,aAAa,EAAE;OAC9B,EAAE,MAAM,EAAE;OACV,EAAE,cAAc,EAAE;AAEzB,qBAAa,SAAU,YAAW,MAAM,CAAC,aAAa,CAAC;IACnD,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC;IACjC,QAAQ,CAAC,cAAc,EAAE,cAAc,CAAC;IAExC,OAAO;IAMP,MAAM,CAAC,OAAO,IAAI,SAAS;IAI3B,eAAe,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS;IAI/C,kBAAkB,CAAC,cAAc,EAAE,OAAO,GAAG,SAAS;IAItD,kBAAkB,CAAC,cAAc,EAAE,cAAc,GAAG,SAAS;IAI7D,MAAM,IAAI,aAAa;CAS1B"}
1
+ {"version":3,"file":"runConfig.d.ts","sourceRoot":"","sources":["../src/bridging/runConfig.ts"],"names":[],"mappings":"OAAO,EAAE,SAAS,IAAI,aAAa,EAAE;OAC9B,EAAE,aAAa,EAAE;OACjB,EAAE,MAAM,EAAE;OACV,EAAE,cAAc,EAAE;AAEzB,qBAAa,SAAU,YAAW,MAAM,CAAC,aAAa,CAAC;IACnD,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC;IACjC,QAAQ,CAAC,cAAc,EAAE,cAAc,CAAC;IACxC,QAAQ,CAAC,aAAa,EAAE,aAAa,GAAG,IAAI,CAAC;IAE7C,OAAO;IAYP,MAAM,CAAC,OAAO,IAAI,SAAS;IAI3B,eAAe,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS;IAI/C,kBAAkB,CAAC,cAAc,EAAE,OAAO,GAAG,SAAS;IAItD,kBAAkB,CAAC,cAAc,EAAE,cAAc,GAAG,SAAS;IAI7D,iBAAiB,CAAC,aAAa,EAAE,aAAa,GAAG,IAAI,GAAG,SAAS;IAIjE,MAAM,IAAI,aAAa;CAa1B"}
@@ -3,30 +3,38 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.RunConfig = void 0;
4
4
  const samplingPolicy_1 = require("./samplingPolicy.js");
5
5
  class RunConfig {
6
- constructor(tokensLimit, enableThinking, samplingPolicy) {
6
+ constructor(tokensLimit, enableThinking, samplingPolicy, grammarConfig) {
7
7
  this.tokensLimit = tokensLimit;
8
8
  this.enableThinking = enableThinking;
9
9
  this.samplingPolicy = samplingPolicy;
10
+ this.grammarConfig = grammarConfig;
10
11
  }
11
12
  static default() {
12
- return new RunConfig(1024, true, samplingPolicy_1.SamplingPolicy.default());
13
+ return new RunConfig(1024, true, samplingPolicy_1.SamplingPolicy.default(), null);
13
14
  }
14
15
  withTokensLimit(tokensLimit) {
15
- return new RunConfig(tokensLimit, this.enableThinking, this.samplingPolicy);
16
+ return new RunConfig(tokensLimit, this.enableThinking, this.samplingPolicy, this.grammarConfig);
16
17
  }
17
18
  withEnableThinking(enableThinking) {
18
- return new RunConfig(this.tokensLimit, enableThinking, this.samplingPolicy);
19
+ return new RunConfig(this.tokensLimit, enableThinking, this.samplingPolicy, this.grammarConfig);
19
20
  }
20
21
  withSamplingPolicy(samplingPolicy) {
21
- return new RunConfig(this.tokensLimit, this.enableThinking, samplingPolicy);
22
+ return new RunConfig(this.tokensLimit, this.enableThinking, samplingPolicy, this.grammarConfig);
23
+ }
24
+ withGrammarConfig(grammarConfig) {
25
+ return new RunConfig(this.tokensLimit, this.enableThinking, this.samplingPolicy, grammarConfig);
22
26
  }
23
27
  toNapi() {
24
28
  const napiSamplingPolicy = this.samplingPolicy.toNapi();
25
- const napiRunConfig = {
29
+ let napiRunConfig = {
26
30
  tokensLimit: this.tokensLimit,
27
31
  enableThinking: this.enableThinking,
28
32
  samplingPolicy: napiSamplingPolicy,
29
33
  };
34
+ if (this.grammarConfig !== null) {
35
+ let napiGrammarConfig = this.grammarConfig.toNapi();
36
+ napiRunConfig.grammarConfig = napiGrammarConfig;
37
+ }
30
38
  return napiRunConfig;
31
39
  }
32
40
  }
@@ -1 +1 @@
1
- {"version":3,"file":"runConfig.js","sourceRoot":"","sources":["../src/bridging/runConfig.ts"],"names":[],"mappings":";;;AAEA,wDAAkD;AAElD,MAAa,SAAS;IAKlB,YAAoB,WAAmB,EAAE,cAAuB,EAAE,cAA8B;QAC5F,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;QACrC,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;IACzC,CAAC;IAED,MAAM,CAAC,OAAO;QACV,OAAO,IAAI,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,+BAAc,CAAC,OAAO,EAAE,CAAC,CAAC;IAC/D,CAAC;IAED,eAAe,CAAC,WAAmB;QAC/B,OAAO,IAAI,SAAS,CAAC,WAAW,EAAE,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;IAChF,CAAC;IAED,kBAAkB,CAAC,cAAuB;QACtC,OAAO,IAAI,SAAS,CAAC,IAAI,CAAC,WAAW,EAAE,cAAc,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;IAChF,CAAC;IAED,kBAAkB,CAAC,cAA8B;QAC7C,OAAO,IAAI,SAAS,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,cAAc,EAAE,cAAc,CAAC,CAAC;IAChF,CAAC;IAED,MAAM;QACF,MAAM,kBAAkB,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC;QACxD,MAAM,aAAa,GAAkB;YACjC,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,cAAc,EAAE,IAAI,CAAC,cAAc;YACnC,cAAc,EAAE,kBAAkB;SACrC,CAAC;QACF,OAAO,aAAa,CAAC;IACzB,CAAC;CACJ;AApCD,8BAoCC"}
1
+ {"version":3,"file":"runConfig.js","sourceRoot":"","sources":["../src/bridging/runConfig.ts"],"names":[],"mappings":";;;AAGA,wDAAkD;AAElD,MAAa,SAAS;IAMlB,YACI,WAAmB,EACnB,cAAuB,EACvB,cAA8B,EAC9B,aAAmC;QAEnC,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;QACrC,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;QACrC,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;IACvC,CAAC;IAED,MAAM,CAAC,OAAO;QACV,OAAO,IAAI,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,+BAAc,CAAC,OAAO,EAAE,EAAE,IAAI,CAAC,CAAC;IACrE,CAAC;IAED,eAAe,CAAC,WAAmB;QAC/B,OAAO,IAAI,SAAS,CAAC,WAAW,EAAE,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;IACpG,CAAC;IAED,kBAAkB,CAAC,cAAuB;QACtC,OAAO,IAAI,SAAS,CAAC,IAAI,CAAC,WAAW,EAAE,cAAc,EAAE,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;IACpG,CAAC;IAED,kBAAkB,CAAC,cAA8B;QAC7C,OAAO,IAAI,SAAS,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,cAAc,EAAE,cAAc,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;IACpG,CAAC;IAED,iBAAiB,CAAC,aAAmC;QACjD,OAAO,IAAI,SAAS,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,cAAc,EAAE,aAAa,CAAC,CAAC;IACpG,CAAC;IAED,MAAM;QACF,MAAM,kBAAkB,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC;QACxD,IAAI,aAAa,GAAkB;YAC/B,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,cAAc,EAAE,IAAI,CAAC,cAAc;YACnC,cAAc,EAAE,kBAAkB;SACrC,CAAC;QACF,IAAI,IAAI,CAAC,aAAa,KAAK,IAAI,EAAE,CAAC;YAC9B,IAAI,iBAAiB,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC;YACpD,aAAa,CAAC,aAAa,GAAG,iBAAiB,CAAC;QACpD,CAAC;QACD,OAAO,aAAa,CAAC;IACzB,CAAC;CACJ;AAnDD,8BAmDC"}
@@ -1,29 +1,37 @@
1
1
  import { SamplingPolicy } from "./samplingPolicy.mjs";
2
2
  export class RunConfig {
3
- constructor(tokensLimit, enableThinking, samplingPolicy) {
3
+ constructor(tokensLimit, enableThinking, samplingPolicy, grammarConfig) {
4
4
  this.tokensLimit = tokensLimit;
5
5
  this.enableThinking = enableThinking;
6
6
  this.samplingPolicy = samplingPolicy;
7
+ this.grammarConfig = grammarConfig;
7
8
  }
8
9
  static default() {
9
- return new RunConfig(1024, true, SamplingPolicy.default());
10
+ return new RunConfig(1024, true, SamplingPolicy.default(), null);
10
11
  }
11
12
  withTokensLimit(tokensLimit) {
12
- return new RunConfig(tokensLimit, this.enableThinking, this.samplingPolicy);
13
+ return new RunConfig(tokensLimit, this.enableThinking, this.samplingPolicy, this.grammarConfig);
13
14
  }
14
15
  withEnableThinking(enableThinking) {
15
- return new RunConfig(this.tokensLimit, enableThinking, this.samplingPolicy);
16
+ return new RunConfig(this.tokensLimit, enableThinking, this.samplingPolicy, this.grammarConfig);
16
17
  }
17
18
  withSamplingPolicy(samplingPolicy) {
18
- return new RunConfig(this.tokensLimit, this.enableThinking, samplingPolicy);
19
+ return new RunConfig(this.tokensLimit, this.enableThinking, samplingPolicy, this.grammarConfig);
20
+ }
21
+ withGrammarConfig(grammarConfig) {
22
+ return new RunConfig(this.tokensLimit, this.enableThinking, this.samplingPolicy, grammarConfig);
19
23
  }
20
24
  toNapi() {
21
25
  const napiSamplingPolicy = this.samplingPolicy.toNapi();
22
- const napiRunConfig = {
26
+ let napiRunConfig = {
23
27
  tokensLimit: this.tokensLimit,
24
28
  enableThinking: this.enableThinking,
25
29
  samplingPolicy: napiSamplingPolicy,
26
30
  };
31
+ if (this.grammarConfig !== null) {
32
+ let napiGrammarConfig = this.grammarConfig.toNapi();
33
+ napiRunConfig.grammarConfig = napiGrammarConfig;
34
+ }
27
35
  return napiRunConfig;
28
36
  }
29
37
  }
@@ -1 +1 @@
1
- {"version":3,"file":"runConfig.mjs","sourceRoot":"","sources":["../src/bridging/runConfig.ts"],"names":[],"mappings":"OAEO,EAAE,cAAc,EAAE;AAEzB,MAAM,OAAO,SAAS;IAKlB,YAAoB,WAAmB,EAAE,cAAuB,EAAE,cAA8B;QAC5F,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;QACrC,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;IACzC,CAAC;IAED,MAAM,CAAC,OAAO;QACV,OAAO,IAAI,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,cAAc,CAAC,OAAO,EAAE,CAAC,CAAC;IAC/D,CAAC;IAED,eAAe,CAAC,WAAmB;QAC/B,OAAO,IAAI,SAAS,CAAC,WAAW,EAAE,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;IAChF,CAAC;IAED,kBAAkB,CAAC,cAAuB;QACtC,OAAO,IAAI,SAAS,CAAC,IAAI,CAAC,WAAW,EAAE,cAAc,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;IAChF,CAAC;IAED,kBAAkB,CAAC,cAA8B;QAC7C,OAAO,IAAI,SAAS,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,cAAc,EAAE,cAAc,CAAC,CAAC;IAChF,CAAC;IAED,MAAM;QACF,MAAM,kBAAkB,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC;QACxD,MAAM,aAAa,GAAkB;YACjC,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,cAAc,EAAE,IAAI,CAAC,cAAc;YACnC,cAAc,EAAE,kBAAkB;SACrC,CAAC;QACF,OAAO,aAAa,CAAC;IACzB,CAAC;CACJ"}
1
+ {"version":3,"file":"runConfig.mjs","sourceRoot":"","sources":["../src/bridging/runConfig.ts"],"names":[],"mappings":"OAGO,EAAE,cAAc,EAAE;AAEzB,MAAM,OAAO,SAAS;IAMlB,YACI,WAAmB,EACnB,cAAuB,EACvB,cAA8B,EAC9B,aAAmC;QAEnC,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;QACrC,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;QACrC,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;IACvC,CAAC;IAED,MAAM,CAAC,OAAO;QACV,OAAO,IAAI,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,cAAc,CAAC,OAAO,EAAE,EAAE,IAAI,CAAC,CAAC;IACrE,CAAC;IAED,eAAe,CAAC,WAAmB;QAC/B,OAAO,IAAI,SAAS,CAAC,WAAW,EAAE,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;IACpG,CAAC;IAED,kBAAkB,CAAC,cAAuB;QACtC,OAAO,IAAI,SAAS,CAAC,IAAI,CAAC,WAAW,EAAE,cAAc,EAAE,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;IACpG,CAAC;IAED,kBAAkB,CAAC,cAA8B;QAC7C,OAAO,IAAI,SAAS,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,cAAc,EAAE,cAAc,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;IACpG,CAAC;IAED,iBAAiB,CAAC,aAAmC;QACjD,OAAO,IAAI,SAAS,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,cAAc,EAAE,aAAa,CAAC,CAAC;IACpG,CAAC;IAED,MAAM;QACF,MAAM,kBAAkB,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC;QACxD,IAAI,aAAa,GAAkB;YAC/B,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,cAAc,EAAE,IAAI,CAAC,cAAc;YACnC,cAAc,EAAE,kBAAkB;SACrC,CAAC;QACF,IAAI,IAAI,CAAC,aAAa,KAAK,IAAI,EAAE,CAAC;YAC9B,IAAI,iBAAiB,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC;YACpD,aAAa,CAAC,aAAa,GAAG,iBAAiB,CAAC;QACpD,CAAC;QACD,OAAO,aAAa,CAAC;IACzB,CAAC;CACJ"}
@@ -4,7 +4,7 @@ export declare class SamplingMethod implements ToNapi<NapiSamplingMethod> {
4
4
  private readonly napiSamplingMethod;
5
5
  private constructor();
6
6
  static greedy(): SamplingMethod;
7
- static stochastic(temperature: number | null, topK: number | null, topP: number | null): SamplingMethod;
7
+ static stochastic(temperature: number | null, topK: number | null, topP: number | null, minP: number | null): SamplingMethod;
8
8
  toNapi(): NapiSamplingMethod;
9
9
  }
10
10
  //# sourceMappingURL=samplingMethod.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"samplingMethod.d.mts","sourceRoot":"","sources":["../src/bridging/samplingMethod.ts"],"names":[],"mappings":"OAAO,EAAE,cAAc,IAAI,kBAAkB,EAAE;OACxC,EAAE,MAAM,EAAE;AAEjB,qBAAa,cAAe,YAAW,MAAM,CAAC,kBAAkB,CAAC;IAC7D,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAqB;IAExD,OAAO;IAIP,MAAM,CAAC,MAAM,IAAI,cAAc;IAK/B,MAAM,CAAC,UAAU,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,cAAc;IAgBvG,MAAM,IAAI,kBAAkB;CAG/B"}
1
+ {"version":3,"file":"samplingMethod.d.mts","sourceRoot":"","sources":["../src/bridging/samplingMethod.ts"],"names":[],"mappings":"OAAO,EAAE,cAAc,IAAI,kBAAkB,EAAE;OACxC,EAAE,MAAM,EAAE;AAEjB,qBAAa,cAAe,YAAW,MAAM,CAAC,kBAAkB,CAAC;IAC7D,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAqB;IAExD,OAAO;IAIP,MAAM,CAAC,MAAM,IAAI,cAAc;IAK/B,MAAM,CAAC,UAAU,CACb,WAAW,EAAE,MAAM,GAAG,IAAI,EAC1B,IAAI,EAAE,MAAM,GAAG,IAAI,EACnB,IAAI,EAAE,MAAM,GAAG,IAAI,EACnB,IAAI,EAAE,MAAM,GAAG,IAAI,GACpB,cAAc;IAmBjB,MAAM,IAAI,kBAAkB;CAG/B"}
@@ -4,7 +4,7 @@ export declare class SamplingMethod implements ToNapi<NapiSamplingMethod> {
4
4
  private readonly napiSamplingMethod;
5
5
  private constructor();
6
6
  static greedy(): SamplingMethod;
7
- static stochastic(temperature: number | null, topK: number | null, topP: number | null): SamplingMethod;
7
+ static stochastic(temperature: number | null, topK: number | null, topP: number | null, minP: number | null): SamplingMethod;
8
8
  toNapi(): NapiSamplingMethod;
9
9
  }
10
10
  //# sourceMappingURL=samplingMethod.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"samplingMethod.d.ts","sourceRoot":"","sources":["../src/bridging/samplingMethod.ts"],"names":[],"mappings":"OAAO,EAAE,cAAc,IAAI,kBAAkB,EAAE;OACxC,EAAE,MAAM,EAAE;AAEjB,qBAAa,cAAe,YAAW,MAAM,CAAC,kBAAkB,CAAC;IAC7D,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAqB;IAExD,OAAO;IAIP,MAAM,CAAC,MAAM,IAAI,cAAc;IAK/B,MAAM,CAAC,UAAU,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,cAAc;IAgBvG,MAAM,IAAI,kBAAkB;CAG/B"}
1
+ {"version":3,"file":"samplingMethod.d.ts","sourceRoot":"","sources":["../src/bridging/samplingMethod.ts"],"names":[],"mappings":"OAAO,EAAE,cAAc,IAAI,kBAAkB,EAAE;OACxC,EAAE,MAAM,EAAE;AAEjB,qBAAa,cAAe,YAAW,MAAM,CAAC,kBAAkB,CAAC;IAC7D,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAqB;IAExD,OAAO;IAIP,MAAM,CAAC,MAAM,IAAI,cAAc;IAK/B,MAAM,CAAC,UAAU,CACb,WAAW,EAAE,MAAM,GAAG,IAAI,EAC1B,IAAI,EAAE,MAAM,GAAG,IAAI,EACnB,IAAI,EAAE,MAAM,GAAG,IAAI,EACnB,IAAI,EAAE,MAAM,GAAG,IAAI,GACpB,cAAc;IAmBjB,MAAM,IAAI,kBAAkB;CAG/B"}
@@ -9,7 +9,7 @@ class SamplingMethod {
9
9
  const napiSamplingMethod = { type: 'Greedy' };
10
10
  return new SamplingMethod(napiSamplingMethod);
11
11
  }
12
- static stochastic(temperature, topK, topP) {
12
+ static stochastic(temperature, topK, topP, minP) {
13
13
  let napiSamplingMethod = {
14
14
  type: 'Stochastic',
15
15
  };
@@ -22,6 +22,9 @@ class SamplingMethod {
22
22
  if (topP !== null) {
23
23
  napiSamplingMethod.topP = topP;
24
24
  }
25
+ if (minP !== null) {
26
+ napiSamplingMethod.minP = minP;
27
+ }
25
28
  return new SamplingMethod(napiSamplingMethod);
26
29
  }
27
30
  toNapi() {
@@ -1 +1 @@
1
- {"version":3,"file":"samplingMethod.js","sourceRoot":"","sources":["../src/bridging/samplingMethod.ts"],"names":[],"mappings":";;;AAGA,MAAa,cAAc;IAGvB,YAAoB,kBAAsC;QACtD,IAAI,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;IACjD,CAAC;IAED,MAAM,CAAC,MAAM;QACT,MAAM,kBAAkB,GAAuB,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;QAClE,OAAO,IAAI,cAAc,CAAC,kBAAkB,CAAC,CAAC;IAClD,CAAC;IAED,MAAM,CAAC,UAAU,CAAC,WAA0B,EAAE,IAAmB,EAAE,IAAmB;QAClF,IAAI,kBAAkB,GAAuB;YACzC,IAAI,EAAE,YAAY;SACrB,CAAC;QACF,IAAI,WAAW,KAAK,IAAI,EAAE,CAAC;YACvB,kBAAkB,CAAC,WAAW,GAAG,WAAW,CAAC;QACjD,CAAC;QACD,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;YAChB,kBAAkB,CAAC,IAAI,GAAG,IAAI,CAAC;QACnC,CAAC;QACD,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;YAChB,kBAAkB,CAAC,IAAI,GAAG,IAAI,CAAC;QACnC,CAAC;QACD,OAAO,IAAI,cAAc,CAAC,kBAAkB,CAAC,CAAC;IAClD,CAAC;IAED,MAAM;QACF,OAAO,IAAI,CAAC,kBAAkB,CAAC;IACnC,CAAC;CACJ;AA/BD,wCA+BC"}
1
+ {"version":3,"file":"samplingMethod.js","sourceRoot":"","sources":["../src/bridging/samplingMethod.ts"],"names":[],"mappings":";;;AAGA,MAAa,cAAc;IAGvB,YAAoB,kBAAsC;QACtD,IAAI,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;IACjD,CAAC;IAED,MAAM,CAAC,MAAM;QACT,MAAM,kBAAkB,GAAuB,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;QAClE,OAAO,IAAI,cAAc,CAAC,kBAAkB,CAAC,CAAC;IAClD,CAAC;IAED,MAAM,CAAC,UAAU,CACb,WAA0B,EAC1B,IAAmB,EACnB,IAAmB,EACnB,IAAmB;QAEnB,IAAI,kBAAkB,GAAuB;YACzC,IAAI,EAAE,YAAY;SACrB,CAAC;QACF,IAAI,WAAW,KAAK,IAAI,EAAE,CAAC;YACvB,kBAAkB,CAAC,WAAW,GAAG,WAAW,CAAC;QACjD,CAAC;QACD,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;YAChB,kBAAkB,CAAC,IAAI,GAAG,IAAI,CAAC;QACnC,CAAC;QACD,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;YAChB,kBAAkB,CAAC,IAAI,GAAG,IAAI,CAAC;QACnC,CAAC;QACD,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;YAChB,kBAAkB,CAAC,IAAI,GAAG,IAAI,CAAC;QACnC,CAAC;QACD,OAAO,IAAI,cAAc,CAAC,kBAAkB,CAAC,CAAC;IAClD,CAAC;IAED,MAAM;QACF,OAAO,IAAI,CAAC,kBAAkB,CAAC;IACnC,CAAC;CACJ;AAvCD,wCAuCC"}
@@ -6,7 +6,7 @@ export class SamplingMethod {
6
6
  const napiSamplingMethod = { type: 'Greedy' };
7
7
  return new SamplingMethod(napiSamplingMethod);
8
8
  }
9
- static stochastic(temperature, topK, topP) {
9
+ static stochastic(temperature, topK, topP, minP) {
10
10
  let napiSamplingMethod = {
11
11
  type: 'Stochastic',
12
12
  };
@@ -19,6 +19,9 @@ export class SamplingMethod {
19
19
  if (topP !== null) {
20
20
  napiSamplingMethod.topP = topP;
21
21
  }
22
+ if (minP !== null) {
23
+ napiSamplingMethod.minP = minP;
24
+ }
22
25
  return new SamplingMethod(napiSamplingMethod);
23
26
  }
24
27
  toNapi() {
@@ -1 +1 @@
1
- {"version":3,"file":"samplingMethod.mjs","sourceRoot":"","sources":["../src/bridging/samplingMethod.ts"],"names":[],"mappings":"AAGA,MAAM,OAAO,cAAc;IAGvB,YAAoB,kBAAsC;QACtD,IAAI,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;IACjD,CAAC;IAED,MAAM,CAAC,MAAM;QACT,MAAM,kBAAkB,GAAuB,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;QAClE,OAAO,IAAI,cAAc,CAAC,kBAAkB,CAAC,CAAC;IAClD,CAAC;IAED,MAAM,CAAC,UAAU,CAAC,WAA0B,EAAE,IAAmB,EAAE,IAAmB;QAClF,IAAI,kBAAkB,GAAuB;YACzC,IAAI,EAAE,YAAY;SACrB,CAAC;QACF,IAAI,WAAW,KAAK,IAAI,EAAE,CAAC;YACvB,kBAAkB,CAAC,WAAW,GAAG,WAAW,CAAC;QACjD,CAAC;QACD,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;YAChB,kBAAkB,CAAC,IAAI,GAAG,IAAI,CAAC;QACnC,CAAC;QACD,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;YAChB,kBAAkB,CAAC,IAAI,GAAG,IAAI,CAAC;QACnC,CAAC;QACD,OAAO,IAAI,cAAc,CAAC,kBAAkB,CAAC,CAAC;IAClD,CAAC;IAED,MAAM;QACF,OAAO,IAAI,CAAC,kBAAkB,CAAC;IACnC,CAAC;CACJ"}
1
+ {"version":3,"file":"samplingMethod.mjs","sourceRoot":"","sources":["../src/bridging/samplingMethod.ts"],"names":[],"mappings":"AAGA,MAAM,OAAO,cAAc;IAGvB,YAAoB,kBAAsC;QACtD,IAAI,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;IACjD,CAAC;IAED,MAAM,CAAC,MAAM;QACT,MAAM,kBAAkB,GAAuB,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;QAClE,OAAO,IAAI,cAAc,CAAC,kBAAkB,CAAC,CAAC;IAClD,CAAC;IAED,MAAM,CAAC,UAAU,CACb,WAA0B,EAC1B,IAAmB,EACnB,IAAmB,EACnB,IAAmB;QAEnB,IAAI,kBAAkB,GAAuB;YACzC,IAAI,EAAE,YAAY;SACrB,CAAC;QACF,IAAI,WAAW,KAAK,IAAI,EAAE,CAAC;YACvB,kBAAkB,CAAC,WAAW,GAAG,WAAW,CAAC;QACjD,CAAC;QACD,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;YAChB,kBAAkB,CAAC,IAAI,GAAG,IAAI,CAAC;QACnC,CAAC;QACD,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;YAChB,kBAAkB,CAAC,IAAI,GAAG,IAAI,CAAC;QACnC,CAAC;QACD,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;YAChB,kBAAkB,CAAC,IAAI,GAAG,IAAI,CAAC;QACnC,CAAC;QACD,OAAO,IAAI,cAAc,CAAC,kBAAkB,CAAC,CAAC;IAClD,CAAC;IAED,MAAM;QACF,OAAO,IAAI,CAAC,kBAAkB,CAAC;IACnC,CAAC;CACJ"}
package/index.d.mts CHANGED
@@ -10,6 +10,7 @@ export { DownloadProgressUpdate } from "./bridging/downloadProgressUpdate.mjs";
10
10
  export { DownloadPhase, DownloadState } from "./bridging/downloadState.mjs";
11
11
  export { Engine as default } from "./bridging/engine.mjs";
12
12
  export { FinishReason } from "./bridging/finishReason.mjs";
13
+ export { GrammarConfig } from "./bridging/grammarConfig.mjs";
13
14
  export { Input } from "./bridging/input.mjs";
14
15
  export { Message } from "./bridging/message.mjs";
15
16
  export { ModelType } from "./bridging/modelType.mjs";
package/index.d.mts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.mts","sourceRoot":"","sources":["src/index.ts"],"names":[],"mappings":"OAAO,EAAE,cAAc,EAAE;OAClB,EAAE,SAAS,EAAE;OACb,EAAE,WAAW,EAAE;OACf,EAAE,qBAAqB,EAAE;OACzB,EAAE,MAAM,EAAE;OACV,EAAE,aAAa,EAAE;OACjB,EAAE,WAAW,EAAE;OACf,EAAE,cAAc,EAAE;OAClB,EAAE,sBAAsB,EAAE;OAC1B,EAAE,aAAa,EAAE,aAAa,EAAE;OAChC,EAAE,MAAM,IAAI,OAAO,EAAE;OACrB,EAAE,YAAY,EAAE;OAChB,EAAE,KAAK,EAAE;OACT,EAAE,OAAO,EAAE;OACX,EAAE,SAAS,EAAE;OACb,EAAE,MAAM,EAAE;OACV,EAAE,UAAU,EAAE;OACd,EAAE,eAAe,EAAE;OACnB,EAAE,MAAM,EAAE;OACV,EAAE,IAAI,EAAE;OACR,EAAE,SAAS,EAAE;OACb,EAAE,QAAQ,EAAE;OACZ,EAAE,cAAc,EAAE;OAClB,EAAE,cAAc,EAAE;OAClB,EAAE,YAAY,EAAE;OAChB,EAAE,KAAK,EAAE;OACT,EAAE,SAAS,EAAE;OACb,EAAE,IAAI,EAAE;OACR,EAAE,UAAU,EAAE;OACd,EAAE,WAAW,EAAE;OACf,EAAE,mBAAmB,EAAE;OACvB,EAAE,oBAAoB,EAAE;OACxB,EAAE,qBAAqB,EAAE;OACzB,EAAE,kBAAkB,EAAE;OACtB,EAAE,gBAAgB,EAAE"}
1
+ {"version":3,"file":"index.d.mts","sourceRoot":"","sources":["src/index.ts"],"names":[],"mappings":"OAAO,EAAE,cAAc,EAAE;OAClB,EAAE,SAAS,EAAE;OACb,EAAE,WAAW,EAAE;OACf,EAAE,qBAAqB,EAAE;OACzB,EAAE,MAAM,EAAE;OACV,EAAE,aAAa,EAAE;OACjB,EAAE,WAAW,EAAE;OACf,EAAE,cAAc,EAAE;OAClB,EAAE,sBAAsB,EAAE;OAC1B,EAAE,aAAa,EAAE,aAAa,EAAE;OAChC,EAAE,MAAM,IAAI,OAAO,EAAE;OACrB,EAAE,YAAY,EAAE;OAChB,EAAE,aAAa,EAAE;OACjB,EAAE,KAAK,EAAE;OACT,EAAE,OAAO,EAAE;OACX,EAAE,SAAS,EAAE;OACb,EAAE,MAAM,EAAE;OACV,EAAE,UAAU,EAAE;OACd,EAAE,eAAe,EAAE;OACnB,EAAE,MAAM,EAAE;OACV,EAAE,IAAI,EAAE;OACR,EAAE,SAAS,EAAE;OACb,EAAE,QAAQ,EAAE;OACZ,EAAE,cAAc,EAAE;OAClB,EAAE,cAAc,EAAE;OAClB,EAAE,YAAY,EAAE;OAChB,EAAE,KAAK,EAAE;OACT,EAAE,SAAS,EAAE;OACb,EAAE,IAAI,EAAE;OACR,EAAE,UAAU,EAAE;OACd,EAAE,WAAW,EAAE;OACf,EAAE,mBAAmB,EAAE;OACvB,EAAE,oBAAoB,EAAE;OACxB,EAAE,qBAAqB,EAAE;OACzB,EAAE,kBAAkB,EAAE;OACtB,EAAE,gBAAgB,EAAE"}
package/index.d.ts CHANGED
@@ -10,6 +10,7 @@ export { DownloadProgressUpdate } from "./bridging/downloadProgressUpdate.js";
10
10
  export { DownloadPhase, DownloadState } from "./bridging/downloadState.js";
11
11
  export { Engine as default } from "./bridging/engine.js";
12
12
  export { FinishReason } from "./bridging/finishReason.js";
13
+ export { GrammarConfig } from "./bridging/grammarConfig.js";
13
14
  export { Input } from "./bridging/input.js";
14
15
  export { Message } from "./bridging/message.js";
15
16
  export { ModelType } from "./bridging/modelType.js";
package/index.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["src/index.ts"],"names":[],"mappings":"OAAO,EAAE,cAAc,EAAE;OAClB,EAAE,SAAS,EAAE;OACb,EAAE,WAAW,EAAE;OACf,EAAE,qBAAqB,EAAE;OACzB,EAAE,MAAM,EAAE;OACV,EAAE,aAAa,EAAE;OACjB,EAAE,WAAW,EAAE;OACf,EAAE,cAAc,EAAE;OAClB,EAAE,sBAAsB,EAAE;OAC1B,EAAE,aAAa,EAAE,aAAa,EAAE;OAChC,EAAE,MAAM,IAAI,OAAO,EAAE;OACrB,EAAE,YAAY,EAAE;OAChB,EAAE,KAAK,EAAE;OACT,EAAE,OAAO,EAAE;OACX,EAAE,SAAS,EAAE;OACb,EAAE,MAAM,EAAE;OACV,EAAE,UAAU,EAAE;OACd,EAAE,eAAe,EAAE;OACnB,EAAE,MAAM,EAAE;OACV,EAAE,IAAI,EAAE;OACR,EAAE,SAAS,EAAE;OACb,EAAE,QAAQ,EAAE;OACZ,EAAE,cAAc,EAAE;OAClB,EAAE,cAAc,EAAE;OAClB,EAAE,YAAY,EAAE;OAChB,EAAE,KAAK,EAAE;OACT,EAAE,SAAS,EAAE;OACb,EAAE,IAAI,EAAE;OACR,EAAE,UAAU,EAAE;OACd,EAAE,WAAW,EAAE;OACf,EAAE,mBAAmB,EAAE;OACvB,EAAE,oBAAoB,EAAE;OACxB,EAAE,qBAAqB,EAAE;OACzB,EAAE,kBAAkB,EAAE;OACtB,EAAE,gBAAgB,EAAE"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["src/index.ts"],"names":[],"mappings":"OAAO,EAAE,cAAc,EAAE;OAClB,EAAE,SAAS,EAAE;OACb,EAAE,WAAW,EAAE;OACf,EAAE,qBAAqB,EAAE;OACzB,EAAE,MAAM,EAAE;OACV,EAAE,aAAa,EAAE;OACjB,EAAE,WAAW,EAAE;OACf,EAAE,cAAc,EAAE;OAClB,EAAE,sBAAsB,EAAE;OAC1B,EAAE,aAAa,EAAE,aAAa,EAAE;OAChC,EAAE,MAAM,IAAI,OAAO,EAAE;OACrB,EAAE,YAAY,EAAE;OAChB,EAAE,aAAa,EAAE;OACjB,EAAE,KAAK,EAAE;OACT,EAAE,OAAO,EAAE;OACX,EAAE,SAAS,EAAE;OACb,EAAE,MAAM,EAAE;OACV,EAAE,UAAU,EAAE;OACd,EAAE,eAAe,EAAE;OACnB,EAAE,MAAM,EAAE;OACV,EAAE,IAAI,EAAE;OACR,EAAE,SAAS,EAAE;OACb,EAAE,QAAQ,EAAE;OACZ,EAAE,cAAc,EAAE;OAClB,EAAE,cAAc,EAAE;OAClB,EAAE,YAAY,EAAE;OAChB,EAAE,KAAK,EAAE;OACT,EAAE,SAAS,EAAE;OACb,EAAE,IAAI,EAAE;OACR,EAAE,UAAU,EAAE;OACd,EAAE,WAAW,EAAE;OACf,EAAE,mBAAmB,EAAE;OACvB,EAAE,oBAAoB,EAAE;OACxB,EAAE,qBAAqB,EAAE;OACzB,EAAE,kBAAkB,EAAE;OACtB,EAAE,gBAAgB,EAAE"}
package/index.js CHANGED
@@ -3,7 +3,7 @@ exports = module.exports = function (...args) {
3
3
  return new exports.default(...args)
4
4
  }
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.EngineInteractor = exports.DownloadInteractor = exports.ChatSessionInteractor = exports.ChatModelsInteractor = exports.ChatModelInteractor = exports.EngineError = exports.TotalStats = exports.Text = exports.StepStats = exports.Stats = exports.SamplingSeed = exports.SamplingPolicy = exports.SamplingMethod = exports.RunStats = exports.RunConfig = exports.Role = exports.Preset = exports.PrefillStepSize = exports.ParsedText = exports.Output = exports.ModelType = exports.Message = exports.Input = exports.FinishReason = exports.default = exports.DownloadState = exports.DownloadPhase = exports.DownloadProgressUpdate = exports.DownloadHandle = exports.ContextMode = exports.ContextLength = exports.Config = exports.ClassificationFeature = exports.ChatSession = exports.ChatModel = exports.AsyncBatchSize = void 0;
6
+ exports.EngineInteractor = exports.DownloadInteractor = exports.ChatSessionInteractor = exports.ChatModelsInteractor = exports.ChatModelInteractor = exports.EngineError = exports.TotalStats = exports.Text = exports.StepStats = exports.Stats = exports.SamplingSeed = exports.SamplingPolicy = exports.SamplingMethod = exports.RunStats = exports.RunConfig = exports.Role = exports.Preset = exports.PrefillStepSize = exports.ParsedText = exports.Output = exports.ModelType = exports.Message = exports.Input = exports.GrammarConfig = exports.FinishReason = exports.default = exports.DownloadState = exports.DownloadPhase = exports.DownloadProgressUpdate = exports.DownloadHandle = exports.ContextMode = exports.ContextLength = exports.Config = exports.ClassificationFeature = exports.ChatSession = exports.ChatModel = exports.AsyncBatchSize = void 0;
7
7
  var asyncBatchSize_1 = require("./bridging/asyncBatchSize.js");
8
8
  Object.defineProperty(exports, "AsyncBatchSize", { enumerable: true, get: function () { return asyncBatchSize_1.AsyncBatchSize; } });
9
9
  var chatModel_1 = require("./bridging/chatModel.js");
@@ -29,6 +29,8 @@ var engine_1 = require("./bridging/engine.js");
29
29
  Object.defineProperty(exports, "default", { enumerable: true, get: function () { return engine_1.Engine; } });
30
30
  var finishReason_1 = require("./bridging/finishReason.js");
31
31
  Object.defineProperty(exports, "FinishReason", { enumerable: true, get: function () { return finishReason_1.FinishReason; } });
32
+ var grammarConfig_1 = require("./bridging/grammarConfig.js");
33
+ Object.defineProperty(exports, "GrammarConfig", { enumerable: true, get: function () { return grammarConfig_1.GrammarConfig; } });
32
34
  var input_1 = require("./bridging/input.js");
33
35
  Object.defineProperty(exports, "Input", { enumerable: true, get: function () { return input_1.Input; } });
34
36
  var message_1 = require("./bridging/message.js");
package/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["src/index.ts"],"names":[],"mappings":";;;AAAA,+DAA2D;AAAlD,gHAAA,cAAc,OAAA;AACvB,qDAAiD;AAAxC,sGAAA,SAAS,OAAA;AAClB,yDAAqD;AAA5C,0GAAA,WAAW,OAAA;AACpB,6EAAyE;AAAhE,8HAAA,qBAAqB,OAAA;AAC9B,+CAA2C;AAAlC,gGAAA,MAAM,OAAA;AACf,6DAAyD;AAAhD,8GAAA,aAAa,OAAA;AACtB,yDAAqD;AAA5C,0GAAA,WAAW,OAAA;AACpB,+DAA2D;AAAlD,gHAAA,cAAc,OAAA;AACvB,+EAA2E;AAAlE,gIAAA,sBAAsB,OAAA;AAC/B,6DAAwE;AAA/D,8GAAA,aAAa,OAAA;AAAE,8GAAA,aAAa,OAAA;AACrC,+CAAsD;AAA7C,iGAAA,MAAM,OAAW;AAC1B,2DAAuD;AAA9C,4GAAA,YAAY,OAAA;AACrB,6CAAyC;AAAhC,8FAAA,KAAK,OAAA;AACd,iDAA6C;AAApC,kGAAA,OAAO,OAAA;AAChB,qDAAiD;AAAxC,sGAAA,SAAS,OAAA;AAClB,+CAA2C;AAAlC,gGAAA,MAAM,OAAA;AACf,uDAAmD;AAA1C,wGAAA,UAAU,OAAA;AACnB,iEAA6D;AAApD,kHAAA,eAAe,OAAA;AACxB,+CAA2C;AAAlC,gGAAA,MAAM,OAAA;AACf,2CAAuC;AAA9B,4FAAA,IAAI,OAAA;AACb,qDAAiD;AAAxC,sGAAA,SAAS,OAAA;AAClB,mDAA+C;AAAtC,oGAAA,QAAQ,OAAA;AACjB,+DAA2D;AAAlD,gHAAA,cAAc,OAAA;AACvB,+DAA2D;AAAlD,gHAAA,cAAc,OAAA;AACvB,2DAAuD;AAA9C,4GAAA,YAAY,OAAA;AACrB,6CAAyC;AAAhC,8FAAA,KAAK,OAAA;AACd,qDAAiD;AAAxC,sGAAA,SAAS,OAAA;AAClB,2CAAuC;AAA9B,4FAAA,IAAI,OAAA;AACb,uDAAmD;AAA1C,wGAAA,UAAU,OAAA;AACnB,oCAAsC;AAA7B,oGAAA,WAAW,OAAA;AACpB,4EAAwE;AAA/D,0HAAA,mBAAmB,OAAA;AAC5B,8EAA0E;AAAjE,4HAAA,oBAAoB,OAAA;AAC7B,gFAA4E;AAAnE,8HAAA,qBAAqB,OAAA;AAC9B,0EAAsE;AAA7D,wHAAA,kBAAkB,OAAA;AAC3B,sEAAkE;AAAzD,oHAAA,gBAAgB,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["src/index.ts"],"names":[],"mappings":";;;AAAA,+DAA2D;AAAlD,gHAAA,cAAc,OAAA;AACvB,qDAAiD;AAAxC,sGAAA,SAAS,OAAA;AAClB,yDAAqD;AAA5C,0GAAA,WAAW,OAAA;AACpB,6EAAyE;AAAhE,8HAAA,qBAAqB,OAAA;AAC9B,+CAA2C;AAAlC,gGAAA,MAAM,OAAA;AACf,6DAAyD;AAAhD,8GAAA,aAAa,OAAA;AACtB,yDAAqD;AAA5C,0GAAA,WAAW,OAAA;AACpB,+DAA2D;AAAlD,gHAAA,cAAc,OAAA;AACvB,+EAA2E;AAAlE,gIAAA,sBAAsB,OAAA;AAC/B,6DAAwE;AAA/D,8GAAA,aAAa,OAAA;AAAE,8GAAA,aAAa,OAAA;AACrC,+CAAsD;AAA7C,iGAAA,MAAM,OAAW;AAC1B,2DAAuD;AAA9C,4GAAA,YAAY,OAAA;AACrB,6DAAyD;AAAhD,8GAAA,aAAa,OAAA;AACtB,6CAAyC;AAAhC,8FAAA,KAAK,OAAA;AACd,iDAA6C;AAApC,kGAAA,OAAO,OAAA;AAChB,qDAAiD;AAAxC,sGAAA,SAAS,OAAA;AAClB,+CAA2C;AAAlC,gGAAA,MAAM,OAAA;AACf,uDAAmD;AAA1C,wGAAA,UAAU,OAAA;AACnB,iEAA6D;AAApD,kHAAA,eAAe,OAAA;AACxB,+CAA2C;AAAlC,gGAAA,MAAM,OAAA;AACf,2CAAuC;AAA9B,4FAAA,IAAI,OAAA;AACb,qDAAiD;AAAxC,sGAAA,SAAS,OAAA;AAClB,mDAA+C;AAAtC,oGAAA,QAAQ,OAAA;AACjB,+DAA2D;AAAlD,gHAAA,cAAc,OAAA;AACvB,+DAA2D;AAAlD,gHAAA,cAAc,OAAA;AACvB,2DAAuD;AAA9C,4GAAA,YAAY,OAAA;AACrB,6CAAyC;AAAhC,8FAAA,KAAK,OAAA;AACd,qDAAiD;AAAxC,sGAAA,SAAS,OAAA;AAClB,2CAAuC;AAA9B,4FAAA,IAAI,OAAA;AACb,uDAAmD;AAA1C,wGAAA,UAAU,OAAA;AACnB,oCAAsC;AAA7B,oGAAA,WAAW,OAAA;AACpB,4EAAwE;AAA/D,0HAAA,mBAAmB,OAAA;AAC5B,8EAA0E;AAAjE,4HAAA,oBAAoB,OAAA;AAC7B,gFAA4E;AAAnE,8HAAA,qBAAqB,OAAA;AAC9B,0EAAsE;AAA7D,wHAAA,kBAAkB,OAAA;AAC3B,sEAAkE;AAAzD,oHAAA,gBAAgB,OAAA"}
package/index.mjs CHANGED
@@ -10,6 +10,7 @@ export { DownloadProgressUpdate } from "./bridging/downloadProgressUpdate.mjs";
10
10
  export { DownloadPhase, DownloadState } from "./bridging/downloadState.mjs";
11
11
  export { Engine as default } from "./bridging/engine.mjs";
12
12
  export { FinishReason } from "./bridging/finishReason.mjs";
13
+ export { GrammarConfig } from "./bridging/grammarConfig.mjs";
13
14
  export { Input } from "./bridging/input.mjs";
14
15
  export { Message } from "./bridging/message.mjs";
15
16
  export { ModelType } from "./bridging/modelType.mjs";
package/index.mjs.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sourceRoot":"","sources":["src/index.ts"],"names":[],"mappings":"OAAO,EAAE,cAAc,EAAE;OAClB,EAAE,SAAS,EAAE;OACb,EAAE,WAAW,EAAE;OACf,EAAE,qBAAqB,EAAE;OACzB,EAAE,MAAM,EAAE;OACV,EAAE,aAAa,EAAE;OACjB,EAAE,WAAW,EAAE;OACf,EAAE,cAAc,EAAE;OAClB,EAAE,sBAAsB,EAAE;OAC1B,EAAE,aAAa,EAAE,aAAa,EAAE;OAChC,EAAE,MAAM,IAAI,OAAO,EAAE;OACrB,EAAE,YAAY,EAAE;OAChB,EAAE,KAAK,EAAE;OACT,EAAE,OAAO,EAAE;OACX,EAAE,SAAS,EAAE;OACb,EAAE,MAAM,EAAE;OACV,EAAE,UAAU,EAAE;OACd,EAAE,eAAe,EAAE;OACnB,EAAE,MAAM,EAAE;OACV,EAAE,IAAI,EAAE;OACR,EAAE,SAAS,EAAE;OACb,EAAE,QAAQ,EAAE;OACZ,EAAE,cAAc,EAAE;OAClB,EAAE,cAAc,EAAE;OAClB,EAAE,YAAY,EAAE;OAChB,EAAE,KAAK,EAAE;OACT,EAAE,SAAS,EAAE;OACb,EAAE,IAAI,EAAE;OACR,EAAE,UAAU,EAAE;OACd,EAAE,WAAW,EAAE;OACf,EAAE,mBAAmB,EAAE;OACvB,EAAE,oBAAoB,EAAE;OACxB,EAAE,qBAAqB,EAAE;OACzB,EAAE,kBAAkB,EAAE;OACtB,EAAE,gBAAgB,EAAE"}
1
+ {"version":3,"file":"index.mjs","sourceRoot":"","sources":["src/index.ts"],"names":[],"mappings":"OAAO,EAAE,cAAc,EAAE;OAClB,EAAE,SAAS,EAAE;OACb,EAAE,WAAW,EAAE;OACf,EAAE,qBAAqB,EAAE;OACzB,EAAE,MAAM,EAAE;OACV,EAAE,aAAa,EAAE;OACjB,EAAE,WAAW,EAAE;OACf,EAAE,cAAc,EAAE;OAClB,EAAE,sBAAsB,EAAE;OAC1B,EAAE,aAAa,EAAE,aAAa,EAAE;OAChC,EAAE,MAAM,IAAI,OAAO,EAAE;OACrB,EAAE,YAAY,EAAE;OAChB,EAAE,aAAa,EAAE;OACjB,EAAE,KAAK,EAAE;OACT,EAAE,OAAO,EAAE;OACX,EAAE,SAAS,EAAE;OACb,EAAE,MAAM,EAAE;OACV,EAAE,UAAU,EAAE;OACd,EAAE,eAAe,EAAE;OACnB,EAAE,MAAM,EAAE;OACV,EAAE,IAAI,EAAE;OACR,EAAE,SAAS,EAAE;OACb,EAAE,QAAQ,EAAE;OACZ,EAAE,cAAc,EAAE;OAClB,EAAE,cAAc,EAAE;OAClB,EAAE,YAAY,EAAE;OAChB,EAAE,KAAK,EAAE;OACT,EAAE,SAAS,EAAE;OACb,EAAE,IAAI,EAAE;OACR,EAAE,UAAU,EAAE;OACd,EAAE,WAAW,EAAE;OACf,EAAE,mBAAmB,EAAE;OACvB,EAAE,oBAAoB,EAAE;OACxB,EAAE,qBAAqB,EAAE;OACzB,EAAE,kBAAkB,EAAE;OACtB,EAAE,gBAAgB,EAAE"}
@@ -1,4 +1,5 @@
1
1
  import { ChatSession } from "../bridging/chatSession.mjs";
2
+ import { GrammarConfig } from "../bridging/grammarConfig.mjs";
2
3
  import { Input } from "../bridging/input.mjs";
3
4
  import { Message } from "../bridging/message.mjs";
4
5
  import { Output } from "../bridging/output.mjs";
@@ -17,6 +18,7 @@ export declare class ChatSessionInteractor implements Interactor<ChatSession> {
17
18
  enableThinking(enableThinking: boolean): ChatSessionInteractor;
18
19
  samplingPolicy(samplingPolicy: SamplingPolicy): ChatSessionInteractor;
19
20
  samplingMethod(samplingMethod: SamplingMethod): ChatSessionInteractor;
21
+ grammarConfig(grammarConfig: GrammarConfig | null): ChatSessionInteractor;
20
22
  run(input: Input, progress?: (partialOutput: Output) => boolean): Promise<Output>;
21
23
  reply(text: string, progress?: (partialOutput: Output) => boolean): Promise<Output>;
22
24
  replyToMessages(messages: Message[], progress?: (partialOutput: Output) => boolean): Promise<Output>;
@@ -1 +1 @@
1
- {"version":3,"file":"chatSessionInteractor.d.mts","sourceRoot":"","sources":["../src/interactors/chatSessionInteractor.ts"],"names":[],"mappings":"OAAO,EAAE,WAAW,EAAE;OACf,EAAE,KAAK,EAAE;OACT,EAAE,OAAO,EAAE;OACX,EAAE,MAAM,EAAE;OACV,EAAE,SAAS,EAAE;OACb,EAAE,cAAc,EAAE;OAClB,EAAE,cAAc,EAAE;OAClB,EAAE,mBAAmB,EAAE;OACvB,EAAE,UAAU,EAAE,gBAAgB,EAAE;AAEvC,qBAAa,qBAAsB,YAAW,UAAU,CAAC,WAAW,CAAC;IACjE,QAAQ,CAAC,eAAe,EAAE,mBAAmB,CAAC;IAC9C,QAAQ,CAAC,MAAM,EAAE,gBAAgB,CAAC,WAAW,CAAC,CAAC;IAC/C,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC;gBAGvB,eAAe,EAAE,mBAAmB,EACpC,OAAO,EAAE,gBAAgB,CAAC,WAAW,CAAC,EACtC,MAAM,EAAE,SAAS;IAOf,QAAQ,IAAI,OAAO,CAAC,WAAW,CAAC;IAMtC,WAAW,CAAC,WAAW,EAAE,MAAM,GAAG,qBAAqB;IAKvD,cAAc,CAAC,cAAc,EAAE,OAAO,GAAG,qBAAqB;IAK9D,cAAc,CAAC,cAAc,EAAE,cAAc,GAAG,qBAAqB;IAKrE,cAAc,CAAC,cAAc,EAAE,cAAc,GAAG,qBAAqB;IAO/D,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,GAAE,CAAC,aAAa,EAAE,MAAM,KAAK,OAAoB,GAAG,OAAO,CAAC,MAAM,CAAC;IAU7F,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,GAAE,CAAC,aAAa,EAAE,MAAM,KAAK,OAAoB,GAAG,OAAO,CAAC,MAAM,CAAC;IAI/F,eAAe,CACjB,QAAQ,EAAE,OAAO,EAAE,EACnB,QAAQ,GAAE,CAAC,aAAa,EAAE,MAAM,KAAK,OAAoB,GAC1D,OAAO,CAAC,MAAM,CAAC;CAGrB"}
1
+ {"version":3,"file":"chatSessionInteractor.d.mts","sourceRoot":"","sources":["../src/interactors/chatSessionInteractor.ts"],"names":[],"mappings":"OAAO,EAAE,WAAW,EAAE;OACf,EAAE,aAAa,EAAE;OACjB,EAAE,KAAK,EAAE;OACT,EAAE,OAAO,EAAE;OACX,EAAE,MAAM,EAAE;OACV,EAAE,SAAS,EAAE;OACb,EAAE,cAAc,EAAE;OAClB,EAAE,cAAc,EAAE;OAClB,EAAE,mBAAmB,EAAE;OACvB,EAAE,UAAU,EAAE,gBAAgB,EAAE;AAEvC,qBAAa,qBAAsB,YAAW,UAAU,CAAC,WAAW,CAAC;IACjE,QAAQ,CAAC,eAAe,EAAE,mBAAmB,CAAC;IAC9C,QAAQ,CAAC,MAAM,EAAE,gBAAgB,CAAC,WAAW,CAAC,CAAC;IAC/C,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC;gBAGvB,eAAe,EAAE,mBAAmB,EACpC,OAAO,EAAE,gBAAgB,CAAC,WAAW,CAAC,EACtC,MAAM,EAAE,SAAS;IAOf,QAAQ,IAAI,OAAO,CAAC,WAAW,CAAC;IAMtC,WAAW,CAAC,WAAW,EAAE,MAAM,GAAG,qBAAqB;IAKvD,cAAc,CAAC,cAAc,EAAE,OAAO,GAAG,qBAAqB;IAK9D,cAAc,CAAC,cAAc,EAAE,cAAc,GAAG,qBAAqB;IAKrE,cAAc,CAAC,cAAc,EAAE,cAAc,GAAG,qBAAqB;IAKrE,aAAa,CAAC,aAAa,EAAE,aAAa,GAAG,IAAI,GAAG,qBAAqB;IAOnE,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,GAAE,CAAC,aAAa,EAAE,MAAM,KAAK,OAAoB,GAAG,OAAO,CAAC,MAAM,CAAC;IAU7F,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,GAAE,CAAC,aAAa,EAAE,MAAM,KAAK,OAAoB,GAAG,OAAO,CAAC,MAAM,CAAC;IAI/F,eAAe,CACjB,QAAQ,EAAE,OAAO,EAAE,EACnB,QAAQ,GAAE,CAAC,aAAa,EAAE,MAAM,KAAK,OAAoB,GAC1D,OAAO,CAAC,MAAM,CAAC;CAGrB"}