(span: Span, part: Response.StreamPartEncoded)
| 1268 | } |
| 1269 | |
| 1270 | const annotateStreamResponse = (span: Span, part: Response.StreamPartEncoded) => { |
| 1271 | if (part.type === "response-metadata") { |
| 1272 | addGenAIAnnotations(span, { |
| 1273 | response: { |
| 1274 | id: part.id, |
| 1275 | model: part.modelId |
| 1276 | } |
| 1277 | }) |
| 1278 | } |
| 1279 | if (part.type === "finish") { |
| 1280 | const serviceTier = part.metadata?.openai?.serviceTier as string | undefined |
| 1281 | addGenAIAnnotations(span, { |
| 1282 | response: { |
| 1283 | finishReasons: [part.reason] |
| 1284 | }, |
| 1285 | usage: { |
| 1286 | inputTokens: part.usage.inputTokens, |
| 1287 | outputTokens: part.usage.outputTokens |
| 1288 | }, |
| 1289 | openai: { |
| 1290 | response: { serviceTier } |
| 1291 | } |
| 1292 | }) |
| 1293 | } |
| 1294 | } |
| 1295 | |
| 1296 | // ============================================================================= |
| 1297 | // Tool Calling |
no outgoing calls
no test coverage detected
searching dependent graphs…