llmz 0.0.24 → 0.0.26

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 (38) hide show
  1. package/dist/{chunk-FZJHYLM2.cjs → chunk-45GKLDDR.cjs} +2 -2
  2. package/dist/{chunk-LUX4X7XO.js → chunk-7G5QAIUX.js} +2 -2
  3. package/dist/{chunk-XGJOEQMW.cjs → chunk-A63TROZX.cjs} +2 -2
  4. package/dist/{chunk-A7QHWVD7.js → chunk-CARJB3HP.js} +1 -1
  5. package/dist/{chunk-2D2DE7CD.js → chunk-EDVD6GWH.js} +1 -1
  6. package/dist/chunk-KIN7Y247.cjs +32 -0
  7. package/dist/{chunk-BNDY7RGX.cjs → chunk-M3LCKL55.cjs} +20 -20
  8. package/dist/{chunk-JKVVQN2P.js → chunk-MYLTD5WT.js} +15 -2
  9. package/dist/{chunk-EE6NVDID.js → chunk-PBTEQAZK.js} +1 -1
  10. package/dist/{chunk-2NU62OI4.cjs → chunk-PQILLTEM.cjs} +33 -20
  11. package/dist/{chunk-PIDLNYIP.cjs → chunk-Q2O6MYES.cjs} +4 -4
  12. package/dist/{chunk-QIZBF7A5.js → chunk-SHC22IAH.js} +25 -12
  13. package/dist/{chunk-JDABP4SD.cjs → chunk-T63Y6GTW.cjs} +17 -4
  14. package/dist/chunk-YEAWWJSJ.js +32 -0
  15. package/dist/context.d.ts +15 -11
  16. package/dist/{dual-modes-7FI4T35O.js → dual-modes-7FEESYXQ.js} +2 -2
  17. package/dist/{dual-modes-OFHV2C3X.cjs → dual-modes-F2HJJY2Z.cjs} +3 -3
  18. package/dist/errors.d.ts +3 -0
  19. package/dist/index.cjs +19 -19
  20. package/dist/index.d.ts +6 -2
  21. package/dist/index.js +12 -12
  22. package/dist/{llmz-IUGXC4SH.js → llmz-VGZUUM3U.js} +17 -16
  23. package/dist/{llmz-UUZTBIF3.cjs → llmz-Z5ULKYGZ.cjs} +41 -40
  24. package/dist/llmz.d.ts +15 -2
  25. package/dist/result.d.ts +6 -6
  26. package/dist/tool-4J4JNDNV.cjs +11 -0
  27. package/dist/tool-SFRUHH7M.js +11 -0
  28. package/dist/typings-2WTRKHEH.cjs +10 -0
  29. package/dist/{typings-WYHEFCYB.js → typings-AYAZ5YA3.js} +3 -3
  30. package/dist/{vm-CYC5RLKU.js → vm-I4G4IH7T.js} +3 -3
  31. package/dist/vm-YJX6M4NJ.cjs +12 -0
  32. package/package.json +6 -3
  33. package/dist/chunk-IKSIOIIP.cjs +0 -28
  34. package/dist/chunk-JQBT7UWN.js +0 -28
  35. package/dist/tool-O4SFRIE4.cjs +0 -11
  36. package/dist/tool-PCOYOCRH.js +0 -11
  37. package/dist/typings-Y45GMPZT.cjs +0 -10
  38. package/dist/vm-PRZ5GEM2.cjs +0 -12
@@ -1,6 +1,6 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } var _class;
2
2
 
3
- var _chunkIKSIOIIPcjs = require('./chunk-IKSIOIIP.cjs');
3
+ var _chunkKIN7Y247cjs = require('./chunk-KIN7Y247.cjs');
4
4
 
5
5
  // src/errors.ts
6
6
  var errorClasses = {};
@@ -33,7 +33,7 @@ var Signals;
33
33
  return JSON.stringify({
34
34
  name: error.constructor.name,
35
35
  message: error.message,
36
- stack: _chunkIKSIOIIPcjs.cleanStackTrace.call(void 0, _nullishCoalesce(error.stack, () => ( ""))),
36
+ stack: _chunkKIN7Y247cjs.cleanStackTrace.call(void 0, _nullishCoalesce(error.stack, () => ( ""))),
37
37
  properties: { ...error }
38
38
  });
39
39
  }
@@ -52,7 +52,7 @@ var Signals;
52
52
  const errorInstance = new ErrorClass(message);
53
53
  errorInstance.message = message;
54
54
  errorInstance.name = name;
