@mastra/core 0.16.2 → 0.16.3-alpha.1

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 (169) hide show
  1. package/CHANGELOG.md +44 -0
  2. package/dist/agent/agent.d.ts +316 -0
  3. package/dist/agent/agent.d.ts.map +1 -0
  4. package/dist/agent/agent.types.d.ts +19 -2
  5. package/dist/agent/agent.types.d.ts.map +1 -1
  6. package/dist/agent/index.cjs +11 -11
  7. package/dist/agent/index.d.ts +4 -313
  8. package/dist/agent/index.d.ts.map +1 -1
  9. package/dist/agent/index.js +2 -2
  10. package/dist/agent/input-processor/index.cjs +6 -6
  11. package/dist/agent/input-processor/index.js +1 -1
  12. package/dist/agent/types.d.ts +8 -1
  13. package/dist/agent/types.d.ts.map +1 -1
  14. package/dist/ai-tracing/base.d.ts.map +1 -1
  15. package/dist/ai-tracing/context.d.ts.map +1 -1
  16. package/dist/ai-tracing/default.d.ts +1 -2
  17. package/dist/ai-tracing/default.d.ts.map +1 -1
  18. package/dist/ai-tracing/exporters/cloud.d.ts +32 -0
  19. package/dist/ai-tracing/exporters/cloud.d.ts.map +1 -0
  20. package/dist/ai-tracing/exporters/default.d.ts.map +1 -1
  21. package/dist/ai-tracing/exporters/index.d.ts +2 -0
  22. package/dist/ai-tracing/exporters/index.d.ts.map +1 -1
  23. package/dist/ai-tracing/index.cjs +36 -40
  24. package/dist/ai-tracing/index.js +1 -1
  25. package/dist/ai-tracing/no-op.d.ts +1 -0
  26. package/dist/ai-tracing/no-op.d.ts.map +1 -1
  27. package/dist/ai-tracing/registry.d.ts.map +1 -1
  28. package/dist/ai-tracing/types.d.ts +39 -14
  29. package/dist/ai-tracing/types.d.ts.map +1 -1
  30. package/dist/ai-tracing/utils.d.ts +29 -19
  31. package/dist/ai-tracing/utils.d.ts.map +1 -1
  32. package/dist/{chunk-JLVFFZT7.cjs → chunk-2LEMTQEN.cjs} +4 -4
  33. package/dist/{chunk-JLVFFZT7.cjs.map → chunk-2LEMTQEN.cjs.map} +1 -1
  34. package/dist/{chunk-6RVOPJVP.cjs → chunk-37GX66ZQ.cjs} +7 -7
  35. package/dist/{chunk-6RVOPJVP.cjs.map → chunk-37GX66ZQ.cjs.map} +1 -1
  36. package/dist/{chunk-IMDDMIVR.cjs → chunk-3CYEVZGC.cjs} +6 -6
  37. package/dist/{chunk-IMDDMIVR.cjs.map → chunk-3CYEVZGC.cjs.map} +1 -1
  38. package/dist/{chunk-P67M4R6G.js → chunk-46ZMVRXN.js} +5 -5
  39. package/dist/{chunk-P67M4R6G.js.map → chunk-46ZMVRXN.js.map} +1 -1
  40. package/dist/chunk-4WQYXT2I.cjs +12 -0
  41. package/dist/chunk-4WQYXT2I.cjs.map +1 -0
  42. package/dist/{chunk-YYRE76UM.js → chunk-6ILOFPTU.js} +4 -4
  43. package/dist/{chunk-YYRE76UM.js.map → chunk-6ILOFPTU.js.map} +1 -1
  44. package/dist/{chunk-YI3AIJJL.js → chunk-7ARB2XCY.js} +4 -4
  45. package/dist/chunk-7ARB2XCY.js.map +1 -0
  46. package/dist/{chunk-SJO2HEVU.cjs → chunk-AV5QBG6P.cjs} +185 -125
  47. package/dist/chunk-AV5QBG6P.cjs.map +1 -0
  48. package/dist/{chunk-RVNDGKE5.js → chunk-BE6HGZV7.js} +3 -3
  49. package/dist/{chunk-RVNDGKE5.js.map → chunk-BE6HGZV7.js.map} +1 -1
  50. package/dist/chunk-CM4UEIAB.cjs +808 -0
  51. package/dist/chunk-CM4UEIAB.cjs.map +1 -0
  52. package/dist/{chunk-DUABZASJ.js → chunk-DWGGSV3L.js} +4 -4
  53. package/dist/{chunk-DUABZASJ.js.map → chunk-DWGGSV3L.js.map} +1 -1
  54. package/dist/chunk-HHRWDBFK.js +737 -0
  55. package/dist/chunk-HHRWDBFK.js.map +1 -0
  56. package/dist/{chunk-D3UG2YLU.cjs → chunk-I77GWNQI.cjs} +5 -5
  57. package/dist/chunk-I77GWNQI.cjs.map +1 -0
  58. package/dist/chunk-PJKCPRYF.js +3 -0
  59. package/dist/chunk-PJKCPRYF.js.map +1 -0
  60. package/dist/{chunk-ZIDWSQFD.cjs → chunk-PPMRSBCA.cjs} +8 -8
  61. package/dist/{chunk-ZIDWSQFD.cjs.map → chunk-PPMRSBCA.cjs.map} +1 -1
  62. package/dist/{chunk-YBKHXKRR.js → chunk-SLQGF75B.js} +3 -3
  63. package/dist/{chunk-YBKHXKRR.js.map → chunk-SLQGF75B.js.map} +1 -1
  64. package/dist/{chunk-OYHHJUTH.cjs → chunk-VK7LOYGD.cjs} +12 -12
  65. package/dist/{chunk-OYHHJUTH.cjs.map → chunk-VK7LOYGD.cjs.map} +1 -1
  66. package/dist/{chunk-UGCG7DI3.cjs → chunk-VVUCWRGD.cjs} +855 -87
  67. package/dist/chunk-VVUCWRGD.cjs.map +1 -0
  68. package/dist/{chunk-2NKNTPFR.js → chunk-W5K2KOZX.js} +834 -85
  69. package/dist/chunk-W5K2KOZX.js.map +1 -0
  70. package/dist/{chunk-BQ43NQXK.js → chunk-WAN6BRTN.js} +182 -122
  71. package/dist/chunk-WAN6BRTN.js.map +1 -0
  72. package/dist/index.cjs +38 -38
  73. package/dist/index.js +7 -7
  74. package/dist/llm/model/base.types.d.ts +6 -4
  75. package/dist/llm/model/base.types.d.ts.map +1 -1
  76. package/dist/llm/model/model.d.ts +0 -2
  77. package/dist/llm/model/model.d.ts.map +1 -1
  78. package/dist/llm/model/model.loop.d.ts.map +1 -1
  79. package/dist/loop/index.cjs +2 -2
  80. package/dist/loop/index.js +1 -1
  81. package/dist/loop/loop.d.ts.map +1 -1
  82. package/dist/loop/network/index.d.ts +139 -0
  83. package/dist/loop/network/index.d.ts.map +1 -0
  84. package/dist/loop/test-utils/streamObject.d.ts.map +1 -1
  85. package/dist/loop/types.d.ts +2 -0
  86. package/dist/loop/types.d.ts.map +1 -1
  87. package/dist/loop/workflow/llm-execution.d.ts +5 -5
  88. package/dist/loop/workflow/llm-execution.d.ts.map +1 -1
  89. package/dist/loop/workflow/outer-llm-step.d.ts +2 -2
  90. package/dist/loop/workflow/schema.d.ts +12 -12
  91. package/dist/loop/workflow/stream.d.ts.map +1 -1
  92. package/dist/loop/workflow/tool-call-step.d.ts +10 -10
  93. package/dist/mastra/index.cjs +2 -2
  94. package/dist/mastra/index.js +1 -1
  95. package/dist/memory/index.cjs +4 -4
  96. package/dist/memory/index.js +1 -1
  97. package/dist/network/index.cjs +6 -3
  98. package/dist/network/index.cjs.map +1 -1
  99. package/dist/network/index.js +5 -2
  100. package/dist/network/index.js.map +1 -1
  101. package/dist/network/network.d.ts.map +1 -1
  102. package/dist/network/vNext/index.cjs +32 -30
  103. package/dist/network/vNext/index.cjs.map +1 -1
  104. package/dist/network/vNext/index.d.ts +7 -7
  105. package/dist/network/vNext/index.d.ts.map +1 -1
  106. package/dist/network/vNext/index.js +5 -3
  107. package/dist/network/vNext/index.js.map +1 -1
  108. package/dist/processors/index.cjs +8 -8
  109. package/dist/processors/index.js +2 -2
  110. package/dist/processors/runner.d.ts +2 -2
  111. package/dist/processors/runner.d.ts.map +1 -1
  112. package/dist/relevance/index.cjs +4 -4
  113. package/dist/relevance/index.js +1 -1
  114. package/dist/scores/index.cjs +8 -8
  115. package/dist/scores/index.js +1 -1
  116. package/dist/scores/types.d.ts +2 -2
  117. package/dist/storage/index.cjs +3 -3
  118. package/dist/storage/index.js +1 -1
  119. package/dist/stream/MastraWorkflowStream.d.ts +1 -1
  120. package/dist/stream/base/output-format-handlers.d.ts.map +1 -1
  121. package/dist/stream/base/output.d.ts +13 -3
  122. package/dist/stream/base/output.d.ts.map +1 -1
  123. package/dist/stream/base/schema.d.ts +3 -2
  124. package/dist/stream/base/schema.d.ts.map +1 -1
  125. package/dist/stream/index.cjs +3 -3
  126. package/dist/stream/index.d.ts +1 -1
  127. package/dist/stream/index.d.ts.map +1 -1
  128. package/dist/stream/index.js +1 -1
  129. package/dist/stream/types.d.ts +139 -1
  130. package/dist/stream/types.d.ts.map +1 -1
  131. package/dist/test-utils/llm-mock.cjs +2 -2
  132. package/dist/test-utils/llm-mock.js +1 -1
  133. package/dist/utils.cjs +17 -17
  134. package/dist/utils.js +1 -1
  135. package/dist/workflows/default.d.ts +3 -2
  136. package/dist/workflows/default.d.ts.map +1 -1
  137. package/dist/workflows/evented/index.cjs +10 -10
  138. package/dist/workflows/evented/index.js +1 -1
  139. package/dist/workflows/execution-engine.d.ts +2 -2
  140. package/dist/workflows/execution-engine.d.ts.map +1 -1
  141. package/dist/workflows/index.cjs +10 -10
  142. package/dist/workflows/index.js +1 -1
  143. package/dist/workflows/legacy/index.cjs +22 -22
  144. package/dist/workflows/legacy/index.js +1 -1
  145. package/dist/workflows/legacy/machine.d.ts +1 -1
  146. package/dist/workflows/legacy/workflow.d.ts +1 -1
  147. package/dist/workflows/types.d.ts +5 -4
  148. package/dist/workflows/types.d.ts.map +1 -1
  149. package/dist/workflows/workflow.d.ts +8 -4
  150. package/dist/workflows/workflow.d.ts.map +1 -1
  151. package/dist/zod-to-json.cjs +2 -2
  152. package/dist/zod-to-json.cjs.map +1 -1
  153. package/dist/zod-to-json.js +1 -1
  154. package/dist/zod-to-json.js.map +1 -1
  155. package/package.json +5 -5
  156. package/dist/chunk-2NKNTPFR.js.map +0 -1
  157. package/dist/chunk-3MSZBGO3.js +0 -15991
  158. package/dist/chunk-3MSZBGO3.js.map +0 -1
  159. package/dist/chunk-BJASJTXK.cjs +0 -16061
  160. package/dist/chunk-BJASJTXK.cjs.map +0 -1
  161. package/dist/chunk-BQ43NQXK.js.map +0 -1
  162. package/dist/chunk-D3UG2YLU.cjs.map +0 -1
  163. package/dist/chunk-KB4IEMPV.cjs +0 -548
  164. package/dist/chunk-KB4IEMPV.cjs.map +0 -1
  165. package/dist/chunk-SJO2HEVU.cjs.map +0 -1
  166. package/dist/chunk-TDLB5JKT.js +0 -527
  167. package/dist/chunk-TDLB5JKT.js.map +0 -1
  168. package/dist/chunk-UGCG7DI3.cjs.map +0 -1
  169. package/dist/chunk-YI3AIJJL.js.map +0 -1
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var chunkKB4IEMPV_cjs = require('./chunk-KB4IEMPV.cjs');
3
+ var chunkVVUCWRGD_cjs = require('./chunk-VVUCWRGD.cjs');
4
4
  var chunkC73WLCY3_cjs = require('./chunk-C73WLCY3.cjs');
