Closed
Description
Description
providerMetadata
{
reasoningTokens: 0,
acceptedPredictionTokens: 0,
rejectedPredictionTokens: 0,
cachedPromptTokens: 0,
}
usage
{
promptTokens: 1378,
completionTokens: 9,
totalTokens: 1387,
}
The missing cachedPromptTokens is currently necessary to properly estimate the cost of different tokens
const startTime = Date.now();
const modelId = "gpt-4.1";
const result = streamText({
// model: openai("gpt-4o-mini"),
// model: openai("gpt-4o"),
model: openai(modelId),
messages: messagesWithSystem,
system: systemPrompt,
tools: currentNodeTools,
async onFinish(data) {
const durationMilliseconds = Date.now() - startTime;
await logChatTokenUsage(data, modelId, durationMilliseconds, {
glowChatId: glowChat.id,
glowId: glowChat.glowId,
});
const { response } = data;
const isAnyResponseMsgNotToolCall = response.messages.some(
(msg) => !isMsgNotToolCall(msg),
);
if (!isAnyResponseMsgNotToolCall) {
const newMessages = {
id,
messages: appendResponseMessages({
messages,
responseMessages: response.messages,
}),
};
await saveGlowChat(newMessages);
}
},
});
AI SDK Version
No response