55
- errorInstance.stack = _chunkIKSIOIIPcjs.cleanStackTrace.call(void 0, _nullishCoalesce((error == null ? void 0 : error.stack), () => ( "")));
55
+ errorInstance.stack = _chunkKIN7Y247cjs.cleanStackTrace.call(void 0, _nullishCoalesce((error == null ? void 0 : error.stack), () => ( "")));
56
56
  Object.assign(errorInstance, properties);
57
57
  if (isWrappedError(errorInstance)) {
58
58
  return maybeDeserializeError(errorInstance);
@@ -101,6 +101,7 @@ var ThinkSignal = class extends VMLoopSignal {
101
101
  this.reason = reason;
102
102
  this.context = context;
103
103
  this.message = Signals.serializeError(this);
104
+ this.stack = "";
104
105
  }
105
106
  toString() {
106
107
  return Signals.serializeError(this);
@@ -119,12 +120,14 @@ var InvalidCodeError = class extends Error {
119
120
  super(message);
120
121
  this.code = code;
121
122
  this.message = Signals.serializeError(this);
123
+ this.stack = "";
122
124
  }
123
125
  };
124
126
  var LoopExceededError = class extends Error {
125
127
  constructor() {
126
128
  super("Loop exceeded error");
127
129
  this.message = Signals.serializeError(this);
130
+ this.stack = "";
128
131
  }
129
132
  };
130
133
  var CodeFormattingError = class extends Error {
@@ -133,6 +136,7 @@ var CodeFormattingError = class extends Error {
133
136
  cause: "Code formatting error"
134
137
  });
135
138
  this.code = code;
139
+ this.stack = "";
136
140
  }
137
141
  };
138
142
  var AssignmentError = class extends Error {
@@ -141,12 +145,21 @@ var AssignmentError = class extends Error {
141
145
  this.message = Signals.serializeError(this);
142
146
  }
143
147
  };
148
+ var CognitiveError = class extends Error {
149
+ constructor(message) {
150
+ super(message);
151
+ this.message = Signals.serializeError(this);
152
+ this.stack = "";
153
+ }
154
+ };
144
155
  registerErrorClass("VMSignal", VMSignal);
145
156
  registerErrorClass("SnapshotSignal", SnapshotSignal);
146
157
  registerErrorClass("VMLoopSignal", VMLoopSignal);
147
158
  registerErrorClass("ThinkSignal", ThinkSignal);
148
159
  registerErrorClass("CodeExecutionError", CodeExecutionError);
149
160
  registerErrorClass("AssignmentError", AssignmentError);
161
+ registerErrorClass("CognitiveError", CognitiveError);
162
+
150
163
 
151
164
 
152
165
 
@@ -158,4 +171,4 @@ registerErrorClass("AssignmentError", AssignmentError);
158
171
 
159
172
 
160
173
 
161
- exports.Signals = Signals; exports.VMSignal = VMSignal; exports.SnapshotSignal = SnapshotSignal; exports.ThinkSignal = ThinkSignal; exports.CodeExecutionError = CodeExecutionError; exports.InvalidCodeError = InvalidCodeError; exports.LoopExceededError = LoopExceededError; exports.CodeFormattingError = CodeFormattingError; exports.AssignmentError = AssignmentError;
174
+ exports.Signals = Signals; exports.VMSignal = VMSignal; exports.SnapshotSignal = SnapshotSignal; exports.ThinkSignal = ThinkSignal; exports.CodeExecutionError = CodeExecutionError; exports.InvalidCodeError = InvalidCodeError; exports.LoopExceededError = LoopExceededError; exports.CodeFormattingError = CodeFormattingError; exports.AssignmentError = AssignmentError; exports.CognitiveError = CognitiveError;
@@ -0,0 +1,32 @@
1
+ // src/stack-traces.ts
2
+ var isInternalLine = (line) => {
3
+ return line.includes("/llmz/") || line.includes("\\llmz\\src\\") || line.includes("node_modules");
4
+ };
5
+ function cleanStackTrace(stack, cleanInternal = true) {
6
+ let lines = stack.split("\n");
7
+ const until = lines.findIndex((line) => isInternalLine(line));
8
+ if (cleanInternal && until >= 0) {
9
+ lines = lines.slice(0, until);
10
+ } else {
11
+ lines = lines.map((line) => {
12
+ let llmzIndex = line.indexOf("/llmz/");
13
+ if (llmzIndex === -1) {
14
+ llmzIndex = line.indexOf("\\llmz\\");
15
+ }
16
+ if (llmzIndex === -1) {
17
+ return line;
18
+ }
19
+ let lastSpaceIndex = line.lastIndexOf(" ", llmzIndex);
20
+ if (lastSpaceIndex === -1) {
21
+ lastSpaceIndex = 0;
22
+ }
23
+ const maybeParen = line[lastSpaceIndex + 1] === "(" ? "(" : "";
24
+ return line.slice(0, lastSpaceIndex + 1) + maybeParen + line.slice(llmzIndex);
25
+ });
26
+ }
27
+ return lines.join("\n");
28
+ }
29
+
30
+ export {
31
+ cleanStackTrace
32
+ };
package/dist/context.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { type Cognitive } from '@botpress/cognitive';
1
+ import { Models } from '@botpress/cognitive';
2
2
  import { Chat } from './chat.js';