5
5
  var chunkKXCUCBEI_cjs = require('./chunk-KXCUCBEI.cjs');
6
6
  var schemaCompat = require('@mastra/schema-compat');
@@ -65,120 +65,6 @@ var MastraLLMV1 = class extends chunkKXCUCBEI_cjs.MastraBase {
65
65
  mode: "aiSdkSchema"
66
66
  });
67
67
  }
68
- _startAISpan(params) {
69
- const { model, tracingContext, name, streaming, options } = params;
70
- return tracingContext.currentSpan?.createChildSpan({
71
- name,
72
- type: "llm_generation" /* LLM_GENERATION */,
73
- input: options.prompt,
74
- attributes: {
75
- model: model.modelId,
76
- provider: model.provider,
77
- parameters: {
78
- temperature: options.temperature,
79
- maxTokens: options.maxTokens,
80
- topP: options.topP,
81
- frequencyPenalty: options.frequencyPenalty,
82
- presencePenalty: options.presencePenalty,
83
- stop: options.stop
84
- },
85
- streaming
86
- }
87
- });
88
- }
89
- _wrapModel(model, tracingContext) {
90
- if (!tracingContext.currentSpan) {
91
- return model;
92
- }
93
- const wrappedDoGenerate = async (options) => {
94
- const llmSpan = this._startAISpan({
95
- model,
96
- tracingContext,
97
- name: `llm generate: '${model.modelId}'`,
98
- streaming: false,
99
- options
100
- });
101
- try {
102
- const result = await model.doGenerate(options);
103
- llmSpan?.end({
104
- output: result.text,
105
- attributes: {
106
- usage: result.usage ? {
107
- promptTokens: result.usage.promptTokens,
108
- completionTokens: result.usage.completionTokens
109
- } : void 0
110
- }
111
- });
112
- return result;
113
- } catch (error) {
114
- llmSpan?.error({ error });
115
- throw error;
116
- }
117
- };
118
- const wrappedDoStream = async (options) => {
119
- const llmSpan = this._startAISpan({
120
- model,
121
- tracingContext,
122
- name: `llm stream: '${model.modelId}'`,
123
- streaming: true,
124
- options
125
- });
126
- try {
127
- const result = await model.doStream(options);
128
- const originalStream = result.stream;
129
- let finishReason;
130
- let finalUsage = null;
131
- let textOutput = "";
132
- const wrappedStream = originalStream.pipeThrough(
133
- new TransformStream({
134
- // this gets called on each chunk output
135
- transform(chunk, controller) {
136
- switch (chunk.type) {
137
- case "text-delta":
138
- textOutput += chunk.textDelta;
139
- break;
140
- case "finish":
141
- finishReason = chunk.finishReason;
142
- finalUsage = chunk.usage;
143
- break;
144
- }
145
- controller.enqueue(chunk);
146
- },
147
- // this gets called at the end of the stream
148
- flush() {
149
- llmSpan?.end({
150
- attributes: {
151
- output: textOutput,
152
- usage: finalUsage ? {
153
- promptTokens: finalUsage.promptTokens,
154
- completionTokens: finalUsage.completionTokens,
155
- totalTokens: finalUsage.totalTokens
156
- } : void 0
157
- },
158
- metadata: {
159
- finishReason
160
- }
161
- });
162
- }
163
- })
164
- );
165
- return {
166
- ...result,
167
- stream: wrappedStream
168
- };
169
- } catch (error) {
170
- llmSpan?.error({ error });
171
- throw error;
172
- }
173
- };
174
- return new Proxy(model, {
175
- get(target, prop) {
176
- if (prop === "doGenerate") return wrappedDoGenerate;
177
- if (prop === "doStream") return wrappedDoStream;
178
- return target[prop];
179
- }
180
- });
181
- }
182
68
  async __text({
183
69
  runId,
184
70
  messages,
@@ -209,7 +95,7 @@ var MastraLLMV1 = class extends chunkKXCUCBEI_cjs.MastraBase {
209
95
  this.logger.debug("[LLM] - Using experimental output", {
210
96
  runId
211
97
  });
212
- if (chunkKB4IEMPV_cjs.isZodType(experimental_output)) {
98
+ if (chunkVVUCWRGD_cjs.isZodType(experimental_output)) {
213
99
  schema = experimental_output;
214
100
  if (schema instanceof zod.z.ZodArray) {
215
101
  schema = schema._def.type;
@@ -221,10 +107,35 @@ var MastraLLMV1 = class extends chunkKXCUCBEI_cjs.MastraBase {
221
107
  schema = ai.jsonSchema(experimental_output);
222
108
  }
223
109
  }
110
+ const llmSpan = tracingContext.currentSpan?.createChildSpan({
111
+ name: `llm: '${model.modelId}'`,
112
+ type: "llm_generation" /* LLM_GENERATION */,
113
+ input: {
114
+ messages,
115
+ schema
116
+ },
117
+ attributes: {
118
+ model: model.modelId,
119
+ provider: model.provider,
120
+ parameters: {
121
+ temperature,
122
+ maxOutputTokens: rest.maxTokens,
123
+ topP: rest.topP,
124
+ frequencyPenalty: rest.frequencyPenalty,
125
+ presencePenalty: rest.presencePenalty
126
+ },
127
+ streaming: false
128
+ },
129
+ metadata: {
130
+ runId,
131
+ threadId,
132
+ resourceId
133
+ }
134
+ });
224
135
  const argsForExecute = {
225
136
  ...rest,
226
137
  messages,
227
- model: this._wrapModel(model, tracingContext),
138
+ model,
228
139
  temperature,
229
140
  tools: {
230
141
  ...tools
@@ -266,7 +177,7 @@ var MastraLLMV1 = class extends chunkKXCUCBEI_cjs.MastraBase {
266
177
  });
267
178
  if (props?.response?.headers?.["x-ratelimit-remaining-tokens"] && parseInt(props?.response?.headers?.["x-ratelimit-remaining-tokens"], 10) < 2e3) {
268
179
  this.logger.warn("Rate limit approaching, waiting 10 seconds", { runId });
269
- await chunkKB4IEMPV_cjs.delay(10 * 1e3);
180
+ await chunkVVUCWRGD_cjs.delay(10 * 1e3);
270
181
  }
271
182
  },
272
183
  experimental_telemetry: {
@@ -282,6 +193,21 @@ var MastraLLMV1 = class extends chunkKXCUCBEI_cjs.MastraBase {
282
193
  if (schema && result.finishReason === "stop") {
283
194
  result.object = result.experimental_output;
284
195
  }
196
+ llmSpan?.end({
197
+ output: {
198
+ text: result.text,
199
+ object: result.object,
200
+ reasoning: result.reasoningDetails,
201
+ reasoningText: result.reasoning,
202
+ files: result.files,
203
+ sources: result.sources,
204
+ warnings: result.warnings
205
+ },
206
+ attributes: {
207
+ finishReason: result.finishReason,
208
+ usage: result.usage
209
+ }
210
+ });
285
211
  return result;
286
212
  } catch (e) {
287
213
  const mastraError = new chunkC73WLCY3_cjs.MastraError(
@@ -299,6 +225,7 @@ var MastraLLMV1 = class extends chunkKXCUCBEI_cjs.MastraBase {
299
225
  },
300
226
  e
301
227
  );
228
+ llmSpan?.error({ error: mastraError });
302
229
  throw mastraError;
303
230
  }
304
231
  }
@@ -315,6 +242,30 @@ var MastraLLMV1 = class extends chunkKXCUCBEI_cjs.MastraBase {
315
242
  }) {
316
243
  const model = this.#model;
317
244
  this.logger.debug(`[LLM] - Generating a text object`, { runId });
245
+ const llmSpan = tracingContext.currentSpan?.createChildSpan({
246
+ name: `llm: '${model.modelId}'`,
247
+ type: "llm_generation" /* LLM_GENERATION */,
248
+ input: {
249
+ messages
250
+ },
251
+ attributes: {
252
+ model: model.modelId,
253
+ provider: model.provider,
254
+ parameters: {
255
+ temperature: rest.temperature,
256
+ maxOutputTokens: rest.maxTokens,
257
+ topP: rest.topP,
258
+ frequencyPenalty: rest.frequencyPenalty,
259
+ presencePenalty: rest.presencePenalty
260
+ },
261
+ streaming: false
262
+ },
263
+ metadata: {
264
+ runId,
265
+ threadId,
266
+ resourceId
267
+ }
268
+ });
318
269
  try {
319
270
  let output = "object";
320
271
  if (structuredOutput instanceof zod.z.ZodArray) {
@@ -322,10 +273,16 @@ var MastraLLMV1 = class extends chunkKXCUCBEI_cjs.MastraBase {
322
273
  structuredOutput = structuredOutput._def.type;
323
274
  }
324
275
  const processedSchema = this._applySchemaCompat(structuredOutput);
276
+ llmSpan?.update({
277
+ input: {
278
+ messages,
279
+ schema: processedSchema
280
+ }
281
+ });
325
282
  const argsForExecute = {
326
283
  ...rest,
327
284
  messages,
328
- model: this._wrapModel(model, tracingContext),
285
+ model,
329
286
  // @ts-expect-error - output in our implementation can only be object or array
330
287
  output,
331
288
  schema: processedSchema,
@@ -335,7 +292,18 @@ var MastraLLMV1 = class extends chunkKXCUCBEI_cjs.MastraBase {
335
292
  }
336
293
  };
337
294
  try {
338
- return await ai.generateObject(argsForExecute);
295
+ const result = await ai.generateObject(argsForExecute);
296
+ llmSpan?.end({
297
+ output: {
298
+ object: result.object,
299
+ warnings: result.warnings
300
+ },
301
+ attributes: {
302
+ finishReason: result.finishReason,
303
+ usage: result.usage
304
+ }
305
+ });
306
+ return result;
339
307
  } catch (e) {
340
308
  const mastraError = new chunkC73WLCY3_cjs.MastraError(
341
309
  {
@@ -352,6 +320,7 @@ var MastraLLMV1 = class extends chunkKXCUCBEI_cjs.MastraBase {
352
320
  },
353
321
  e
354
322
  );
323
+ llmSpan?.error({ error: mastraError });
355
324
  throw mastraError;
356
325
  }
357
326
  } catch (e) {
@@ -373,6 +342,7 @@ var MastraLLMV1 = class extends chunkKXCUCBEI_cjs.MastraBase {
373
342
  },
374
343
  e
375
344
  );
345
+ llmSpan?.error({ error: mastraError });
376
346
  throw mastraError;
377
347
  }
378
348
  }
@@ -416,8 +386,32 @@ var MastraLLMV1 = class extends chunkKXCUCBEI_cjs.MastraBase {
416
386
  schema = ai.jsonSchema(experimental_output);
417
387
  }
418
388
  }
389
+ const llmSpan = tracingContext.currentSpan?.createChildSpan({
390
+ name: `llm: '${model.modelId}'`,
391
+ type: "llm_generation" /* LLM_GENERATION */,
392
+ input: {
393
+ messages
394
+ },
395
+ attributes: {
396
+ model: model.modelId,
397
+ provider: model.provider,
398
+ parameters: {
399
+ temperature,
400
+ maxOutputTokens: rest.maxTokens,
401
+ topP: rest.topP,
402
+ frequencyPenalty: rest.frequencyPenalty,
403
+ presencePenalty: rest.presencePenalty
404
+ },
405
+ streaming: true
406
+ },
407
+ metadata: {
408
+ runId,
409
+ threadId,
410
+ resourceId
411
+ }
412
+ });
419
413
  const argsForExecute = {
420
- model: this._wrapModel(model, tracingContext),
414
+ model,
421
415
  temperature,
422
416
  tools: {
423
417
  ...tools
@@ -448,6 +442,7 @@ var MastraLLMV1 = class extends chunkKXCUCBEI_cjs.MastraBase {
448
442
  e
449
443
  );
450
444
  this.logger.trackException(mastraError);
445
+ llmSpan?.error({ error: mastraError });
451
446
  throw mastraError;
452
447
  }
453
448
  this.logger.debug("[LLM] - Stream Step Change:", {
@@ -460,12 +455,26 @@ var MastraLLMV1 = class extends chunkKXCUCBEI_cjs.MastraBase {
460
455
  });
461
456
  if (props?.response?.headers?.["x-ratelimit-remaining-tokens"] && parseInt(props?.response?.headers?.["x-ratelimit-remaining-tokens"], 10) < 2e3) {
462
457
  this.logger.warn("Rate limit approaching, waiting 10 seconds", { runId });
463
- await chunkKB4IEMPV_cjs.delay(10 * 1e3);
458
+ await chunkVVUCWRGD_cjs.delay(10 * 1e3);
464
459
  }
465
460
  },
466
461
  onFinish: async (props) => {
467
462
  try {
468
463
  await onFinish?.({ ...props, runId });
464
+ llmSpan?.end({
465
+ output: {
466
+ text: props?.text,
467
+ reasoning: props?.reasoningDetails,
468
+ reasoningText: props?.reasoning,
469
+ files: props?.files,
470
+ sources: props?.sources,
471
+ warnings: props?.warnings
472
+ },
473
+ attributes: {
474
+ finishReason: props?.finishReason,
475
+ usage: props?.usage
476
+ }
477
+ });
469
478
  } catch (e) {
470
479
  const mastraError = new chunkC73WLCY3_cjs.MastraError(
471
480
  {
@@ -486,6 +495,7 @@ var MastraLLMV1 = class extends chunkKXCUCBEI_cjs.MastraBase {
486
495
  },
487
496
  e
488
497
  );
498
+ llmSpan?.error({ error: mastraError });
489
499
  this.logger.trackException(mastraError);
490
500
  throw mastraError;
491
501
  }
@@ -528,6 +538,7 @@ var MastraLLMV1 = class extends chunkKXCUCBEI_cjs.MastraBase {
528
538
  },
529
539
  e
530
540
  );
541
+ llmSpan?.error({ error: mastraError });
531
542
  throw mastraError;
532
543
  }
533
544
  }
@@ -548,6 +559,30 @@ var MastraLLMV1 = class extends chunkKXCUCBEI_cjs.MastraBase {
548
559
  runId,
549
560
  messages
550
561
  });
562
+ const llmSpan = tracingContext.currentSpan?.createChildSpan({
563
+ name: `llm: '${model.modelId}'`,
564
+ type: "llm_generation" /* LLM_GENERATION */,
565
+ input: {
566
+ messages
567
+ },
568
+ attributes: {
569
+ model: model.modelId,
570
+ provider: model.provider,
571
+ parameters: {
572
+ temperature: rest.temperature,
573
+ maxOutputTokens: rest.maxTokens,
574
+ topP: rest.topP,
575
+ frequencyPenalty: rest.frequencyPenalty,
576
+ presencePenalty: rest.presencePenalty
577
+ },
578
+ streaming: true
579
+ },
580
+ metadata: {
581
+ runId,
582
+ threadId,
583
+ resourceId
584
+ }
585
+ });
551
586
  try {
552
587
  let output = "object";
553
588
  if (structuredOutput instanceof zod.z.ZodArray) {
@@ -555,12 +590,33 @@ var MastraLLMV1 = class extends chunkKXCUCBEI_cjs.MastraBase {
555
590
  structuredOutput = structuredOutput._def.type;
556
591
  }
557
592
  const processedSchema = this._applySchemaCompat(structuredOutput);
593
+ llmSpan?.update({
594
+ input: {
595
+ messages,
596
+ schema: processedSchema
597
+ }
598
+ });
558
599
  const argsForExecute = {
559
600
  ...rest,
560
- model: this._wrapModel(model, tracingContext),
601
+ model,
561
602
  onFinish: async (props) => {
562
603
  try {
563
604
  await onFinish?.({ ...props, runId });
605
+ llmSpan?.end({
606
+ output: {
607
+ text: props?.text,
608
+ object: props?.object,
609
+ reasoning: props?.reasoningDetails,
610
+ reasoningText: props?.reasoning,
611
+ files: props?.files,
612
+ sources: props?.sources,
613
+ warnings: props?.warnings
614
+ },
615
+ attributes: {
616
+ finishReason: props?.finishReason,
617
+ usage: props?.usage
618
+ }
619
+ });
564
620
  } catch (e) {
565
621
  const mastraError = new chunkC73WLCY3_cjs.MastraError(
566
622
  {
@@ -582,6 +638,7 @@ var MastraLLMV1 = class extends chunkKXCUCBEI_cjs.MastraBase {
582
638
  e
583
639
  );
584
640
  this.logger.trackException(mastraError);
641
+ llmSpan?.error({ error: mastraError });
585
642
  throw mastraError;
586
643
  }
587
644
  this.logger.debug("[LLM] - Object Stream Finished:", {
@@ -618,10 +675,12 @@ var MastraLLMV1 = class extends chunkKXCUCBEI_cjs.MastraBase {
618
675
  },
619
676
  e
620
677
  );
678
+ llmSpan?.error({ error: mastraError });
621
679
  throw mastraError;
622
680
  }
623
681
  } catch (e) {
624
682
  if (e instanceof chunkC73WLCY3_cjs.MastraError) {
683
+ llmSpan?.error({ error: e });
625
684
  throw e;
626
685
  }
627
686
  const mastraError = new chunkC73WLCY3_cjs.MastraError(
@@ -639,6 +698,7 @@ var MastraLLMV1 = class extends chunkKXCUCBEI_cjs.MastraBase {
639
698
  },
640
699
  e
641
700
  );
701
+ llmSpan?.error({ error: mastraError });
642
702
  throw mastraError;
643
703
  }
644
704
  }
@@ -706,5 +766,5 @@ var MastraLLMV1 = class extends chunkKXCUCBEI_cjs.MastraBase {
706
766
  };
707
767
 
708
768
  exports.MastraLLMV1 = MastraLLMV1;
709
- //# sourceMappingURL=chunk-SJO2HEVU.cjs.map
710
- //# sourceMappingURL=chunk-SJO2HEVU.cjs.map
769
+ //# sourceMappingURL=chunk-AV5QBG6P.cjs.map
770
+ //# sourceMappingURL=chunk-AV5QBG6P.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/llm/model/model.ts"],"names":["MastraBase","OpenAIReasoningSchemaCompatLayer","OpenAISchemaCompatLayer","GoogleSchemaCompatLayer","AnthropicSchemaCompatLayer","DeepSeekSchemaCompatLayer","MetaSchemaCompatLayer","applyCompatLayer","isZodType","z","zodToJsonSchema","jsonSchema","MastraError","delay","Output","generateText","generateObject","streamText","streamObject"],"mappings":"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","file":"chunk-AV5QBG6P.cjs","sourcesContent":["import {\n AnthropicSchemaCompatLayer,\n applyCompatLayer,\n DeepSeekSchemaCompatLayer,\n GoogleSchemaCompatLayer,\n MetaSchemaCompatLayer,\n OpenAIReasoningSchemaCompatLayer,\n OpenAISchemaCompatLayer,\n} from '@mastra/schema-compat';\nimport { zodToJsonSchema } from '@mastra/schema-compat/zod-to-json';\nimport type { CoreMessage, LanguageModel, Schema, StreamObjectOnFinishCallback, StreamTextOnFinishCallback } from 'ai';\nimport { generateObject, generateText, jsonSchema, Output, streamObject, streamText } from 'ai';\nimport type { JSONSchema7 } from 'json-schema';\nimport type { ZodSchema } from 'zod';\nimport { z } from 'zod';\nimport type { MastraPrimitives } from '../../action';\nimport { AISpanType } from '../../ai-tracing';\nimport { MastraBase } from '../../base';\nimport { MastraError, ErrorDomain, ErrorCategory } from '../../error';\nimport type { Mastra } from '../../mastra';\nimport { delay, isZodType } from '../../utils';\n\nimport type {\n GenerateObjectWithMessagesArgs,\n GenerateTextResult,\n GenerateObjectResult,\n GenerateTextWithMessagesArgs,\n OriginalGenerateTextOptions,\n ToolSet,\n GenerateReturn,\n OriginalGenerateObjectOptions,\n StreamTextWithMessagesArgs,\n StreamTextResult,\n OriginalStreamTextOptions,\n StreamObjectWithMessagesArgs,\n OriginalStreamObjectOptions,\n StreamObjectResult,\n StreamReturn,\n} from './base.types';\nimport type { inferOutput } from './shared.types';\n\nexport class MastraLLMV1 extends MastraBase {\n #model: LanguageModel;\n #mastra?: Mastra;\n\n constructor({ model, mastra }: { model: LanguageModel; mastra?: Mastra }) {\n super({ name: 'aisdk' });\n\n this.#model = model;\n\n if (mastra) {\n this.#mastra = mastra;\n if (mastra.getLogger()) {\n this.__setLogger(this.#mastra.getLogger());\n }\n }\n }\n\n __registerPrimitives(p: MastraPrimitives) {\n if (p.telemetry) {\n this.__setTelemetry(p.telemetry);\n }\n\n if (p.logger) {\n this.__setLogger(p.logger);\n }\n }\n\n __registerMastra(p: Mastra) {\n this.#mastra = p;\n }\n\n getProvider() {\n return this.#model.provider;\n }\n\n getModelId() {\n return this.#model.modelId;\n }\n\n getModel() {\n return this.#model;\n }\n\n private _applySchemaCompat(schema: ZodSchema | JSONSchema7): Schema {\n const model = this.#model;\n\n const schemaCompatLayers = [];\n\n if (model) {\n const modelInfo = {\n modelId: model.modelId,\n supportsStructuredOutputs: model.supportsStructuredOutputs ?? false,\n provider: model.provider,\n };\n schemaCompatLayers.push(\n new OpenAIReasoningSchemaCompatLayer(modelInfo),\n new OpenAISchemaCompatLayer(modelInfo),\n new GoogleSchemaCompatLayer(modelInfo),\n new AnthropicSchemaCompatLayer(modelInfo),\n new DeepSeekSchemaCompatLayer(modelInfo),\n new MetaSchemaCompatLayer(modelInfo),\n );\n }\n\n return applyCompatLayer({\n schema: schema as any,\n compatLayers: schemaCompatLayers,\n mode: 'aiSdkSchema',\n });\n }\n\n async __text<Tools extends ToolSet, Z extends ZodSchema | JSONSchema7 | undefined>({\n runId,\n messages,\n maxSteps = 5,\n tools = {},\n temperature,\n toolChoice = 'auto',\n onStepFinish,\n experimental_output,\n telemetry,\n threadId,\n resourceId,\n runtimeContext,\n tracingContext,\n ...rest\n }: GenerateTextWithMessagesArgs<Tools, Z>): Promise<GenerateTextResult<Tools, Z>> {\n const model = this.#model;\n\n this.logger.debug(`[LLM] - Generating text`, {\n runId,\n messages,\n maxSteps,\n threadId,\n resourceId,\n tools: Object.keys(tools),\n });\n\n let schema: z.ZodType<inferOutput<Z>> | Schema<inferOutput<Z>> | undefined = undefined;\n\n if (experimental_output) {\n this.logger.debug('[LLM] - Using experimental output', {\n runId,\n });\n\n if (isZodType(experimental_output)) {\n schema = experimental_output as z.ZodType<inferOutput<Z>>;\n if (schema instanceof z.ZodArray) {\n schema = schema._def.type as z.ZodType<inferOutput<Z>>;\n }\n\n let jsonSchemaToUse;\n jsonSchemaToUse = zodToJsonSchema(schema, 'jsonSchema7') as JSONSchema7;\n\n schema = jsonSchema(jsonSchemaToUse) as Schema<inferOutput<Z>>;\n } else {\n schema = jsonSchema(experimental_output as JSONSchema7) as Schema<inferOutput<Z>>;\n }\n }\n\n const llmSpan = tracingContext.currentSpan?.createChildSpan({\n name: `llm: '${model.modelId}'`,\n type: AISpanType.LLM_GENERATION,\n input: {\n messages,\n schema,\n },\n attributes: {\n model: model.modelId,\n provider: model.provider,\n parameters: {\n temperature,\n maxOutputTokens: rest.maxTokens,\n topP: rest.topP,\n frequencyPenalty: rest.frequencyPenalty,\n presencePenalty: rest.presencePenalty,\n },\n streaming: false,\n },\n metadata: {\n runId,\n threadId,\n resourceId,\n },\n });\n\n const argsForExecute: OriginalGenerateTextOptions<Tools, Z> = {\n ...rest,\n messages,\n model,\n temperature,\n tools: {\n ...(tools as Tools),\n },\n toolChoice,\n maxSteps,\n onStepFinish: async props => {\n try {\n await onStepFinish?.({ ...props, runId: runId! });\n } catch (e: unknown) {\n const mastraError = new MastraError(\n {\n id: 'LLM_TEXT_ON_STEP_FINISH_CALLBACK_EXECUTION_FAILED',\n domain: ErrorDomain.LLM,\n category: ErrorCategory.USER,\n details: {\n modelId: model.modelId,\n modelProvider: model.provider,\n runId: runId ?? 'unknown',\n threadId: threadId ?? 'unknown',\n resourceId: resourceId ?? 'unknown',\n finishReason: props?.finishReason,\n toolCalls: props?.toolCalls ? JSON.stringify(props.toolCalls) : '',\n toolResults: props?.toolResults ? JSON.stringify(props.toolResults) : '',\n usage: props?.usage ? JSON.stringify(props.usage) : '',\n },\n },\n e,\n );\n throw mastraError;\n }\n\n this.logger.debug('[LLM] - Text Step Change:', {\n text: props?.text,\n toolCalls: props?.toolCalls,\n toolResults: props?.toolResults,\n finishReason: props?.finishReason,\n usage: props?.usage,\n runId,\n });\n\n if (\n props?.response?.headers?.['x-ratelimit-remaining-tokens'] &&\n parseInt(props?.response?.headers?.['x-ratelimit-remaining-tokens'], 10) < 2000\n ) {\n this.logger.warn('Rate limit approaching, waiting 10 seconds', { runId });\n await delay(10 * 1000);\n }\n },\n experimental_telemetry: {\n ...this.experimental_telemetry,\n ...telemetry,\n },\n experimental_output: schema\n ? Output.object({\n schema,\n })\n : undefined,\n };\n\n try {\n const result: GenerateTextResult<Tools, Z> = await generateText(argsForExecute);\n\n if (schema && result.finishReason === 'stop') {\n result.object = (result as any).experimental_output;\n }\n llmSpan?.end({\n output: {\n text: result.text,\n object: result.object,\n reasoning: result.reasoningDetails,\n reasoningText: result.reasoning,\n files: result.files,\n sources: result.sources,\n warnings: result.warnings,\n },\n attributes: {\n finishReason: result.finishReason,\n usage: result.usage,\n },\n });\n\n return result;\n } catch (e: unknown) {\n const mastraError = new MastraError(\n {\n id: 'LLM_GENERATE_TEXT_AI_SDK_EXECUTION_FAILED',\n domain: ErrorDomain.LLM,\n category: ErrorCategory.THIRD_PARTY,\n details: {\n modelId: model.modelId,\n modelProvider: model.provider,\n runId: runId ?? 'unknown',\n threadId: threadId ?? 'unknown',\n resourceId: resourceId ?? 'unknown',\n },\n },\n e,\n );\n llmSpan?.error({ error: mastraError });\n throw mastraError;\n }\n }\n\n async __textObject<Z extends ZodSchema | JSONSchema7>({\n messages,\n structuredOutput,\n runId,\n telemetry,\n threadId,\n resourceId,\n runtimeContext,\n tracingContext,\n ...rest\n }: GenerateObjectWithMessagesArgs<Z>): Promise<GenerateObjectResult<Z>> {\n const model = this.#model;\n\n this.logger.debug(`[LLM] - Generating a text object`, { runId });\n\n const llmSpan = tracingContext.currentSpan?.createChildSpan({\n name: `llm: '${model.modelId}'`,\n type: AISpanType.LLM_GENERATION,\n input: {\n messages,\n },\n attributes: {\n model: model.modelId,\n provider: model.provider,\n parameters: {\n temperature: rest.temperature,\n maxOutputTokens: rest.maxTokens,\n topP: rest.topP,\n frequencyPenalty: rest.frequencyPenalty,\n presencePenalty: rest.presencePenalty,\n },\n streaming: false,\n },\n metadata: {\n runId,\n threadId,\n resourceId,\n },\n });\n\n try {\n let output: 'object' | 'array' = 'object';\n if (structuredOutput instanceof z.ZodArray) {\n output = 'array';\n structuredOutput = structuredOutput._def.type;\n }\n\n const processedSchema = this._applySchemaCompat(structuredOutput!);\n llmSpan?.update({\n input: {\n messages,\n schema: processedSchema,\n },\n });\n\n const argsForExecute: OriginalGenerateObjectOptions<Z> = {\n ...rest,\n messages,\n model,\n // @ts-expect-error - output in our implementation can only be object or array\n output,\n schema: processedSchema as Schema<Z>,\n experimental_telemetry: {\n ...this.experimental_telemetry,\n ...telemetry,\n },\n };\n\n try {\n // @ts-expect-error - output in our implementation can only be object or array\n const result = await generateObject(argsForExecute);\n\n llmSpan?.end({\n output: {\n object: result.object,\n warnings: result.warnings,\n },\n attributes: {\n finishReason: result.finishReason,\n usage: result.usage,\n },\n });\n\n // @ts-expect-error - output in our implementation can only be object or array\n return result;\n } catch (e: unknown) {\n const mastraError = new MastraError(\n {\n id: 'LLM_GENERATE_OBJECT_AI_SDK_EXECUTION_FAILED',\n domain: ErrorDomain.LLM,\n category: ErrorCategory.THIRD_PARTY,\n details: {\n modelId: model.modelId,\n modelProvider: model.provider,\n runId: runId ?? 'unknown',\n threadId: threadId ?? 'unknown',\n resourceId: resourceId ?? 'unknown',\n },\n },\n e,\n );\n llmSpan?.error({ error: mastraError });\n throw mastraError;\n }\n } catch (e: unknown) {\n if (e instanceof MastraError) {\n throw e;\n }\n\n const mastraError = new MastraError(\n {\n id: 'LLM_GENERATE_OBJECT_AI_SDK_SCHEMA_CONVERSION_FAILED',\n domain: ErrorDomain.LLM,\n category: ErrorCategory.USER,\n details: {\n modelId: model.modelId,\n modelProvider: model.provider,\n runId: runId ?? 'unknown',\n threadId: threadId ?? 'unknown',\n resourceId: resourceId ?? 'unknown',\n },\n },\n e,\n );\n llmSpan?.error({ error: mastraError });\n throw mastraError;\n }\n }\n\n __stream<Tools extends ToolSet, Z extends ZodSchema | JSONSchema7 | undefined = undefined>({\n messages,\n onStepFinish,\n onFinish,\n maxSteps = 5,\n tools = {},\n runId,\n temperature,\n toolChoice = 'auto',\n experimental_output,\n telemetry,\n threadId,\n resourceId,\n runtimeContext,\n tracingContext,\n ...rest\n }: StreamTextWithMessagesArgs<Tools, Z>): StreamTextResult<Tools, Z> {\n const model = this.#model;\n this.logger.debug(`[LLM] - Streaming text`, {\n runId,\n threadId,\n resourceId,\n messages,\n maxSteps,\n tools: Object.keys(tools || {}),\n });\n\n let schema: z.ZodType<Z> | Schema<Z> | undefined;\n if (experimental_output) {\n this.logger.debug('[LLM] - Using experimental output', {\n runId,\n });\n if (typeof (experimental_output as any).parse === 'function') {\n schema = experimental_output as z.ZodType<Z>;\n if (schema instanceof z.ZodArray) {\n schema = schema._def.type as z.ZodType<Z>;\n }\n } else {\n schema = jsonSchema(experimental_output as JSONSchema7) as Schema<Z>;\n }\n }\n\n const llmSpan = tracingContext.currentSpan?.createChildSpan({\n name: `llm: '${model.modelId}'`,\n type: AISpanType.LLM_GENERATION,\n input: {\n messages,\n },\n attributes: {\n model: model.modelId,\n provider: model.provider,\n parameters: {\n temperature,\n maxOutputTokens: rest.maxTokens,\n topP: rest.topP,\n frequencyPenalty: rest.frequencyPenalty,\n presencePenalty: rest.presencePenalty,\n },\n streaming: true,\n },\n metadata: {\n runId,\n threadId,\n resourceId,\n },\n });\n\n const argsForExecute: OriginalStreamTextOptions<Tools, Z> = {\n model,\n temperature,\n tools: {\n ...(tools as Tools),\n },\n maxSteps,\n toolChoice,\n onStepFinish: async props => {\n try {\n await onStepFinish?.({ ...props, runId: runId! });\n } catch (e: unknown) {\n const mastraError = new MastraError(\n {\n id: 'LLM_STREAM_ON_STEP_FINISH_CALLBACK_EXECUTION_FAILED',\n domain: ErrorDomain.LLM,\n category: ErrorCategory.USER,\n details: {\n modelId: model.modelId,\n modelProvider: model.provider,\n runId: runId ?? 'unknown',\n threadId: threadId ?? 'unknown',\n resourceId: resourceId ?? 'unknown',\n finishReason: props?.finishReason,\n toolCalls: props?.toolCalls ? JSON.stringify(props.toolCalls) : '',\n toolResults: props?.toolResults ? JSON.stringify(props.toolResults) : '',\n usage: props?.usage ? JSON.stringify(props.usage) : '',\n },\n },\n e,\n );\n this.logger.trackException(mastraError);\n llmSpan?.error({ error: mastraError });\n throw mastraError;\n }\n\n this.logger.debug('[LLM] - Stream Step Change:', {\n text: props?.text,\n toolCalls: props?.toolCalls,\n toolResults: props?.toolResults,\n finishReason: props?.finishReason,\n usage: props?.usage,\n runId,\n });\n\n if (\n props?.response?.headers?.['x-ratelimit-remaining-tokens'] &&\n parseInt(props?.response?.headers?.['x-ratelimit-remaining-tokens'], 10) < 2000\n ) {\n this.logger.warn('Rate limit approaching, waiting 10 seconds', { runId });\n await delay(10 * 1000);\n }\n },\n onFinish: async props => {\n try {\n await onFinish?.({ ...props, runId: runId! });\n llmSpan?.end({\n output: {\n text: props?.text,\n reasoning: props?.reasoningDetails,\n reasoningText: props?.reasoning,\n files: props?.files,\n sources: props?.sources,\n warnings: props?.warnings,\n },\n attributes: {\n finishReason: props?.finishReason,\n usage: props?.usage,\n },\n });\n } catch (e: unknown) {\n const mastraError = new MastraError(\n {\n id: 'LLM_STREAM_ON_FINISH_CALLBACK_EXECUTION_FAILED',\n domain: ErrorDomain.LLM,\n category: ErrorCategory.USER,\n details: {\n modelId: model.modelId,\n modelProvider: model.provider,\n runId: runId ?? 'unknown',\n threadId: threadId ?? 'unknown',\n resourceId: resourceId ?? 'unknown',\n finishReason: props?.finishReason,\n toolCalls: props?.toolCalls ? JSON.stringify(props.toolCalls) : '',\n toolResults: props?.toolResults ? JSON.stringify(props.toolResults) : '',\n usage: props?.usage ? JSON.stringify(props.usage) : '',\n },\n },\n e,\n );\n llmSpan?.error({ error: mastraError });\n this.logger.trackException(mastraError);\n throw mastraError;\n }\n\n this.logger.debug('[LLM] - Stream Finished:', {\n text: props?.text,\n toolCalls: props?.toolCalls,\n toolResults: props?.toolResults,\n finishReason: props?.finishReason,\n usage: props?.usage,\n runId,\n threadId,\n resourceId,\n });\n },\n ...rest,\n messages,\n experimental_telemetry: {\n ...this.experimental_telemetry,\n ...telemetry,\n },\n experimental_output: schema\n ? (Output.object({\n schema,\n }) as any)\n : undefined,\n };\n\n try {\n return streamText(argsForExecute);\n } catch (e: unknown) {\n const mastraError = new MastraError(\n {\n id: 'LLM_STREAM_TEXT_AI_SDK_EXECUTION_FAILED',\n domain: ErrorDomain.LLM,\n category: ErrorCategory.THIRD_PARTY,\n details: {\n modelId: model.modelId,\n modelProvider: model.provider,\n runId: runId ?? 'unknown',\n threadId: threadId ?? 'unknown',\n resourceId: resourceId ?? 'unknown',\n },\n },\n e,\n );\n llmSpan?.error({ error: mastraError });\n throw mastraError;\n }\n }\n\n __streamObject<T extends ZodSchema | JSONSchema7>({\n messages,\n runId,\n runtimeContext,\n threadId,\n resourceId,\n onFinish,\n structuredOutput,\n telemetry,\n tracingContext,\n ...rest\n }: StreamObjectWithMessagesArgs<T>): StreamObjectResult<T> {\n const model = this.#model;\n this.logger.debug(`[LLM] - Streaming structured output`, {\n runId,\n messages,\n });\n\n const llmSpan = tracingContext.currentSpan?.createChildSpan({\n name: `llm: '${model.modelId}'`,\n type: AISpanType.LLM_GENERATION,\n input: {\n messages,\n },\n attributes: {\n model: model.modelId,\n provider: model.provider,\n parameters: {\n temperature: rest.temperature,\n maxOutputTokens: rest.maxTokens,\n topP: rest.topP,\n frequencyPenalty: rest.frequencyPenalty,\n presencePenalty: rest.presencePenalty,\n },\n streaming: true,\n },\n metadata: {\n runId,\n threadId,\n resourceId,\n },\n });\n\n try {\n let output: 'object' | 'array' = 'object';\n if (structuredOutput instanceof z.ZodArray) {\n output = 'array';\n structuredOutput = structuredOutput._def.type;\n }\n\n const processedSchema = this._applySchemaCompat(structuredOutput!);\n llmSpan?.update({\n input: {\n messages,\n schema: processedSchema,\n },\n });\n\n const argsForExecute: OriginalStreamObjectOptions<T> = {\n ...rest,\n model,\n onFinish: async (props: any) => {\n try {\n await onFinish?.({ ...props, runId: runId! });\n llmSpan?.end({\n output: {\n text: props?.text,\n object: props?.object,\n reasoning: props?.reasoningDetails,\n reasoningText: props?.reasoning,\n files: props?.files,\n sources: props?.sources,\n warnings: props?.warnings,\n },\n attributes: {\n finishReason: props?.finishReason,\n usage: props?.usage,\n },\n });\n } catch (e: unknown) {\n const mastraError = new MastraError(\n {\n id: 'LLM_STREAM_OBJECT_ON_FINISH_CALLBACK_EXECUTION_FAILED',\n domain: ErrorDomain.LLM,\n category: ErrorCategory.USER,\n details: {\n modelId: model.modelId,\n modelProvider: model.provider,\n runId: runId ?? 'unknown',\n threadId: threadId ?? 'unknown',\n resourceId: resourceId ?? 'unknown',\n toolCalls: '',\n toolResults: '',\n finishReason: '',\n usage: props?.usage ? JSON.stringify(props.usage) : '',\n },\n },\n e,\n );\n this.logger.trackException(mastraError);\n llmSpan?.error({ error: mastraError });\n throw mastraError;\n }\n\n this.logger.debug('[LLM] - Object Stream Finished:', {\n usage: props?.usage,\n runId,\n threadId,\n resourceId,\n });\n },\n messages,\n // @ts-expect-error - output in our implementation can only be object or array\n output,\n experimental_telemetry: {\n ...this.experimental_telemetry,\n ...telemetry,\n },\n schema: processedSchema as Schema<inferOutput<T>>,\n };\n\n try {\n return streamObject(argsForExecute as any);\n } catch (e: unknown) {\n const mastraError = new MastraError(\n {\n id: 'LLM_STREAM_OBJECT_AI_SDK_EXECUTION_FAILED',\n domain: ErrorDomain.LLM,\n category: ErrorCategory.THIRD_PARTY,\n details: {\n modelId: model.modelId,\n modelProvider: model.provider,\n runId: runId ?? 'unknown',\n threadId: threadId ?? 'unknown',\n resourceId: resourceId ?? 'unknown',\n },\n },\n e,\n );\n llmSpan?.error({ error: mastraError });\n throw mastraError;\n }\n } catch (e: unknown) {\n if (e instanceof MastraError) {\n llmSpan?.error({ error: e });\n throw e;\n }\n\n const mastraError = new MastraError(\n {\n id: 'LLM_STREAM_OBJECT_AI_SDK_SCHEMA_CONVERSION_FAILED',\n domain: ErrorDomain.LLM,\n category: ErrorCategory.USER,\n details: {\n modelId: model.modelId,\n modelProvider: model.provider,\n runId: runId ?? 'unknown',\n threadId: threadId ?? 'unknown',\n resourceId: resourceId ?? 'unknown',\n },\n },\n e,\n );\n llmSpan?.error({ error: mastraError });\n throw mastraError;\n }\n }\n\n convertToMessages(messages: string | string[] | CoreMessage[]): CoreMessage[] {\n if (Array.isArray(messages)) {\n return messages.map(m => {\n if (typeof m === 'string') {\n return {\n role: 'user',\n content: m,\n };\n }\n return m;\n });\n }\n\n return [\n {\n role: 'user',\n content: messages,\n },\n ];\n }\n\n async generate<\n Output extends ZodSchema | JSONSchema7 | undefined = undefined,\n StructuredOutput extends ZodSchema | JSONSchema7 | undefined = undefined,\n Tools extends ToolSet = ToolSet,\n >(\n messages: string | string[] | CoreMessage[],\n {\n output,\n ...rest\n }: Omit<\n Output extends undefined\n ? GenerateTextWithMessagesArgs<Tools, StructuredOutput>\n : Omit<GenerateObjectWithMessagesArgs<NonNullable<Output>>, 'structuredOutput' | 'output'>,\n 'messages'\n > & { output?: Output },\n ): Promise<GenerateReturn<Tools, Output, StructuredOutput>> {\n const msgs = this.convertToMessages(messages);\n\n if (!output) {\n const { maxSteps, onStepFinish, ...textOptions } = rest as Omit<\n GenerateTextWithMessagesArgs<Tools, StructuredOutput>,\n 'messages'\n >;\n return (await this.__text<Tools, StructuredOutput>({\n messages: msgs,\n maxSteps,\n onStepFinish,\n ...textOptions,\n })) as unknown as GenerateReturn<Tools, Output, StructuredOutput>;\n }\n\n return (await this.__textObject({\n messages: msgs,\n structuredOutput: output as NonNullable<Output>,\n ...rest,\n })) as unknown as GenerateReturn<Tools, Output, StructuredOutput>;\n }\n\n stream<\n Output extends ZodSchema | JSONSchema7 | undefined = undefined,\n StructuredOutput extends ZodSchema | JSONSchema7 | undefined = undefined,\n Tools extends ToolSet = ToolSet,\n >(\n messages: string | string[] | CoreMessage[],\n {\n maxSteps = 5,\n output,\n onFinish,\n ...rest\n }: Omit<\n Output extends undefined\n ? StreamTextWithMessagesArgs<Tools, StructuredOutput>\n : Omit<StreamObjectWithMessagesArgs<NonNullable<Output>>, 'structuredOutput' | 'output'> & { maxSteps?: never },\n 'messages'\n > & { output?: Output },\n ): StreamReturn<Tools, Output, StructuredOutput> {\n const msgs = this.convertToMessages(messages);\n\n if (!output) {\n return this.__stream({\n messages: msgs,\n maxSteps,\n onFinish: onFinish as StreamTextOnFinishCallback<Tools> | undefined,\n ...rest,\n }) as unknown as StreamReturn<Tools, Output, StructuredOutput>;\n }\n\n return this.__streamObject({\n messages: msgs,\n structuredOutput: output as NonNullable<Output>,\n onFinish: onFinish as StreamObjectOnFinishCallback<inferOutput<Output>> | undefined,\n ...rest,\n }) as unknown as StreamReturn<Tools, Output, StructuredOutput>;\n }\n}\n"]}
@@ -1,4 +1,4 @@
1
- import { createStep, createWorkflow, Agent, Workflow } from './chunk-3MSZBGO3.js';
1
+ import { createStep, createWorkflow, Agent, Workflow } from './chunk-HHRWDBFK.js';
2
2
  import { MastraError } from './chunk-MCOVMKIS.js';
3
3
  import { z } from 'zod';
4
4
  import { randomUUID } from 'crypto';
@@ -661,5 +661,5 @@ async function runScorers(scorers, targetResult, item) {
661
661
  }
662
662
 
663
663
  export { MastraScorer, createScorer, runExperiment, saveScorePayloadSchema, scoreResultSchema, scoringExtractStepResultSchema, scoringValueSchema };
664
- //# sourceMappingURL=chunk-RVNDGKE5.js.map
665
- //# sourceMappingURL=chunk-RVNDGKE5.js.map
664
+ //# sourceMappingURL=chunk-BE6HGZV7.js.map
665
+ //# sourceMappingURL=chunk-BE6HGZV7.js.map