ChatCompletion\FunctionInvokingChatClient.cs (16)
274using Activity? activity = CurrentActivityIsInvokeAgent ? null : _activitySource?.StartActivity(OpenTelemetryConsts.GenAI.OrchestrateToolsName);
414using Activity? activity = CurrentActivityIsInvokeAgent ? null : _activitySource?.StartActivity(OpenTelemetryConsts.GenAI.OrchestrateToolsName);
651_ = activity.AddTag(OpenTelemetryConsts.GenAI.Usage.InputTokens, (int)inputTokens);
656_ = activity.AddTag(OpenTelemetryConsts.GenAI.Usage.OutputTokens, (int)outputTokens);
1116Activity.Current?.DisplayName == OpenTelemetryConsts.GenAI.InvokeAgentName;
1135$"{OpenTelemetryConsts.GenAI.ExecuteToolName} {context.Function.Name}",
1139new(OpenTelemetryConsts.GenAI.Operation.Name, OpenTelemetryConsts.GenAI.ExecuteToolName),
1140new(OpenTelemetryConsts.GenAI.Tool.Type, OpenTelemetryConsts.ToolTypeFunction),
1141new(OpenTelemetryConsts.GenAI.Tool.Call.Id, context.CallContent.CallId),
1142new(OpenTelemetryConsts.GenAI.Tool.Name, context.Function.Name),
1143new(OpenTelemetryConsts.GenAI.Tool.Description, context.Function.Description),
1164_ = activity?.SetTag(OpenTelemetryConsts.GenAI.Tool.Call.Arguments, functionArguments);
1189_ = activity.SetTag(OpenTelemetryConsts.Error.Type, e.GetType().FullName)
1213_ = activity?.SetTag(OpenTelemetryConsts.GenAI.Tool.Call.Result, functionResult);
ChatCompletion\OpenTelemetryChatClient.cs (52)
68string name = string.IsNullOrEmpty(sourceName) ? OpenTelemetryConsts.DefaultSourceName : sourceName!;
73OpenTelemetryConsts.GenAI.Client.TokenUsage.Name,
74OpenTelemetryConsts.TokensUnit,
75OpenTelemetryConsts.GenAI.Client.TokenUsage.Description,
76advice: new() { HistogramBucketBoundaries = OpenTelemetryConsts.GenAI.Client.TokenUsage.ExplicitBucketBoundaries }
80OpenTelemetryConsts.GenAI.Client.OperationDuration.Name,
81OpenTelemetryConsts.SecondsUnit,
82OpenTelemetryConsts.GenAI.Client.OperationDuration.Description,
83advice: new() { HistogramBucketBoundaries = OpenTelemetryConsts.GenAI.Client.OperationDuration.ExplicitBucketBoundaries }
376string.IsNullOrWhiteSpace(modelId) ? OpenTelemetryConsts.GenAI.ChatName : $"{OpenTelemetryConsts.GenAI.ChatName} {modelId}",
387.AddTag(OpenTelemetryConsts.GenAI.Operation.Name, OpenTelemetryConsts.GenAI.ChatName)
388.AddTag(OpenTelemetryConsts.GenAI.Request.Model, modelId)
389.AddTag(OpenTelemetryConsts.GenAI.Provider.Name, _providerName);
394.AddTag(OpenTelemetryConsts.Server.Address, _serverAddress)
395.AddTag(OpenTelemetryConsts.Server.Port, _serverPort);
402_ = activity.AddTag(OpenTelemetryConsts.GenAI.Conversation.Id, conversationId);
407_ = activity.AddTag(OpenTelemetryConsts.GenAI.Request.FrequencyPenalty, frequencyPenalty);
412_ = activity.AddTag(OpenTelemetryConsts.GenAI.Request.MaxTokens, maxTokens);
417_ = activity.AddTag(OpenTelemetryConsts.GenAI.Request.PresencePenalty, presencePenalty);
422_ = activity.AddTag(OpenTelemetryConsts.GenAI.Request.Seed, seed);
427_ = activity.AddTag(OpenTelemetryConsts.GenAI.Request.StopSequences, $"[{string.Join(", ", stopSequences.Select(s => $"\"{s}\""))}]");
432_ = activity.AddTag(OpenTelemetryConsts.GenAI.Request.Temperature, temperature);
437_ = activity.AddTag(OpenTelemetryConsts.GenAI.Request.TopK, topK);
442_ = activity.AddTag(OpenTelemetryConsts.GenAI.Request.TopP, top_p);
450_ = activity.AddTag(OpenTelemetryConsts.GenAI.Output.Type, OpenTelemetryConsts.TypeText);
453_ = activity.AddTag(OpenTelemetryConsts.GenAI.Output.Type, OpenTelemetryConsts.TypeJson);
463OpenTelemetryConsts.GenAI.Tool.Definitions,
508tags.Add(OpenTelemetryConsts.Error.Type, error.GetType().FullName);
519tags.Add(OpenTelemetryConsts.GenAI.Token.Type, OpenTelemetryConsts.TokenTypeInput);
527tags.Add(OpenTelemetryConsts.GenAI.Token.Type, OpenTelemetryConsts.TokenTypeOutput);
536.AddTag(OpenTelemetryConsts.Error.Type, error.GetType().FullName)
549_ = activity.AddTag(OpenTelemetryConsts.GenAI.Response.FinishReasons, $"[\"{finishReason.Value.ToLowerInvariant()}\"]");
555_ = activity.AddTag(OpenTelemetryConsts.GenAI.Response.Id, response.ResponseId);
560_ = activity.AddTag(OpenTelemetryConsts.GenAI.Response.Model, response.ModelId);
565_ = activity.AddTag(OpenTelemetryConsts.GenAI.Usage.InputTokens, (int)inputTokens);
570_ = activity.AddTag(OpenTelemetryConsts.GenAI.Usage.OutputTokens, (int)outputTokens);
587tags.Add(OpenTelemetryConsts.GenAI.Operation.Name, OpenTelemetryConsts.GenAI.ChatName);
591tags.Add(OpenTelemetryConsts.GenAI.Request.Model, requestModelId);
594tags.Add(OpenTelemetryConsts.GenAI.Provider.Name, _providerName);
598tags.Add(OpenTelemetryConsts.Server.Address, endpointAddress);
599tags.Add(OpenTelemetryConsts.Server.Port, _serverPort);
604tags.Add(OpenTelemetryConsts.GenAI.Response.Model, responseModel);
616OpenTelemetryConsts.GenAI.SystemInstructions,
621OpenTelemetryConsts.GenAI.Input.Messages,
631OpenTelemetryConsts.GenAI.Output.Messages,
ChatCompletion\OpenTelemetryImageGenerator.cs (36)
58string name = string.IsNullOrEmpty(sourceName) ? OpenTelemetryConsts.DefaultSourceName : sourceName!;
63OpenTelemetryConsts.GenAI.Client.TokenUsage.Name,
64OpenTelemetryConsts.TokensUnit,
65OpenTelemetryConsts.GenAI.Client.TokenUsage.Description,
66advice: new() { HistogramBucketBoundaries = OpenTelemetryConsts.GenAI.Client.TokenUsage.ExplicitBucketBoundaries }
70OpenTelemetryConsts.GenAI.Client.OperationDuration.Name,
71OpenTelemetryConsts.SecondsUnit,
72OpenTelemetryConsts.GenAI.Client.OperationDuration.Description,
73advice: new() { HistogramBucketBoundaries = OpenTelemetryConsts.GenAI.Client.OperationDuration.ExplicitBucketBoundaries }
148string.IsNullOrWhiteSpace(modelId) ? OpenTelemetryConsts.GenAI.GenerateContentName : $"{OpenTelemetryConsts.GenAI.GenerateContentName} {modelId}",
154.AddTag(OpenTelemetryConsts.GenAI.Operation.Name, OpenTelemetryConsts.GenAI.GenerateContentName)
155.AddTag(OpenTelemetryConsts.GenAI.Output.Type, OpenTelemetryConsts.TypeImage)
156.AddTag(OpenTelemetryConsts.GenAI.Request.Model, modelId)
157.AddTag(OpenTelemetryConsts.GenAI.Provider.Name, _providerName);
162.AddTag(OpenTelemetryConsts.Server.Address, _serverAddress)
163.AddTag(OpenTelemetryConsts.Server.Port, _serverPort);
170_ = activity.AddTag(OpenTelemetryConsts.GenAI.Request.ChoiceCount, count);
197OpenTelemetryConsts.GenAI.Input.Messages,
229tags.Add(OpenTelemetryConsts.Error.Type, error.GetType().FullName);
238.AddTag(OpenTelemetryConsts.Error.Type, error.GetType().FullName)
249OpenTelemetryConsts.GenAI.Output.Messages,
260tags.Add(OpenTelemetryConsts.GenAI.Token.Type, OpenTelemetryConsts.TokenTypeInput);
268tags.Add(OpenTelemetryConsts.GenAI.Token.Type, OpenTelemetryConsts.TokenTypeOutput);
278_ = activity.AddTag(OpenTelemetryConsts.GenAI.Usage.InputTokens, (int)inputTokens);
283_ = activity.AddTag(OpenTelemetryConsts.GenAI.Usage.OutputTokens, (int)outputTokens);
291tags.Add(OpenTelemetryConsts.GenAI.Operation.Name, OpenTelemetryConsts.GenAI.GenerateContentName);
295tags.Add(OpenTelemetryConsts.GenAI.Request.Model, requestModelId);
298tags.Add(OpenTelemetryConsts.GenAI.Provider.Name, _providerName);
302tags.Add(OpenTelemetryConsts.Server.Address, endpointAddress);
303tags.Add(OpenTelemetryConsts.Server.Port, _serverPort);
Embeddings\OpenTelemetryEmbeddingGenerator.cs (31)
63string name = string.IsNullOrEmpty(sourceName) ? OpenTelemetryConsts.DefaultSourceName : sourceName!;
68OpenTelemetryConsts.GenAI.Client.TokenUsage.Name,
69OpenTelemetryConsts.TokensUnit,
70OpenTelemetryConsts.GenAI.Client.TokenUsage.Description,
71advice: new() { HistogramBucketBoundaries = OpenTelemetryConsts.GenAI.Client.TokenUsage.ExplicitBucketBoundaries }
75OpenTelemetryConsts.GenAI.Client.OperationDuration.Name,
76OpenTelemetryConsts.SecondsUnit,
77OpenTelemetryConsts.GenAI.Client.OperationDuration.Description,
78advice: new() { HistogramBucketBoundaries = OpenTelemetryConsts.GenAI.Client.OperationDuration.ExplicitBucketBoundaries }
153string.IsNullOrWhiteSpace(modelId) ? OpenTelemetryConsts.GenAI.EmbeddingsName : $"{OpenTelemetryConsts.GenAI.EmbeddingsName} {modelId}",
157new(OpenTelemetryConsts.GenAI.Operation.Name, OpenTelemetryConsts.GenAI.EmbeddingsName),
158new(OpenTelemetryConsts.GenAI.Request.Model, modelId),
159new(OpenTelemetryConsts.GenAI.Provider.Name, _providerName),
167.AddTag(OpenTelemetryConsts.Server.Address, _endpointAddress)
168.AddTag(OpenTelemetryConsts.Server.Port, _endpointPort);
173_ = activity.AddTag(OpenTelemetryConsts.GenAI.Embeddings.Dimension.Count, dimensionsValue);
216tags.Add(OpenTelemetryConsts.Error.Type, error.GetType().FullName);
225tags.Add(OpenTelemetryConsts.GenAI.Token.Type, OpenTelemetryConsts.TokenTypeInput);
236.AddTag(OpenTelemetryConsts.Error.Type, error.GetType().FullName)
242_ = activity.AddTag(OpenTelemetryConsts.GenAI.Usage.InputTokens, inputTokens);
247_ = activity.AddTag(OpenTelemetryConsts.GenAI.Response.Model, responseModelId);
264tags.Add(OpenTelemetryConsts.GenAI.Operation.Name, OpenTelemetryConsts.GenAI.EmbeddingsName);
268tags.Add(OpenTelemetryConsts.GenAI.Request.Model, requestModelId);
271tags.Add(OpenTelemetryConsts.GenAI.Provider.Name, _providerName);
275tags.Add(OpenTelemetryConsts.Server.Address, endpointAddress);
276tags.Add(OpenTelemetryConsts.Server.Port, _endpointPort);
282tags.Add(OpenTelemetryConsts.GenAI.Response.Model, responseModelId);
SpeechToText\OpenTelemetrySpeechToTextClient.cs (37)
60string name = string.IsNullOrEmpty(sourceName) ? OpenTelemetryConsts.DefaultSourceName : sourceName!;
65OpenTelemetryConsts.GenAI.Client.TokenUsage.Name,
66OpenTelemetryConsts.TokensUnit,
67OpenTelemetryConsts.GenAI.Client.TokenUsage.Description,
68advice: new() { HistogramBucketBoundaries = OpenTelemetryConsts.GenAI.Client.TokenUsage.ExplicitBucketBoundaries }
72OpenTelemetryConsts.GenAI.Client.OperationDuration.Name,
73OpenTelemetryConsts.SecondsUnit,
74OpenTelemetryConsts.GenAI.Client.OperationDuration.Description,
75advice: new() { HistogramBucketBoundaries = OpenTelemetryConsts.GenAI.Client.OperationDuration.ExplicitBucketBoundaries }
206string.IsNullOrWhiteSpace(modelId) ? OpenTelemetryConsts.GenAI.GenerateContentName : $"{OpenTelemetryConsts.GenAI.GenerateContentName} {modelId}",
212.AddTag(OpenTelemetryConsts.GenAI.Operation.Name, OpenTelemetryConsts.GenAI.GenerateContentName)
213.AddTag(OpenTelemetryConsts.GenAI.Request.Model, modelId)
214.AddTag(OpenTelemetryConsts.GenAI.Provider.Name, _providerName)
215.AddTag(OpenTelemetryConsts.GenAI.Output.Type, OpenTelemetryConsts.TypeText);
220.AddTag(OpenTelemetryConsts.Server.Address, _serverAddress)
221.AddTag(OpenTelemetryConsts.Server.Port, _serverPort);
260tags.Add(OpenTelemetryConsts.Error.Type, error.GetType().FullName);
271tags.Add(OpenTelemetryConsts.GenAI.Token.Type, OpenTelemetryConsts.TokenTypeInput);
279tags.Add(OpenTelemetryConsts.GenAI.Token.Type, OpenTelemetryConsts.TokenTypeOutput);
288.AddTag(OpenTelemetryConsts.Error.Type, error.GetType().FullName)
300_ = activity.AddTag(OpenTelemetryConsts.GenAI.Response.Id, response.ResponseId);
305_ = activity.AddTag(OpenTelemetryConsts.GenAI.Response.Model, response.ModelId);
310_ = activity.AddTag(OpenTelemetryConsts.GenAI.Usage.InputTokens, (int)inputTokens);
315_ = activity.AddTag(OpenTelemetryConsts.GenAI.Usage.OutputTokens, (int)outputTokens);
332tags.Add(OpenTelemetryConsts.GenAI.Operation.Name, OpenTelemetryConsts.GenAI.GenerateContentName);
336tags.Add(OpenTelemetryConsts.GenAI.Request.Model, requestModelId);
339tags.Add(OpenTelemetryConsts.GenAI.Provider.Name, _providerName);
343tags.Add(OpenTelemetryConsts.Server.Address, endpointAddress);
344tags.Add(OpenTelemetryConsts.Server.Port, _serverPort);
349tags.Add(OpenTelemetryConsts.GenAI.Response.Model, responseModel);
359OpenTelemetryConsts.GenAI.Output.Messages,