3
3
  import { Component } from './component.js';
4
4
  import { SnapshotSignal } from './errors.js';
@@ -11,7 +11,6 @@ import { Snapshot } from './snapshots.js';
11
11
  import { Tool } from './tool.js';
12
12
  import { Transcript, TranscriptArray } from './transcript.js';
13
13
  import { ObjectMutation, Serializable, Trace } from './types.js';
14
- type Model = Parameters<InstanceType<typeof Cognitive>['generateContent']>[0]['model'];
15
14
  export type IterationParameters = {
16
15
  transcript: TranscriptArray;
17
16
  tools: Tool[];
@@ -19,6 +18,8 @@ export type IterationParameters = {
19
18
  exits: Exit[];
20
19
  instructions?: string;
21
20
  components: Component[];
21
+ model: Models | Models[];
22
+ temperature: number;
22
23
  };
23
24
  export type IterationStatus = IterationStatuses.Pending | IterationStatuses.GenerationError | IterationStatuses.ExecutionError | IterationStatuses.InvalidCodeError | IterationStatuses.Thinking | IterationStatuses.Callback | IterationStatuses.ExitSuccess | IterationStatuses.ExitError | IterationStatuses.Aborted;
24
25
  export declare namespace IterationStatuses {
@@ -306,6 +307,8 @@ export declare namespace Iteration {
306
307
  messages: LLMzPrompts.Message[];
307
308
  code?: string;
308
309
  traces: Trace[];
310
+ model: Models | Models[];
311
+ temperature: number;
309
312
  variables: Record<string, any>;
310
313
  started_ts: number;
311
314
  ended_ts?: number;
@@ -347,6 +350,8 @@ export declare class Iteration implements Serializable<Iteration.JSON> {
347
350
  get transcript(): TranscriptArray;
348
351
  get tools(): Tool<import("./types.js").ZuiType, import("./types.js").ZuiType>[];
349
352
  get objects(): ObjectInstance[];
353
+ get model(): Models | Models[];
354
+ get temperature(): number;
350
355
  get exits(): Exit<unknown>[];
351
356
  get instructions(): string | undefined;
352
357
  llm?: {
@@ -385,6 +390,8 @@ export declare class Iteration implements Serializable<Iteration.JSON> {
385
390
  id: string;
386
391
  messages: LLMzPrompts.Message[];
387
392
  code: string | undefined;
393
+ model: Models | Models[];
394
+ temperature: number;
388
395
  traces: import("./types.js").Traces.Trace[];
389
396
  variables: Record<string, any>;
390
397
  started_ts: number;
@@ -450,8 +457,6 @@ export declare namespace Context {
450
457
  iteration: number;
451
458
  timeout: number;
452
459
  loop: number;
453
- temperature: number;
454
- model?: Model;
455
460
  metadata: Record<string, any>;
456
461
  snapshot?: Snapshot.JSON;
457
462
  };
@@ -463,11 +468,11 @@ export declare class Context implements Serializable<Context.JSON> {
463
468
  objects?: ValueOrGetter<ObjectInstance[], Context>;
464
469
  tools?: ValueOrGetter<Tool[], Context>;
465
470
  exits?: ValueOrGetter<Exit[], Context>;
471
+ model?: ValueOrGetter<Models | Models[], Context>;
472
+ temperature: ValueOrGetter<number, Context>;
466
473
  version: Prompt;
467
474
  timeout: number;
468
475
  loop: number;
469
- temperature: number;
470
- model?: Model;
471
476
  metadata: Record<string, any>;
472
477
  snapshot?: Snapshot;
473
478
  iteration: number;
@@ -483,8 +488,8 @@ export declare class Context implements Serializable<Context.JSON> {
483
488
  tools?: ValueOrGetter<Tool[], Context>;
484
489
  exits?: ValueOrGetter<Exit[], Context>;
485
490
  loop?: number;
486
- temperature?: number;
487
- model?: Model;
491
+ temperature?: ValueOrGetter<number, Context>;
492
+ model?: ValueOrGetter<Models | Models[], Context>;
488
493
  metadata?: Record<string, any>;
489
494
  snapshot?: Snapshot;
490
495
  timeout?: number;
@@ -495,6 +500,8 @@ export declare class Context implements Serializable<Context.JSON> {
495
500
  id: string;
496
501
  messages: LLMzPrompts.Message[];
497
502
  code: string | undefined;
503
+ model: Models | Models[];
504
+ temperature: number;
498
505
  traces: import("./types.js").Traces.Trace[];
499
506
  variables: Record<string, any>;
500
507
  started_ts: number;
@@ -555,8 +562,6 @@ export declare class Context implements Serializable<Context.JSON> {
555
562
  iteration: number;
556
563
  timeout: number;
557
564
  loop: number;
558
- temperature: number;
559
- model: "best" | "fast" | `${string}:${string}` | undefined;
560
565
  metadata: Record<string, any>;
561
566
  snapshot: {
562
567
  id: string;
@@ -581,4 +586,3 @@ export declare class Context implements Serializable<Context.JSON> {
581
586
  } | undefined;
582
587
  };
583
588
  }
584
- export {};
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  DualModePrompt
3
- } from "./chunk-2D2DE7CD.js";
4
- import "./chunk-JQBT7UWN.js";
3
+ } from "./chunk-EDVD6GWH.js";
4
+ import "./chunk-YEAWWJSJ.js";
5
5
  import "./chunk-GGWM6X2K.js";
6
6
  import "./chunk-ORQP26SZ.js";
7
7
  import "./chunk-3JYCCI4S.js";
@@ -1,7 +1,7 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
2
 
3
- var _chunkPIDLNYIPcjs = require('./chunk-PIDLNYIP.cjs');
4
- require('./chunk-IKSIOIIP.cjs');
3
+ var _chunkQ2O6MYEScjs = require('./chunk-Q2O6MYES.cjs');
4
+ require('./chunk-KIN7Y247.cjs');
5
5
  require('./chunk-ZRCU35UV.cjs');
6
6
  require('./chunk-KMZDFWYZ.cjs');
7
7
  require('./chunk-GZPN7RGH.cjs');
@@ -9,4 +9,4 @@ require('./chunk-WHNOR4ZU.cjs');
9
9
  require('./chunk-UQOBUJIQ.cjs');
10
10
 
11
11
 
12
- exports.DualModePrompt = _chunkPIDLNYIPcjs.DualModePrompt;
12
+ exports.DualModePrompt = _chunkQ2O6MYEScjs.DualModePrompt;
package/dist/errors.d.ts CHANGED
@@ -62,3 +62,6 @@ export declare class CodeFormattingError extends Error {
62
62
  export declare class AssignmentError extends Error {
63
63
  constructor(message: string);
64
64
  }
65
+ export declare class CognitiveError extends Error {
66
+ constructor(message: string);
67
+ }
package/dist/index.cjs CHANGED
@@ -8,22 +8,22 @@
8
8
 
9
9
 
10
10
 
11
- var _chunk2NU62OI4cjs = require('./chunk-2NU62OI4.cjs');
12
- require('./chunk-PIDLNYIP.cjs');
11
+ var _chunkPQILLTEMcjs = require('./chunk-PQILLTEM.cjs');
12
+ require('./chunk-Q2O6MYES.cjs');
13
13
 
14
14
 
15
- var _chunkXGJOEQMWcjs = require('./chunk-XGJOEQMW.cjs');
15
+ var _chunkA63TROZXcjs = require('./chunk-A63TROZX.cjs');
16
16
 
17
17
 
18
18
 
19
- var _chunkFZJHYLM2cjs = require('./chunk-FZJHYLM2.cjs');
19
+ var _chunk45GKLDDRcjs = require('./chunk-45GKLDDR.cjs');
20
20
 
21
21
 
22
22
 
23
23
 
24
24
 
25
- var _chunkJDABP4SDcjs = require('./chunk-JDABP4SD.cjs');
26
- require('./chunk-IKSIOIIP.cjs');
25
+ var _chunkT63Y6GTWcjs = require('./chunk-T63Y6GTW.cjs');
26
+ require('./chunk-KIN7Y247.cjs');
27
27
 
28
28
 
29
29
  var _chunk3G3BS5IAcjs = require('./chunk-3G3BS5IA.cjs');
@@ -296,12 +296,12 @@ async function hoistTypings(code, formatOptions) {
296
296
  } catch (err) {
297
297
  console.error(err);
298
298
  if (formatOptions.throwOnError) {
299
- throw new (0, _chunkJDABP4SDcjs.CodeFormattingError)(err instanceof Error ? err.message : String(_nullishCoalesce(err, () => ( "Unknown Error"))), code);
299
+ throw new (0, _chunkT63Y6GTWcjs.CodeFormattingError)(err instanceof Error ? err.message : String(_nullishCoalesce(err, () => ( "Unknown Error"))), code);
300
300
  }
301
301
  break;
302
302
  }
303
303
  }
304
- return _chunkFZJHYLM2cjs.formatTypings.call(void 0, code, formatOptions);
304
+ return _chunk45GKLDDRcjs.formatTypings.call(void 0, code, formatOptions);
305
305
  }
306
306
 
307
307
  // src/objects.ts
@@ -427,7 +427,7 @@ var ObjectInstance = class {
427
427
  this.description = props.description;
428
428
  this.metadata = _nullishCoalesce(props.metadata, () => ( {}));
429
429
  this.properties = props.properties;
430
- this.tools = _chunkXGJOEQMWcjs.Tool.withUniqueNames(_nullishCoalesce(props.tools, () => ( [])));
430
+ this.tools = _chunkA63TROZXcjs.Tool.withUniqueNames(_nullishCoalesce(props.tools, () => ( [])));
431
431
  }
432
432
  /**
433
433
  * Generates TypeScript namespace declarations for this object.
@@ -508,7 +508,7 @@ function getObjectTypings(obj) {
508
508
  }
509
509
  let type = "unknown";
510
510
  if (prop.type) {
511
- type = await _chunkFZJHYLM2cjs.getTypings.call(void 0, prop.type, {});
511
+ type = await _chunk45GKLDDRcjs.getTypings.call(void 0, prop.type, {});
512
512
  } else if (prop.value !== void 0) {
513
513
  type = typeof prop.value;
514
514
  }
@@ -528,7 +528,7 @@ function getObjectTypings(obj) {
528
528
  typings.push("");
529
529
  for (const tool of obj.tools) {
530
530
  const fnType = _zui.z.function(tool.zInput, tool.zOutput).title(tool.name).describe(_nullishCoalesce(tool.description, () => ( "")));
531
- let temp = await _chunkFZJHYLM2cjs.getTypings.call(void 0, fnType, {
531
+ let temp = await _chunk45GKLDDRcjs.getTypings.call(void 0, fnType, {
532
532
  declaration: true
533
533
  });
534
534
  temp = temp.replace("declare function ", "function ");
@@ -551,7 +551,7 @@ function getObjectTypings(obj) {
551
551
  if ((_a = obj.description) == null ? void 0 : _a.trim().length) {
552
552
  header = _chunkWHNOR4ZUcjs.getMultilineComment.call(void 0, obj.description);
553
553
  }
554
- return _chunkFZJHYLM2cjs.formatTypings.call(void 0,
554
+ return _chunk45GKLDDRcjs.formatTypings.call(void 0,
555
555
  `${header}
556
556
  export namespace ${obj.name} {
557
557
  ${body}
@@ -1103,20 +1103,20 @@ var utils = {
1103
1103
  truncateWrappedContent: _chunkGZPN7RGHcjs.truncateWrappedContent
1104
1104
  };
1105
1105
  var execute = async (props) => {
1106
- const { executeContext } = await Promise.resolve().then(() => _interopRequireWildcard(require("./llmz-UUZTBIF3.cjs")));
1106
+ const { executeContext } = await Promise.resolve().then(() => _interopRequireWildcard(require("./llmz-Z5ULKYGZ.cjs")));
1107
1107
  return executeContext(props);
1108
1108
  };
1109
1109
  var init = async () => {
1110
- await Promise.resolve().then(() => _interopRequireWildcard(require("./llmz-UUZTBIF3.cjs")));
1110
+ await Promise.resolve().then(() => _interopRequireWildcard(require("./llmz-Z5ULKYGZ.cjs")));
1111
1111
  await Promise.resolve().then(() => _interopRequireWildcard(require("./component-R4WTW6DZ.cjs")));
1112
- await Promise.resolve().then(() => _interopRequireWildcard(require("./tool-O4SFRIE4.cjs")));
1112
+ await Promise.resolve().then(() => _interopRequireWildcard(require("./tool-4J4JNDNV.cjs")));
1113
1113
  await Promise.resolve().then(() => _interopRequireWildcard(require("./exit-XAYKJ6TR.cjs")));
1114
1114
  await Promise.resolve().then(() => _interopRequireWildcard(require("./jsx-AJAXBWFE.cjs")));
1115
- await Promise.resolve().then(() => _interopRequireWildcard(require("./vm-PRZ5GEM2.cjs")));
1115
+ await Promise.resolve().then(() => _interopRequireWildcard(require("./vm-YJX6M4NJ.cjs")));
1116
1116
  await Promise.resolve().then(() => _interopRequireWildcard(require("./utils-L5QAQXV2.cjs")));
1117
1117
  await Promise.resolve().then(() => _interopRequireWildcard(require("./truncator-W3NXBLYJ.cjs")));
1118
- await Promise.resolve().then(() => _interopRequireWildcard(require("./typings-Y45GMPZT.cjs")));
1119
- await Promise.resolve().then(() => _interopRequireWildcard(require("./dual-modes-OFHV2C3X.cjs")));
1118
+ await Promise.resolve().then(() => _interopRequireWildcard(require("./typings-2WTRKHEH.cjs")));
1119
+ await Promise.resolve().then(() => _interopRequireWildcard(require("./dual-modes-F2HJJY2Z.cjs")));
1120
1120
  };
1121
1121
 
1122
1122
 
@@ -1145,4 +1145,4 @@ var init = async () => {
1145
1145
 
1146
1146
 
1147
1147
 
1148
- exports.Chat = Chat; exports.CitationsManager = CitationsManager; exports.Component = _chunkZRCU35UVcjs.Component; exports.DefaultComponents = DefaultComponents; exports.DefaultExit = _chunk2NU62OI4cjs.DefaultExit; exports.ErrorExecutionResult = _chunk2NU62OI4cjs.ErrorExecutionResult; exports.ExecutionResult = _chunk2NU62OI4cjs.ExecutionResult; exports.Exit = _chunk3G3BS5IAcjs.Exit; exports.ListenExit = _chunk2NU62OI4cjs.ListenExit; exports.LoopExceededError = _chunkJDABP4SDcjs.LoopExceededError; exports.ObjectInstance = ObjectInstance; exports.PartialExecutionResult = _chunk2NU62OI4cjs.PartialExecutionResult; exports.Snapshot = _chunk2NU62OI4cjs.Snapshot; exports.SnapshotSignal = _chunkJDABP4SDcjs.SnapshotSignal; exports.SuccessExecutionResult = _chunk2NU62OI4cjs.SuccessExecutionResult; exports.ThinkExit = _chunk2NU62OI4cjs.ThinkExit; exports.ThinkSignal = _chunkJDABP4SDcjs.ThinkSignal; exports.Tool = _chunkXGJOEQMWcjs.Tool; exports.assertValidComponent = _chunkZRCU35UVcjs.assertValidComponent; exports.execute = execute; exports.getValue = _chunk2NU62OI4cjs.getValue; exports.init = init; exports.isAnyComponent = _chunkZRCU35UVcjs.isAnyComponent; exports.isComponent = _chunkZRCU35UVcjs.isComponent; exports.renderToTsx = _chunkZRCU35UVcjs.renderToTsx; exports.utils = utils;
1148
+ exports.Chat = Chat; exports.CitationsManager = CitationsManager; exports.Component = _chunkZRCU35UVcjs.Component; exports.DefaultComponents = DefaultComponents; exports.DefaultExit = _chunkPQILLTEMcjs.DefaultExit; exports.ErrorExecutionResult = _chunkPQILLTEMcjs.ErrorExecutionResult; exports.ExecutionResult = _chunkPQILLTEMcjs.ExecutionResult; exports.Exit = _chunk3G3BS5IAcjs.Exit; exports.ListenExit = _chunkPQILLTEMcjs.ListenExit; exports.LoopExceededError = _chunkT63Y6GTWcjs.LoopExceededError; exports.ObjectInstance = ObjectInstance; exports.PartialExecutionResult = _chunkPQILLTEMcjs.PartialExecutionResult; exports.Snapshot = _chunkPQILLTEMcjs.Snapshot; exports.SnapshotSignal = _chunkT63Y6GTWcjs.SnapshotSignal; exports.SuccessExecutionResult = _chunkPQILLTEMcjs.SuccessExecutionResult; exports.ThinkExit = _chunkPQILLTEMcjs.ThinkExit; exports.ThinkSignal = _chunkT63Y6GTWcjs.ThinkSignal; exports.Tool = _chunkA63TROZXcjs.Tool; exports.assertValidComponent = _chunkZRCU35UVcjs.assertValidComponent; exports.execute = execute; exports.getValue = _chunkPQILLTEMcjs.getValue; exports.init = init; exports.isAnyComponent = _chunkZRCU35UVcjs.isAnyComponent; exports.isComponent = _chunkZRCU35UVcjs.isComponent; exports.renderToTsx = _chunkZRCU35UVcjs.renderToTsx; exports.utils = utils;
package/dist/index.d.ts CHANGED
@@ -39,7 +39,9 @@ export declare const utils: {
39
39
  * @param props.exits - Array of Exit definitions for structured completion (static or dynamic)
40
40
  * @param props.snapshot - Optional Snapshot to resume paused execution
41
41
  * @param props.signal - Optional AbortSignal to cancel execution
42
- * @param props.options - Optional execution options (loop limit, temperature, model, timeout)
42
+ * @param props.model - Optional model name (or array or models to use as fallback) (static or dynamic function)
43
+ * @param props.temperature - Optional temperature value (static or dynamic function)
44
+ * @param props.options - Optional execution options (loop limit, timeout)
43
45
  * @param props.onTrace - Optional non-blocking hook for monitoring traces during execution
44
46
  * @param props.onIterationEnd - Optional blocking hook called after each iteration
45
47
  * @param props.onExit - Optional blocking hook called when an exit is reached (can prevent exit)
@@ -80,7 +82,9 @@ export declare const utils: {
80
82
  * client: cognitiveClient,
81
83
  * instructions: (ctx) => `Process ${ctx.variables.dataCount} records`,
82
84
  * tools: async (ctx) => await getContextualTools(ctx),
83
- * options: { loop: 10, temperature: 0.1 },
85
+ * model: 'best',
86
+ * temperature: 0.1,
87
+ * options: { loop: 10 },
84
88
  * onTrace: ({ trace, iteration }) => console.log(trace),
85
89
  * onExit: async (result) => await validateResult(result)
86
90
  * })
package/dist/index.js CHANGED
@@ -8,22 +8,22 @@ import {
8
8
  SuccessExecutionResult,
9
9
  ThinkExit,
10
10
  getValue
11
- } from "./chunk-QIZBF7A5.js";
12
- import "./chunk-2D2DE7CD.js";
11
+ } from "./chunk-SHC22IAH.js";
12
+ import "./chunk-EDVD6GWH.js";
13
13
  import {
14
14
  Tool
15
- } from "./chunk-A7QHWVD7.js";
15
+ } from "./chunk-CARJB3HP.js";
16
16
  import {
17
17
  formatTypings,
18
18
  getTypings
19
- } from "./chunk-EE6NVDID.js";
19
+ } from "./chunk-PBTEQAZK.js";
20
20
  import {
21
21
  CodeFormattingError,
22
22
  LoopExceededError,
23
23
  SnapshotSignal,
24
24
  ThinkSignal
25
- } from "./chunk-JKVVQN2P.js";
26
- import "./chunk-JQBT7UWN.js";
25
+ } from "./chunk-MYLTD5WT.js";
26
+ import "./chunk-YEAWWJSJ.js";
27
27
  import {
28
28
  Exit
29
29
  } from "./chunk-VPTFUOIK.js";
@@ -1103,20 +1103,20 @@ var utils = {
1103
1103
  truncateWrappedContent
1104
1104
  };
1105
1105
  var execute = async (props) => {
1106
- const { executeContext } = await import("./llmz-IUGXC4SH.js");
1106
+ const { executeContext } = await import("./llmz-VGZUUM3U.js");
1107
1107
  return executeContext(props);
1108
1108
  };
1109
1109
  var init = async () => {
1110
- await import("./llmz-IUGXC4SH.js");
1110
+ await import("./llmz-VGZUUM3U.js");
1111
1111
  await import("./component-WFVDVSDK.js");
1112
- await import("./tool-PCOYOCRH.js");
1112
+ await import("./tool-SFRUHH7M.js");
1113
1113
  await import("./exit-YLO7BY7Z.js");
1114
1114
  await import("./jsx-AEHVFB3L.js");
1115
- await import("./vm-CYC5RLKU.js");
1115
+ await import("./vm-I4G4IH7T.js");
1116
1116
  await import("./utils-RQHQ2KOG.js");
1117
1117
  await import("./truncator-BSP6PQPC.js");
1118
- await import("./typings-WYHEFCYB.js");
1119
- await import("./dual-modes-7FI4T35O.js");
1118
+ await import("./typings-AYAZ5YA3.js");
1119
+ await import("./dual-modes-7FEESYXQ.js");
1120
1120
  };
1121
1121
  export {
1122
1122
  Chat,
@@ -1,29 +1,30 @@
1
1
  import {
2
2
  runAsyncFunction
3
- } from "./chunk-LUX4X7XO.js";
3
+ } from "./chunk-7G5QAIUX.js";
4
4
  import {
5
5
  Context,
6
6
  ErrorExecutionResult,
7
7
  PartialExecutionResult,
8
8
  Snapshot,
9
9
  SuccessExecutionResult
10
- } from "./chunk-QIZBF7A5.js";
11
- import "./chunk-2D2DE7CD.js";
12
- import "./chunk-A7QHWVD7.js";
13
- import "./chunk-EE6NVDID.js";
10
+ } from "./chunk-SHC22IAH.js";
11
+ import "./chunk-EDVD6GWH.js";
12
+ import "./chunk-CARJB3HP.js";
13
+ import "./chunk-PBTEQAZK.js";
14
14
  import {
15
15
  AssignmentError,
16
16
  CodeExecutionError,
17
+ CognitiveError,
17
18
  InvalidCodeError,
18
19
  LoopExceededError,
19
20
  Signals,
20
21
  SnapshotSignal,
21
22
  ThinkSignal,
22
23
  VMSignal
23
- } from "./chunk-JKVVQN2P.js";
24
+ } from "./chunk-MYLTD5WT.js";
24
25
  import {
25
26
  cleanStackTrace
26
- } from "./chunk-JQBT7UWN.js";
27
+ } from "./chunk-YEAWWJSJ.js";
27
28
  import "./chunk-VPTFUOIK.js";
28
29
  import "./chunk-GGWM6X2K.js";
29
30
  import "./chunk-ORQP26SZ.js";
@@ -100,7 +101,7 @@ var executeContext = async (props) => {
100
101
  return result;
101
102
  };
102
103
  var _executeContext = async (props) => {
103
- var _a, _b, _c, _d;
104
+ var _a, _b;
104
105
  const controller = createJoinedAbortController([props.signal]);
105
106
  const { onIterationEnd, onTrace, onExit, onBeforeExecution, onAfterTool, onBeforeTool } = props;
106
107
  const cognitive = Cognitive.isCognitiveClient(props.client) ? props.client : new Cognitive({ client: props.client });
@@ -111,11 +112,11 @@ var _executeContext = async (props) => {
111
112
  objects: props.objects,
112
113
  tools: props.tools,
113
114
  loop: (_a = props.options) == null ? void 0 : _a.loop,
114
- temperature: (_b = props.options) == null ? void 0 : _b.temperature,
115
- model: (_c = props.options) == null ? void 0 : _c.model,
116
- timeout: (_d = props.options) == null ? void 0 : _d.timeout,
115
+ timeout: (_b = props.options) == null ? void 0 : _b.timeout,
117
116
  exits: props.exits,
118
- snapshot: props.snapshot
117
+ snapshot: props.snapshot,
118
+ model: props.model,
119
+ temperature: props.temperature
119
120
  });
120
121
  try {
121
122
  while (true) {
@@ -207,8 +208,8 @@ var executeIteration = async ({
207
208
  var _a, _b, _c, _d, _e;
208
209
  let startedAt = Date.now();
209
210
  const traces = iteration.traces;
210
- const model = await cognitive.getModelDetails(ctx.model ?? "best");
211
- const modelLimit = model.input.maxTokens;
211
+ const model = await cognitive.getModelDetails(Array.isArray(iteration.model) ? iteration.model[0] : iteration.model);
212
+ const modelLimit = Math.max(model.input.maxTokens, 8e3);
212
213
  const responseLengthBuffer = getModelOutputLimit(modelLimit);
213
214
  const messages = truncateWrappedContent({
214
215
  messages: iteration.messages,
@@ -231,14 +232,14 @@ var executeIteration = async ({
231
232
  signal: controller.signal,
232
233
  systemPrompt: (_a = messages.find((x) => x.role === "system")) == null ? void 0 : _a.content,
233
234
  model: model.ref,
234
- temperature: ctx.temperature,
235
+ temperature: iteration.temperature,
235
236
  responseFormat: "text",
236
237
  messages: messages.filter((x) => x.role !== "system"),
237
238
  stopSequences: ctx.version.getStopTokens()
238
239
  });
239
240
  const out = ((_c = (_b = output.output.choices) == null ? void 0 : _b[0]) == null ? void 0 : _c.type) === "text" && typeof ((_d = output.output.choices) == null ? void 0 : _d[0].content) === "string" ? output.output.choices[0].content : null;
240
241
  if (!out) {
241
- throw new Error("No output from LLM");
242
+ throw new CognitiveError("LLM did not return any text output");
242
243
  }
243
244
  const assistantResponse = ctx.version.parseAssistantResponse(out);
244
245
  iteration.code = assistantResponse.code.trim();