175 references to GenAI
Microsoft.Extensions.AI (175)
ChatCompletion\FunctionInvokingChatClient.cs (4)
285using Activity? activity = FunctionInvocationHelpers.CurrentActivityIsInvokeAgent ? null : _activitySource?.StartActivity(OpenTelemetryConsts.GenAI.OrchestrateToolsName); 445using Activity? activity = FunctionInvocationHelpers.CurrentActivityIsInvokeAgent ? null : _activitySource?.StartActivity(OpenTelemetryConsts.GenAI.OrchestrateToolsName); 728_ = activity.AddTag(OpenTelemetryConsts.GenAI.Usage.InputTokens, (int)inputTokens); 733_ = activity.AddTag(OpenTelemetryConsts.GenAI.Usage.OutputTokens, (int)outputTokens);
ChatCompletion\OpenTelemetryChatClient.cs (44)
77OpenTelemetryConsts.GenAI.Client.TimeToFirstChunk.Name, 79OpenTelemetryConsts.GenAI.Client.TimeToFirstChunk.Description, 80advice: new() { HistogramBucketBoundaries = OpenTelemetryConsts.GenAI.Client.TimeToFirstChunk.ExplicitBucketBoundaries } 84OpenTelemetryConsts.GenAI.Client.TimePerOutputChunk.Name, 86OpenTelemetryConsts.GenAI.Client.TimePerOutputChunk.Description, 87advice: new() { HistogramBucketBoundaries = OpenTelemetryConsts.GenAI.Client.TimePerOutputChunk.ExplicitBucketBoundaries } 231chunkMetricTags.Add(OpenTelemetryConsts.GenAI.Response.Model, modelId); 282string.IsNullOrWhiteSpace(modelId) ? OpenTelemetryConsts.GenAI.ChatName : $"{OpenTelemetryConsts.GenAI.ChatName} {modelId}", 293.AddTag(OpenTelemetryConsts.GenAI.Operation.Name, OpenTelemetryConsts.GenAI.ChatName) 294.AddTag(OpenTelemetryConsts.GenAI.Request.Model, modelId) 295.AddTag(OpenTelemetryConsts.GenAI.Provider.Name, _providerName); 299_ = activity.AddTag(OpenTelemetryConsts.GenAI.Request.Stream, true); 313_ = activity.AddTag(OpenTelemetryConsts.GenAI.Conversation.Id, conversationId); 318_ = activity.AddTag(OpenTelemetryConsts.GenAI.Request.FrequencyPenalty, frequencyPenalty); 323_ = activity.AddTag(OpenTelemetryConsts.GenAI.Request.MaxTokens, maxTokens); 328_ = activity.AddTag(OpenTelemetryConsts.GenAI.Request.PresencePenalty, presencePenalty); 333_ = activity.AddTag(OpenTelemetryConsts.GenAI.Request.Seed, seed); 338_ = activity.AddTag(OpenTelemetryConsts.GenAI.Request.StopSequences, $"[{string.Join(", ", stopSequences.Select(s => $"\"{s}\""))}]"); 343_ = activity.AddTag(OpenTelemetryConsts.GenAI.Request.Temperature, temperature); 348_ = activity.AddTag(OpenTelemetryConsts.GenAI.Request.TopK, topK); 353_ = activity.AddTag(OpenTelemetryConsts.GenAI.Request.TopP, top_p); 361_ = activity.AddTag(OpenTelemetryConsts.GenAI.Output.Type, OpenTelemetryConsts.TypeText); 364_ = activity.AddTag(OpenTelemetryConsts.GenAI.Output.Type, OpenTelemetryConsts.TypeJson); 372OpenTelemetryConsts.GenAI.Tool.Definitions, 422tags.Add(OpenTelemetryConsts.GenAI.Token.Type, OpenTelemetryConsts.TokenTypeInput); 430tags.Add(OpenTelemetryConsts.GenAI.Token.Type, OpenTelemetryConsts.TokenTypeOutput); 447_ = activity.AddTag(OpenTelemetryConsts.GenAI.Response.FinishReasons, $"[\"{finishReason.Value.ToLowerInvariant()}\"]"); 453_ = activity.AddTag(OpenTelemetryConsts.GenAI.Response.Id, response.ResponseId); 458_ = activity.AddTag(OpenTelemetryConsts.GenAI.Response.Model, response.ModelId); 463_ = activity.AddTag(OpenTelemetryConsts.GenAI.Response.TimeToFirstChunk, timeToFirstChunkValue); 468_ = activity.AddTag(OpenTelemetryConsts.GenAI.Usage.InputTokens, (int)inputTokens); 473_ = activity.AddTag(OpenTelemetryConsts.GenAI.Usage.OutputTokens, (int)outputTokens); 478_ = activity.AddTag(OpenTelemetryConsts.GenAI.Usage.CacheReadInputTokens, (int)cachedInputTokens); 483_ = activity.AddTag(OpenTelemetryConsts.GenAI.Usage.ReasoningOutputTokens, (int)reasoningTokens); 501tags.Add(OpenTelemetryConsts.GenAI.Operation.Name, OpenTelemetryConsts.GenAI.ChatName); 505tags.Add(OpenTelemetryConsts.GenAI.Request.Model, requestModelId); 508tags.Add(OpenTelemetryConsts.GenAI.Provider.Name, _providerName); 518tags.Add(OpenTelemetryConsts.GenAI.Response.Model, responseModel); 529OpenTelemetryConsts.GenAI.SystemInstructions, 534OpenTelemetryConsts.GenAI.Input.Messages, 544OpenTelemetryConsts.GenAI.Output.Messages,
ChatCompletion\OpenTelemetryImageGenerator.cs (18)
140string.IsNullOrWhiteSpace(modelId) ? OpenTelemetryConsts.GenAI.GenerateContentName : $"{OpenTelemetryConsts.GenAI.GenerateContentName} {modelId}", 146.AddTag(OpenTelemetryConsts.GenAI.Operation.Name, OpenTelemetryConsts.GenAI.GenerateContentName) 147.AddTag(OpenTelemetryConsts.GenAI.Output.Type, OpenTelemetryConsts.TypeImage) 148.AddTag(OpenTelemetryConsts.GenAI.Request.Model, modelId) 149.AddTag(OpenTelemetryConsts.GenAI.Provider.Name, _providerName); 162_ = activity.AddTag(OpenTelemetryConsts.GenAI.Request.ChoiceCount, count); 189OpenTelemetryConsts.GenAI.Input.Messages, 236OpenTelemetryConsts.GenAI.Output.Messages, 247tags.Add(OpenTelemetryConsts.GenAI.Token.Type, OpenTelemetryConsts.TokenTypeInput); 255tags.Add(OpenTelemetryConsts.GenAI.Token.Type, OpenTelemetryConsts.TokenTypeOutput); 265_ = activity.AddTag(OpenTelemetryConsts.GenAI.Usage.InputTokens, (int)inputTokens); 270_ = activity.AddTag(OpenTelemetryConsts.GenAI.Usage.OutputTokens, (int)outputTokens); 278tags.Add(OpenTelemetryConsts.GenAI.Operation.Name, OpenTelemetryConsts.GenAI.GenerateContentName); 282tags.Add(OpenTelemetryConsts.GenAI.Request.Model, requestModelId); 285tags.Add(OpenTelemetryConsts.GenAI.Provider.Name, _providerName);
Common\FunctionInvocationHelpers.cs (2)
21IsActivityDisplayNameMatch(name, OpenTelemetryConsts.GenAI.InvokeAgentName) || 22IsActivityDisplayNameMatch(name, OpenTelemetryConsts.GenAI.InvokeWorkflowName);
Common\FunctionInvocationProcessor.cs (9)
161$"{OpenTelemetryConsts.GenAI.ExecuteToolName} {context.Function.Name}", 165new(OpenTelemetryConsts.GenAI.Operation.Name, OpenTelemetryConsts.GenAI.ExecuteToolName), 166new(OpenTelemetryConsts.GenAI.Tool.Type, OpenTelemetryConsts.ToolTypeFunction), 167new(OpenTelemetryConsts.GenAI.Tool.Call.Id, context.CallContent.CallId), 168new(OpenTelemetryConsts.GenAI.Tool.Name, context.Function.Name), 169new(OpenTelemetryConsts.GenAI.Tool.Description, context.Function.Description), 186_ = activity?.SetTag(OpenTelemetryConsts.GenAI.Tool.Call.Arguments, functionArguments); 234_ = activity?.SetTag(OpenTelemetryConsts.GenAI.Tool.Call.Result, functionResult);
Common\OtelMetricHelpers.cs (6)
14OpenTelemetryConsts.GenAI.Client.TokenUsage.Name, 16OpenTelemetryConsts.GenAI.Client.TokenUsage.Description, 17advice: new() { HistogramBucketBoundaries = OpenTelemetryConsts.GenAI.Client.TokenUsage.ExplicitBucketBoundaries }); 22OpenTelemetryConsts.GenAI.Client.OperationDuration.Name, 24OpenTelemetryConsts.GenAI.Client.OperationDuration.Description, 25advice: new() { HistogramBucketBoundaries = OpenTelemetryConsts.GenAI.Client.OperationDuration.ExplicitBucketBoundaries });
Embeddings\OpenTelemetryEmbeddingGenerator.cs (15)
144string.IsNullOrWhiteSpace(modelId) ? OpenTelemetryConsts.GenAI.EmbeddingsName : $"{OpenTelemetryConsts.GenAI.EmbeddingsName} {modelId}", 148new(OpenTelemetryConsts.GenAI.Operation.Name, OpenTelemetryConsts.GenAI.EmbeddingsName), 149new(OpenTelemetryConsts.GenAI.Request.Model, modelId), 150new(OpenTelemetryConsts.GenAI.Provider.Name, _providerName), 164_ = activity.AddTag(OpenTelemetryConsts.GenAI.Embeddings.Dimension.Count, dimensionsValue); 216tags.Add(OpenTelemetryConsts.GenAI.Token.Type, OpenTelemetryConsts.TokenTypeInput); 228_ = activity.AddTag(OpenTelemetryConsts.GenAI.Usage.InputTokens, inputTokens); 233_ = activity.AddTag(OpenTelemetryConsts.GenAI.Response.Model, responseModelId); 250tags.Add(OpenTelemetryConsts.GenAI.Operation.Name, OpenTelemetryConsts.GenAI.EmbeddingsName); 254tags.Add(OpenTelemetryConsts.GenAI.Request.Model, requestModelId); 257tags.Add(OpenTelemetryConsts.GenAI.Provider.Name, _providerName); 268tags.Add(OpenTelemetryConsts.GenAI.Response.Model, responseModelId);
Files\OpenTelemetryHostedFileClient.cs (1)
89advice: new() { HistogramBucketBoundaries = OpenTelemetryConsts.GenAI.Client.OperationDuration.ExplicitBucketBoundaries }
Realtime\FunctionInvokingRealtimeClientSession.cs (1)
152using Activity? activity = FunctionInvocationHelpers.CurrentActivityIsInvokeAgent ? null : _activitySource?.StartActivity(OpenTelemetryConsts.GenAI.OrchestrateToolsName);
Realtime\OpenTelemetryRealtimeClientSession.cs (38)
187_ = inputActivity.AddTag(OpenTelemetryConsts.GenAI.Input.Messages, SerializeMessage(otelMessage)); 309_ = activity.AddTag(OpenTelemetryConsts.GenAI.Realtime.ReceivedModalities, $"[{string.Join(", ", outputModalities.Select(m => $"\"{m}\""))}]"); 318_ = activity.AddTag(OpenTelemetryConsts.GenAI.Output.Messages, SerializeMessages(outputMessages)); 670string.IsNullOrWhiteSpace(modelId) ? OpenTelemetryConsts.GenAI.RealtimeName : $"{OpenTelemetryConsts.GenAI.RealtimeName} {modelId}", 676.AddTag(OpenTelemetryConsts.GenAI.Operation.Name, OpenTelemetryConsts.GenAI.ChatName) 677.AddTag(OpenTelemetryConsts.GenAI.Request.Model, modelId) 678.AddTag(OpenTelemetryConsts.GenAI.Provider.Name, _providerName); 682_ = activity.AddTag(OpenTelemetryConsts.GenAI.Request.Stream, true); 697_ = activity.AddTag(OpenTelemetryConsts.GenAI.Request.MaxTokens, maxTokens); 701_ = activity.AddTag(OpenTelemetryConsts.GenAI.Realtime.SessionKind, options.SessionKind.ToString()); 705_ = activity.AddTag(OpenTelemetryConsts.GenAI.Realtime.Voice, options.Voice); 710_ = activity.AddTag(OpenTelemetryConsts.GenAI.Realtime.OutputModalities, $"[{string.Join(", ", modalities.Select(m => $"\"{m}\""))}]"); 718OpenTelemetryConsts.GenAI.SystemInstructions, 727OpenTelemetryConsts.GenAI.Tool.Definitions, 764tags.Add(OpenTelemetryConsts.GenAI.Token.Type, OpenTelemetryConsts.TokenTypeInput); 772tags.Add(OpenTelemetryConsts.GenAI.Token.Type, OpenTelemetryConsts.TokenTypeOutput); 780tags.Add(OpenTelemetryConsts.GenAI.Token.Type, OpenTelemetryConsts.TokenTypeInputAudio); 788tags.Add(OpenTelemetryConsts.GenAI.Token.Type, OpenTelemetryConsts.TokenTypeInputText); 796tags.Add(OpenTelemetryConsts.GenAI.Token.Type, OpenTelemetryConsts.TokenTypeOutputAudio); 804tags.Add(OpenTelemetryConsts.GenAI.Token.Type, OpenTelemetryConsts.TokenTypeOutputText); 825_ = activity.AddTag(OpenTelemetryConsts.GenAI.Response.Id, response.ResponseId); 830_ = activity.AddTag(OpenTelemetryConsts.GenAI.Response.TimeToFirstChunk, timeToFirstChunkValue); 835_ = activity.AddTag(OpenTelemetryConsts.GenAI.Response.FinishReasons, $"[\"{response.Status}\"]"); 842_ = activity.AddTag(OpenTelemetryConsts.GenAI.Usage.InputTokens, (int)inputTokens); 847_ = activity.AddTag(OpenTelemetryConsts.GenAI.Usage.OutputTokens, (int)outputTokens); 852_ = activity.AddTag(OpenTelemetryConsts.GenAI.Usage.CacheReadInputTokens, (int)cachedInputTokens); 857_ = activity.AddTag(OpenTelemetryConsts.GenAI.Usage.ReasoningOutputTokens, (int)reasoningTokens); 862_ = activity.AddTag(OpenTelemetryConsts.GenAI.Usage.InputAudioTokens, (int)inputAudioTokens); 867_ = activity.AddTag(OpenTelemetryConsts.GenAI.Usage.InputTextTokens, (int)inputTextTokens); 872_ = activity.AddTag(OpenTelemetryConsts.GenAI.Usage.OutputAudioTokens, (int)outputAudioTokens); 877_ = activity.AddTag(OpenTelemetryConsts.GenAI.Usage.OutputTextTokens, (int)outputTextTokens); 892tags.Add(OpenTelemetryConsts.GenAI.Operation.Name, OpenTelemetryConsts.GenAI.ChatName); 896tags.Add(OpenTelemetryConsts.GenAI.Request.Model, requestModelId); 899tags.Add(OpenTelemetryConsts.GenAI.Provider.Name, _providerName); 909tags.Add(OpenTelemetryConsts.GenAI.Response.Model, responseModel);
SpeechToText\OpenTelemetrySpeechToTextClient.cs (19)
201string.IsNullOrWhiteSpace(modelId) ? OpenTelemetryConsts.GenAI.GenerateContentName : $"{OpenTelemetryConsts.GenAI.GenerateContentName} {modelId}", 207.AddTag(OpenTelemetryConsts.GenAI.Operation.Name, OpenTelemetryConsts.GenAI.GenerateContentName) 208.AddTag(OpenTelemetryConsts.GenAI.Request.Model, modelId) 209.AddTag(OpenTelemetryConsts.GenAI.Provider.Name, _providerName) 210.AddTag(OpenTelemetryConsts.GenAI.Output.Type, OpenTelemetryConsts.TypeText); 266tags.Add(OpenTelemetryConsts.GenAI.Token.Type, OpenTelemetryConsts.TokenTypeInput); 274tags.Add(OpenTelemetryConsts.GenAI.Token.Type, OpenTelemetryConsts.TokenTypeOutput); 290_ = activity.AddTag(OpenTelemetryConsts.GenAI.Response.Id, response.ResponseId); 295_ = activity.AddTag(OpenTelemetryConsts.GenAI.Response.Model, response.ModelId); 300_ = activity.AddTag(OpenTelemetryConsts.GenAI.Usage.InputTokens, (int)inputTokens); 305_ = activity.AddTag(OpenTelemetryConsts.GenAI.Usage.OutputTokens, (int)outputTokens); 322tags.Add(OpenTelemetryConsts.GenAI.Operation.Name, OpenTelemetryConsts.GenAI.GenerateContentName); 326tags.Add(OpenTelemetryConsts.GenAI.Request.Model, requestModelId); 329tags.Add(OpenTelemetryConsts.GenAI.Provider.Name, _providerName); 339tags.Add(OpenTelemetryConsts.GenAI.Response.Model, responseModel); 349OpenTelemetryConsts.GenAI.Output.Messages,
TextToSpeech\OpenTelemetryTextToSpeechClient.cs (18)
200string.IsNullOrWhiteSpace(modelId) ? OpenTelemetryConsts.GenAI.GenerateContentName : $"{OpenTelemetryConsts.GenAI.GenerateContentName} {modelId}", 206.AddTag(OpenTelemetryConsts.GenAI.Operation.Name, OpenTelemetryConsts.GenAI.GenerateContentName) 207.AddTag(OpenTelemetryConsts.GenAI.Request.Model, modelId) 208.AddTag(OpenTelemetryConsts.GenAI.Provider.Name, _providerName) 209.AddTag(OpenTelemetryConsts.GenAI.Output.Type, OpenTelemetryConsts.TypeAudio); 265tags.Add(OpenTelemetryConsts.GenAI.Token.Type, OpenTelemetryConsts.TokenTypeInput); 273tags.Add(OpenTelemetryConsts.GenAI.Token.Type, OpenTelemetryConsts.TokenTypeOutput); 285_ = activity.AddTag(OpenTelemetryConsts.GenAI.Response.Id, response.ResponseId); 290_ = activity.AddTag(OpenTelemetryConsts.GenAI.Response.Model, response.ModelId); 295_ = activity.AddTag(OpenTelemetryConsts.GenAI.Usage.InputTokens, (int)inputTokens); 300_ = activity.AddTag(OpenTelemetryConsts.GenAI.Usage.OutputTokens, (int)outputTokens); 316tags.Add(OpenTelemetryConsts.GenAI.Operation.Name, OpenTelemetryConsts.GenAI.GenerateContentName); 320tags.Add(OpenTelemetryConsts.GenAI.Request.Model, requestModelId); 323tags.Add(OpenTelemetryConsts.GenAI.Provider.Name, _providerName); 333tags.Add(OpenTelemetryConsts.GenAI.Response.Model, responseModel);