ai 6.0.91 → 6.0.93
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +13 -0
- package/dist/index.d.mts +357 -13
- package/dist/index.d.ts +357 -13
- package/dist/index.js +198 -26
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +198 -26
- package/dist/index.mjs.map +1 -1
- package/dist/internal/index.js +1 -1
- package/dist/internal/index.mjs +1 -1
- package/docs/02-foundations/02-providers-and-models.mdx +1 -0
- package/docs/03-agents/02-building-agents.mdx +8 -7
- package/docs/03-agents/06-memory.mdx +33 -0
- package/docs/03-ai-sdk-core/05-generating-text.mdx +54 -0
- package/docs/03-ai-sdk-core/15-tools-and-tool-calling.mdx +44 -2
- package/docs/07-reference/01-ai-sdk-core/01-generate-text.mdx +667 -146
- package/package.json +2 -2
- package/src/generate-text/execute-tool-call.ts +83 -0
- package/src/generate-text/generate-text.ts +534 -11
- package/src/generate-text/index.ts +4 -0
- package/src/generate-text/step-result.ts +52 -0
- package/src/generate-text/stream-text.ts +15 -1
package/dist/index.js
CHANGED
|
@@ -1211,7 +1211,7 @@ var import_provider_utils3 = require("@ai-sdk/provider-utils");
|
|
|
1211
1211
|
var import_provider_utils4 = require("@ai-sdk/provider-utils");
|
|
1212
1212
|
|
|
1213
1213
|
// src/version.ts
|
|
1214
|
-
var VERSION = true ? "6.0.
|
|
1214
|
+
var VERSION = true ? "6.0.93" : "0.0.0-test";
|
|
1215
1215
|
|
|
1216
1216
|
// src/util/download/download.ts
|
|
1217
1217
|
var download = async ({
|
|
@@ -2752,6 +2752,14 @@ function collectToolApprovals({
|
|
|
2752
2752
|
|
|
2753
2753
|
// src/generate-text/execute-tool-call.ts
|
|
2754
2754
|
var import_provider_utils10 = require("@ai-sdk/provider-utils");
|
|
2755
|
+
|
|
2756
|
+
// src/util/now.ts
|
|
2757
|
+
function now() {
|
|
2758
|
+
var _a21, _b;
|
|
2759
|
+
return (_b = (_a21 = globalThis == null ? void 0 : globalThis.performance) == null ? void 0 : _a21.now()) != null ? _b : Date.now();
|
|
2760
|
+
}
|
|
2761
|
+
|
|
2762
|
+
// src/generate-text/execute-tool-call.ts
|
|
2755
2763
|
async function executeToolCall({
|
|
2756
2764
|
toolCall,
|
|
2757
2765
|
tools,
|
|
@@ -2760,7 +2768,11 @@ async function executeToolCall({
|
|
|
2760
2768
|
messages,
|
|
2761
2769
|
abortSignal,
|
|
2762
2770
|
experimental_context,
|
|
2763
|
-
|
|
2771
|
+
stepNumber,
|
|
2772
|
+
model,
|
|
2773
|
+
onPreliminaryToolResult,
|
|
2774
|
+
onToolCallStart,
|
|
2775
|
+
onToolCallFinish
|
|
2764
2776
|
}) {
|
|
2765
2777
|
const { toolName, toolCallId, input } = toolCall;
|
|
2766
2778
|
const tool2 = tools == null ? void 0 : tools[toolName];
|
|
@@ -2786,6 +2798,20 @@ async function executeToolCall({
|
|
|
2786
2798
|
tracer,
|
|
2787
2799
|
fn: async (span) => {
|
|
2788
2800
|
let output;
|
|
2801
|
+
try {
|
|
2802
|
+
await (onToolCallStart == null ? void 0 : onToolCallStart({
|
|
2803
|
+
stepNumber,
|
|
2804
|
+
model,
|
|
2805
|
+
toolCall,
|
|
2806
|
+
messages,
|
|
2807
|
+
abortSignal,
|
|
2808
|
+
functionId: telemetry == null ? void 0 : telemetry.functionId,
|
|
2809
|
+
metadata: telemetry == null ? void 0 : telemetry.metadata,
|
|
2810
|
+
experimental_context
|
|
2811
|
+
}));
|
|
2812
|
+
} catch (_ignored) {
|
|
2813
|
+
}
|
|
2814
|
+
const startTime = now();
|
|
2789
2815
|
try {
|
|
2790
2816
|
const stream = (0, import_provider_utils10.executeTool)({
|
|
2791
2817
|
execute: tool2.execute.bind(tool2),
|
|
@@ -2810,6 +2836,23 @@ async function executeToolCall({
|
|
|
2810
2836
|
}
|
|
2811
2837
|
}
|
|
2812
2838
|
} catch (error) {
|
|
2839
|
+
const durationMs2 = now() - startTime;
|
|
2840
|
+
try {
|
|
2841
|
+
await (onToolCallFinish == null ? void 0 : onToolCallFinish({
|
|
2842
|
+
stepNumber,
|
|
2843
|
+
model,
|
|
2844
|
+
toolCall,
|
|
2845
|
+
messages,
|
|
2846
|
+
abortSignal,
|
|
2847
|
+
success: false,
|
|
2848
|
+
error,
|
|
2849
|
+
durationMs: durationMs2,
|
|
2850
|
+
functionId: telemetry == null ? void 0 : telemetry.functionId,
|
|
2851
|
+
metadata: telemetry == null ? void 0 : telemetry.metadata,
|
|
2852
|
+
experimental_context
|
|
2853
|
+
}));
|
|
2854
|
+
} catch (_ignored) {
|
|
2855
|
+
}
|
|
2813
2856
|
recordErrorOnSpan(span, error);
|
|
2814
2857
|
return {
|
|
2815
2858
|
type: "tool-error",
|
|
@@ -2821,6 +2864,23 @@ async function executeToolCall({
|
|
|
2821
2864
|
...toolCall.providerMetadata != null ? { providerMetadata: toolCall.providerMetadata } : {}
|
|
2822
2865
|
};
|
|
2823
2866
|
}
|
|
2867
|
+
const durationMs = now() - startTime;
|
|
2868
|
+
try {
|
|
2869
|
+
await (onToolCallFinish == null ? void 0 : onToolCallFinish({
|
|
2870
|
+
stepNumber,
|
|
2871
|
+
model,
|
|
2872
|
+
toolCall,
|
|
2873
|
+
messages,
|
|
2874
|
+
abortSignal,
|
|
2875
|
+
success: true,
|
|
2876
|
+
output,
|
|
2877
|
+
durationMs,
|
|
2878
|
+
functionId: telemetry == null ? void 0 : telemetry.functionId,
|
|
2879
|
+
metadata: telemetry == null ? void 0 : telemetry.metadata,
|
|
2880
|
+
experimental_context
|
|
2881
|
+
}));
|
|
2882
|
+
} catch (_ignored) {
|
|
2883
|
+
}
|
|
2824
2884
|
try {
|
|
2825
2885
|
span.setAttributes(
|
|
2826
2886
|
await selectTelemetryAttributes({
|
|
@@ -3711,6 +3771,11 @@ async function doParseToolCall({
|
|
|
3711
3771
|
// src/generate-text/step-result.ts
|
|
3712
3772
|
var DefaultStepResult = class {
|
|
3713
3773
|
constructor({
|
|
3774
|
+
stepNumber,
|
|
3775
|
+
model,
|
|
3776
|
+
functionId,
|
|
3777
|
+
metadata,
|
|
3778
|
+
experimental_context,
|
|
3714
3779
|
content,
|
|
3715
3780
|
finishReason,
|
|
3716
3781
|
rawFinishReason,
|
|
@@ -3720,6 +3785,11 @@ var DefaultStepResult = class {
|
|
|
3720
3785
|
response,
|
|
3721
3786
|
providerMetadata
|
|
3722
3787
|
}) {
|
|
3788
|
+
this.stepNumber = stepNumber;
|
|
3789
|
+
this.model = model;
|
|
3790
|
+
this.functionId = functionId;
|
|
3791
|
+
this.metadata = metadata;
|
|
3792
|
+
this.experimental_context = experimental_context;
|
|
3723
3793
|
this.content = content;
|
|
3724
3794
|
this.finishReason = finishReason;
|
|
3725
3795
|
this.rawFinishReason = rawFinishReason;
|
|
@@ -3977,6 +4047,10 @@ async function generateText({
|
|
|
3977
4047
|
experimental_context,
|
|
3978
4048
|
experimental_include: include,
|
|
3979
4049
|
_internal: { generateId: generateId2 = originalGenerateId } = {},
|
|
4050
|
+
experimental_onStart: onStart,
|
|
4051
|
+
experimental_onStepStart: onStepStart,
|
|
4052
|
+
experimental_onToolCallStart: onToolCallStart,
|
|
4053
|
+
experimental_onToolCallFinish: onToolCallFinish,
|
|
3980
4054
|
onStepFinish,
|
|
3981
4055
|
onFinish,
|
|
3982
4056
|
...settings
|
|
@@ -4011,6 +4085,37 @@ async function generateText({
|
|
|
4011
4085
|
prompt,
|
|
4012
4086
|
messages
|
|
4013
4087
|
});
|
|
4088
|
+
try {
|
|
4089
|
+
await (onStart == null ? void 0 : onStart({
|
|
4090
|
+
model: { provider: model.provider, modelId: model.modelId },
|
|
4091
|
+
system,
|
|
4092
|
+
prompt,
|
|
4093
|
+
messages,
|
|
4094
|
+
tools,
|
|
4095
|
+
toolChoice,
|
|
4096
|
+
activeTools,
|
|
4097
|
+
maxOutputTokens: callSettings.maxOutputTokens,
|
|
4098
|
+
temperature: callSettings.temperature,
|
|
4099
|
+
topP: callSettings.topP,
|
|
4100
|
+
topK: callSettings.topK,
|
|
4101
|
+
presencePenalty: callSettings.presencePenalty,
|
|
4102
|
+
frequencyPenalty: callSettings.frequencyPenalty,
|
|
4103
|
+
stopSequences: callSettings.stopSequences,
|
|
4104
|
+
seed: callSettings.seed,
|
|
4105
|
+
maxRetries,
|
|
4106
|
+
timeout,
|
|
4107
|
+
headers,
|
|
4108
|
+
providerOptions,
|
|
4109
|
+
stopWhen,
|
|
4110
|
+
output,
|
|
4111
|
+
abortSignal,
|
|
4112
|
+
include,
|
|
4113
|
+
functionId: telemetry == null ? void 0 : telemetry.functionId,
|
|
4114
|
+
metadata: telemetry == null ? void 0 : telemetry.metadata,
|
|
4115
|
+
experimental_context
|
|
4116
|
+
}));
|
|
4117
|
+
} catch (_ignored) {
|
|
4118
|
+
}
|
|
4014
4119
|
const tracer = getTracer(telemetry);
|
|
4015
4120
|
try {
|
|
4016
4121
|
return await recordSpan({
|
|
@@ -4034,7 +4139,7 @@ async function generateText({
|
|
|
4034
4139
|
}),
|
|
4035
4140
|
tracer,
|
|
4036
4141
|
fn: async (span) => {
|
|
4037
|
-
var _a21, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k;
|
|
4142
|
+
var _a21, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m;
|
|
4038
4143
|
const initialMessages = initialPrompt.messages;
|
|
4039
4144
|
const responseMessages = [];
|
|
4040
4145
|
const { approvedToolApprovals, deniedToolApprovals } = collectToolApprovals({ messages: initialMessages });
|
|
@@ -4051,7 +4156,11 @@ async function generateText({
|
|
|
4051
4156
|
telemetry,
|
|
4052
4157
|
messages: initialMessages,
|
|
4053
4158
|
abortSignal: mergedAbortSignal,
|
|
4054
|
-
experimental_context
|
|
4159
|
+
experimental_context,
|
|
4160
|
+
stepNumber: 0,
|
|
4161
|
+
model: { provider: model.provider, modelId: model.modelId },
|
|
4162
|
+
onToolCallStart,
|
|
4163
|
+
onToolCallFinish
|
|
4055
4164
|
});
|
|
4056
4165
|
const toolContent = [];
|
|
4057
4166
|
for (const output2 of toolOutputs) {
|
|
@@ -4140,11 +4249,44 @@ async function generateText({
|
|
|
4140
4249
|
download: download2
|
|
4141
4250
|
});
|
|
4142
4251
|
experimental_context = (_d = prepareStepResult == null ? void 0 : prepareStepResult.experimental_context) != null ? _d : experimental_context;
|
|
4252
|
+
const stepActiveTools = (_e = prepareStepResult == null ? void 0 : prepareStepResult.activeTools) != null ? _e : activeTools;
|
|
4143
4253
|
const { toolChoice: stepToolChoice, tools: stepTools } = await prepareToolsAndToolChoice({
|
|
4144
4254
|
tools,
|
|
4145
|
-
toolChoice: (
|
|
4146
|
-
activeTools:
|
|
4255
|
+
toolChoice: (_f = prepareStepResult == null ? void 0 : prepareStepResult.toolChoice) != null ? _f : toolChoice,
|
|
4256
|
+
activeTools: stepActiveTools
|
|
4147
4257
|
});
|
|
4258
|
+
const stepMessages = (_g = prepareStepResult == null ? void 0 : prepareStepResult.messages) != null ? _g : stepInputMessages;
|
|
4259
|
+
const stepSystem = (_h = prepareStepResult == null ? void 0 : prepareStepResult.system) != null ? _h : initialPrompt.system;
|
|
4260
|
+
const stepProviderOptions = mergeObjects(
|
|
4261
|
+
providerOptions,
|
|
4262
|
+
prepareStepResult == null ? void 0 : prepareStepResult.providerOptions
|
|
4263
|
+
);
|
|
4264
|
+
try {
|
|
4265
|
+
await (onStepStart == null ? void 0 : onStepStart({
|
|
4266
|
+
stepNumber: steps.length,
|
|
4267
|
+
model: {
|
|
4268
|
+
provider: stepModel.provider,
|
|
4269
|
+
modelId: stepModel.modelId
|
|
4270
|
+
},
|
|
4271
|
+
system: stepSystem,
|
|
4272
|
+
messages: stepMessages,
|
|
4273
|
+
tools,
|
|
4274
|
+
toolChoice: stepToolChoice,
|
|
4275
|
+
activeTools: stepActiveTools,
|
|
4276
|
+
steps: [...steps],
|
|
4277
|
+
providerOptions: stepProviderOptions,
|
|
4278
|
+
timeout,
|
|
4279
|
+
headers,
|
|
4280
|
+
stopWhen,
|
|
4281
|
+
output,
|
|
4282
|
+
abortSignal,
|
|
4283
|
+
include,
|
|
4284
|
+
functionId: telemetry == null ? void 0 : telemetry.functionId,
|
|
4285
|
+
metadata: telemetry == null ? void 0 : telemetry.metadata,
|
|
4286
|
+
experimental_context
|
|
4287
|
+
}));
|
|
4288
|
+
} catch (_ignored) {
|
|
4289
|
+
}
|
|
4148
4290
|
currentModelResponse = await retry(
|
|
4149
4291
|
() => {
|
|
4150
4292
|
var _a22;
|
|
@@ -4187,10 +4329,6 @@ async function generateText({
|
|
|
4187
4329
|
tracer,
|
|
4188
4330
|
fn: async (span2) => {
|
|
4189
4331
|
var _a23, _b2, _c2, _d2, _e2, _f2, _g2, _h2;
|
|
4190
|
-
const stepProviderOptions = mergeObjects(
|
|
4191
|
-
providerOptions,
|
|
4192
|
-
prepareStepResult == null ? void 0 : prepareStepResult.providerOptions
|
|
4193
|
-
);
|
|
4194
4332
|
const result = await stepModel.doGenerate({
|
|
4195
4333
|
...callSettings2,
|
|
4196
4334
|
tools: stepTools,
|
|
@@ -4322,7 +4460,14 @@ async function generateText({
|
|
|
4322
4460
|
telemetry,
|
|
4323
4461
|
messages: stepInputMessages,
|
|
4324
4462
|
abortSignal: mergedAbortSignal,
|
|
4325
|
-
experimental_context
|
|
4463
|
+
experimental_context,
|
|
4464
|
+
stepNumber: steps.length,
|
|
4465
|
+
model: {
|
|
4466
|
+
provider: stepModel.provider,
|
|
4467
|
+
modelId: stepModel.modelId
|
|
4468
|
+
},
|
|
4469
|
+
onToolCallStart,
|
|
4470
|
+
onToolCallFinish
|
|
4326
4471
|
})
|
|
4327
4472
|
);
|
|
4328
4473
|
}
|
|
@@ -4359,15 +4504,24 @@ async function generateText({
|
|
|
4359
4504
|
tools
|
|
4360
4505
|
})
|
|
4361
4506
|
);
|
|
4362
|
-
const stepRequest = ((
|
|
4507
|
+
const stepRequest = ((_i = include == null ? void 0 : include.requestBody) != null ? _i : true) ? (_j = currentModelResponse.request) != null ? _j : {} : { ...currentModelResponse.request, body: void 0 };
|
|
4363
4508
|
const stepResponse = {
|
|
4364
4509
|
...currentModelResponse.response,
|
|
4365
4510
|
// deep clone msgs to avoid mutating past messages in multi-step:
|
|
4366
4511
|
messages: structuredClone(responseMessages),
|
|
4367
4512
|
// Conditionally include response body:
|
|
4368
|
-
body: ((
|
|
4513
|
+
body: ((_k = include == null ? void 0 : include.responseBody) != null ? _k : true) ? (_l = currentModelResponse.response) == null ? void 0 : _l.body : void 0
|
|
4369
4514
|
};
|
|
4515
|
+
const stepNumber = steps.length;
|
|
4370
4516
|
const currentStepResult = new DefaultStepResult({
|
|
4517
|
+
stepNumber,
|
|
4518
|
+
model: {
|
|
4519
|
+
provider: stepModel.provider,
|
|
4520
|
+
modelId: stepModel.modelId
|
|
4521
|
+
},
|
|
4522
|
+
functionId: telemetry == null ? void 0 : telemetry.functionId,
|
|
4523
|
+
metadata: telemetry == null ? void 0 : telemetry.metadata,
|
|
4524
|
+
experimental_context,
|
|
4371
4525
|
content: stepContent,
|
|
4372
4526
|
finishReason: currentModelResponse.finishReason.unified,
|
|
4373
4527
|
rawFinishReason: currentModelResponse.finishReason.raw,
|
|
@@ -4378,7 +4532,7 @@ async function generateText({
|
|
|
4378
4532
|
response: stepResponse
|
|
4379
4533
|
});
|
|
4380
4534
|
logWarnings({
|
|
4381
|
-
warnings: (
|
|
4535
|
+
warnings: (_m = currentModelResponse.warnings) != null ? _m : [],
|
|
4382
4536
|
provider: stepModel.provider,
|
|
4383
4537
|
model: stepModel.modelId
|
|
4384
4538
|
});
|
|
@@ -4436,6 +4590,11 @@ async function generateText({
|
|
|
4436
4590
|
}
|
|
4437
4591
|
);
|
|
4438
4592
|
await (onFinish == null ? void 0 : onFinish({
|
|
4593
|
+
stepNumber: lastStep.stepNumber,
|
|
4594
|
+
model: lastStep.model,
|
|
4595
|
+
functionId: lastStep.functionId,
|
|
4596
|
+
metadata: lastStep.metadata,
|
|
4597
|
+
experimental_context: lastStep.experimental_context,
|
|
4439
4598
|
finishReason: lastStep.finishReason,
|
|
4440
4599
|
rawFinishReason: lastStep.rawFinishReason,
|
|
4441
4600
|
usage: lastStep.usage,
|
|
@@ -4456,8 +4615,7 @@ async function generateText({
|
|
|
4456
4615
|
warnings: lastStep.warnings,
|
|
4457
4616
|
providerMetadata: lastStep.providerMetadata,
|
|
4458
4617
|
steps,
|
|
4459
|
-
totalUsage
|
|
4460
|
-
experimental_context
|
|
4618
|
+
totalUsage
|
|
4461
4619
|
}));
|
|
4462
4620
|
let resolvedOutput;
|
|
4463
4621
|
if (lastStep.finishReason === "stop") {
|
|
@@ -4489,7 +4647,11 @@ async function executeTools({
|
|
|
4489
4647
|
telemetry,
|
|
4490
4648
|
messages,
|
|
4491
4649
|
abortSignal,
|
|
4492
|
-
experimental_context
|
|
4650
|
+
experimental_context,
|
|
4651
|
+
stepNumber,
|
|
4652
|
+
model,
|
|
4653
|
+
onToolCallStart,
|
|
4654
|
+
onToolCallFinish
|
|
4493
4655
|
}) {
|
|
4494
4656
|
const toolOutputs = await Promise.all(
|
|
4495
4657
|
toolCalls.map(
|
|
@@ -4500,7 +4662,11 @@ async function executeTools({
|
|
|
4500
4662
|
telemetry,
|
|
4501
4663
|
messages,
|
|
4502
4664
|
abortSignal,
|
|
4503
|
-
experimental_context
|
|
4665
|
+
experimental_context,
|
|
4666
|
+
stepNumber,
|
|
4667
|
+
model,
|
|
4668
|
+
onToolCallStart,
|
|
4669
|
+
onToolCallFinish
|
|
4504
4670
|
})
|
|
4505
4671
|
)
|
|
4506
4672
|
);
|
|
@@ -5884,12 +6050,6 @@ function createStitchableStream() {
|
|
|
5884
6050
|
};
|
|
5885
6051
|
}
|
|
5886
6052
|
|
|
5887
|
-
// src/util/now.ts
|
|
5888
|
-
function now() {
|
|
5889
|
-
var _a21, _b;
|
|
5890
|
-
return (_b = (_a21 = globalThis == null ? void 0 : globalThis.performance) == null ? void 0 : _a21.now()) != null ? _b : Date.now();
|
|
5891
|
-
}
|
|
5892
|
-
|
|
5893
6053
|
// src/generate-text/run-tools-transformation.ts
|
|
5894
6054
|
var import_provider_utils18 = require("@ai-sdk/provider-utils");
|
|
5895
6055
|
function runToolsTransformation({
|
|
@@ -6449,6 +6609,14 @@ var DefaultStreamTextResult = class {
|
|
|
6449
6609
|
tools
|
|
6450
6610
|
});
|
|
6451
6611
|
const currentStepResult = new DefaultStepResult({
|
|
6612
|
+
stepNumber: recordedSteps.length,
|
|
6613
|
+
model: {
|
|
6614
|
+
provider: model.provider,
|
|
6615
|
+
modelId: model.modelId
|
|
6616
|
+
},
|
|
6617
|
+
functionId: telemetry == null ? void 0 : telemetry.functionId,
|
|
6618
|
+
metadata: telemetry == null ? void 0 : telemetry.metadata,
|
|
6619
|
+
experimental_context,
|
|
6452
6620
|
content: recordedContent,
|
|
6453
6621
|
finishReason: part.finishReason,
|
|
6454
6622
|
rawFinishReason: part.rawFinishReason,
|
|
@@ -6497,6 +6665,11 @@ var DefaultStreamTextResult = class {
|
|
|
6497
6665
|
self._steps.resolve(recordedSteps);
|
|
6498
6666
|
const finalStep = recordedSteps[recordedSteps.length - 1];
|
|
6499
6667
|
await (onFinish == null ? void 0 : onFinish({
|
|
6668
|
+
stepNumber: finalStep.stepNumber,
|
|
6669
|
+
model: finalStep.model,
|
|
6670
|
+
functionId: finalStep.functionId,
|
|
6671
|
+
metadata: finalStep.metadata,
|
|
6672
|
+
experimental_context: finalStep.experimental_context,
|
|
6500
6673
|
finishReason: finalStep.finishReason,
|
|
6501
6674
|
rawFinishReason: finalStep.rawFinishReason,
|
|
6502
6675
|
totalUsage,
|
|
@@ -6517,8 +6690,7 @@ var DefaultStreamTextResult = class {
|
|
|
6517
6690
|
response: finalStep.response,
|
|
6518
6691
|
warnings: finalStep.warnings,
|
|
6519
6692
|
providerMetadata: finalStep.providerMetadata,
|
|
6520
|
-
steps: recordedSteps
|
|
6521
|
-
experimental_context
|
|
6693
|
+
steps: recordedSteps
|
|
6522
6694
|
}));
|
|
6523
6695
|
rootSpan.setAttributes(
|
|
6524
6696
|
await selectTelemetryAttributes({
|