mirror of
https://github.com/pacnpal/Roo-Code.git
synced 2025-12-20 12:21:13 -05:00
@@ -110,6 +110,13 @@ export class GlamaHandler implements ApiHandler, SingleCompletionHandler {
|
|||||||
}
|
}
|
||||||
|
|
||||||
try {
|
try {
|
||||||
|
let attempt = 0
|
||||||
|
|
||||||
|
const delay = (ms: number) => new Promise((resolve) => setTimeout(resolve, ms))
|
||||||
|
|
||||||
|
while (attempt++ < 10) {
|
||||||
|
// In case of an interrupted request, we need to wait for the upstream API to finish processing the request
|
||||||
|
// before we can fetch information about the token usage and cost.
|
||||||
const response = await axios.get(
|
const response = await axios.get(
|
||||||
`https://glama.ai/api/gateway/v1/completion-requests/${completionRequestId}`,
|
`https://glama.ai/api/gateway/v1/completion-requests/${completionRequestId}`,
|
||||||
{
|
{
|
||||||
@@ -121,7 +128,7 @@ export class GlamaHandler implements ApiHandler, SingleCompletionHandler {
|
|||||||
|
|
||||||
const completionRequest = response.data
|
const completionRequest = response.data
|
||||||
|
|
||||||
if (completionRequest.tokenUsage) {
|
if (completionRequest.tokenUsage && completionRequest.totalCostUsd) {
|
||||||
yield {
|
yield {
|
||||||
type: "usage",
|
type: "usage",
|
||||||
cacheWriteTokens: completionRequest.tokenUsage.cacheCreationInputTokens,
|
cacheWriteTokens: completionRequest.tokenUsage.cacheCreationInputTokens,
|
||||||
@@ -130,6 +137,11 @@ export class GlamaHandler implements ApiHandler, SingleCompletionHandler {
|
|||||||
outputTokens: completionRequest.tokenUsage.completionTokens,
|
outputTokens: completionRequest.tokenUsage.completionTokens,
|
||||||
totalCost: parseFloat(completionRequest.totalCostUsd),
|
totalCost: parseFloat(completionRequest.totalCostUsd),
|
||||||
}
|
}
|
||||||
|
|
||||||
|
break
|
||||||
|
}
|
||||||
|
|
||||||
|
await delay(200)
|
||||||
}
|
}
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
console.error("Error fetching Glama completion details", error)
|
console.error("Error fetching Glama completion details", error)
|
||||||
|
|||||||
Reference in New Issue
Block a user