Skip to content

Commit 197c366

Browse files
jsonbaileyclaude
andcommitted
chore: Update examples to use createTracker() factory
Replace the removed tracker property with the new createTracker() factory pattern in bedrock, openai, and vercel-ai examples. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
1 parent 39c92ec commit 197c366

3 files changed

Lines changed: 18 additions & 17 deletions

File tree

packages/sdk/server-ai/examples/bedrock/src/index.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -62,12 +62,13 @@ async function main() {
6262
},
6363
);
6464

65-
if (!aiConfig.enabled || !aiConfig.tracker) {
65+
if (!aiConfig.enabled) {
6666
console.log('*** AI configuration is not enabled');
6767
process.exit(0);
6868
}
6969

70-
const completion = aiConfig.tracker.trackBedrockConverseMetrics(
70+
const tracker = aiConfig.createTracker!();
71+
const completion = tracker.trackBedrockConverseMetrics(
7172
await awsClient.send(
7273
new ConverseCommand({
7374
modelId: aiConfig.model?.name ?? 'no-model',

packages/sdk/server-ai/examples/openai/src/index.ts

Lines changed: 9 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -60,20 +60,19 @@ async function main() {
6060
myVariable: 'My User Defined Variable',
6161
});
6262

63-
if (!aiConfig.enabled || !aiConfig.tracker) {
63+
if (!aiConfig.enabled) {
6464
console.log('*** AI configuration is not enabled');
6565
process.exit(0);
6666
}
6767

68-
const completion = await aiConfig.tracker.trackMetricsOf(
69-
OpenAIProvider.createAIMetrics,
70-
async () =>
71-
client.chat.completions.create({
72-
messages: aiConfig.messages || [],
73-
model: aiConfig.model?.name || 'gpt-4',
74-
temperature: (aiConfig.model?.parameters?.temperature as number) ?? 0.5,
75-
max_tokens: (aiConfig.model?.parameters?.maxTokens as number) ?? 4096,
76-
}),
68+
const tracker = aiConfig.createTracker!();
69+
const completion = await tracker.trackMetricsOf(OpenAIProvider.createAIMetrics, async () =>
70+
client.chat.completions.create({
71+
messages: aiConfig.messages || [],
72+
model: aiConfig.model?.name || 'gpt-4',
73+
temperature: (aiConfig.model?.parameters?.temperature as number) ?? 0.5,
74+
max_tokens: (aiConfig.model?.parameters?.maxTokens as number) ?? 4096,
75+
}),
7776
);
7877

7978
console.log('AI Response:', completion.choices[0]?.message.content);

packages/sdk/server-ai/examples/vercel-ai/src/index.ts

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ async function main() {
5252
// const aiConfig = await aiClient.completionConfig(aiConfigKey, context, defaultValue);
5353
const aiConfig = await aiClient.completionConfig(aiConfigKey, context);
5454

55-
if (!aiConfig.enabled || !aiConfig.tracker) {
55+
if (!aiConfig.enabled) {
5656
console.log('*** AI configuration is not enabled');
5757
process.exit(0);
5858
}
@@ -74,9 +74,9 @@ async function main() {
7474
});
7575

7676
// Call the model and track metrics for the ai config
77-
const result = await aiConfig.tracker.trackMetricsOf(
78-
VercelProvider.getAIMetricsFromResponse,
79-
() => generateText({ ...vercelConfig, messages: vercelConfig.messages ?? [] }),
77+
const tracker = aiConfig.createTracker!();
78+
const result = await tracker.trackMetricsOf(VercelProvider.getAIMetricsFromResponse, () =>
79+
generateText({ ...vercelConfig, messages: vercelConfig.messages ?? [] }),
8080
);
8181

8282
console.log('Response:', result.text);
@@ -99,7 +99,8 @@ async function main() {
9999
});
100100

101101
// Stream is returned immediately (synchronously), metrics tracked in background
102-
const streamResult = aiConfig.tracker.trackStreamMetricsOf(
102+
const streamTracker = aiConfig.createTracker!();
103+
const streamResult = streamTracker.trackStreamMetricsOf(
103104
() => streamText({ ...vercelConfig, messages: vercelConfig.messages ?? [] }),
104105
VercelProvider.getAIMetricsFromStream,
105106
);

0 commit comments

Comments
 (0)