OpenTelemetryChatClient class
A DelegatingChatClient that records OpenTelemetry spans for each request.
This implementation uses dart:developer timeline events. To connect it
to a real OpenTelemetry SDK, subclass and override onSpanStart and
onSpanEnd.
- Inheritance
-
- Object
- DelegatingChatClient
- OpenTelemetryChatClient
- Available extensions
- Annotations
-
- @Source(name: 'OpenTelemetryChatClient.cs', namespace: 'Microsoft.Extensions.AI', repository: 'dotnet/extensions', path: 'src/Libraries/Microsoft.Extensions.AI/ChatCompletion/')
Constructors
- OpenTelemetryChatClient(ChatClient innerClient, {String? modelId, String? system})
- Creates a new OpenTelemetryChatClient.
Properties
- hashCode → int
-
The hash code for this object.
no setterinherited
- innerClient → ChatClient
-
The inner client to delegate to.
finalinherited
- modelId → String?
-
The model ID to record on spans (overrides per-request model).
final
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- system → String?
-
The AI system name (e.g.
"openai").final
Methods
-
dispose(
) → void -
Performs application-defined tasks associated with freeing, releasing,
or resetting unmanaged resources.
inherited
-
getChatResponseFromMessage(
ChatMessage message, {ChatOptions? options, CancellationToken? cancellationToken}) → Future< ChatResponse> -
Available on ChatClient, provided by the ChatClientExtensions extension
Sends a single message and returns the response. -
getChatResponseFromText(
String message, {ChatOptions? options, CancellationToken? cancellationToken}) → Future< ChatResponse> -
Available on ChatClient, provided by the ChatClientExtensions extension
Sends a single user text message and returns the response. -
getResponse(
{required Iterable< ChatMessage> messages, ChatOptions? options, CancellationToken? cancellationToken}) → Future<ChatResponse> -
Sends a chat request and returns the complete response.
override
-
getService<
T> ({Object? key}) → T? -
Gets a service of the specified type.
inherited
-
getStreamingChatResponseFromMessage(
ChatMessage message, {ChatOptions? options, CancellationToken? cancellationToken}) → Stream< ChatResponseUpdate> -
Available on ChatClient, provided by the ChatClientExtensions extension
Sends a single message and returns a streaming response. -
getStreamingChatResponseFromText(
String message, {ChatOptions? options, CancellationToken? cancellationToken}) → Stream< ChatResponseUpdate> -
Available on ChatClient, provided by the ChatClientExtensions extension
Sends a single user text message and returns a streaming response. -
getStreamingResponse(
{required Iterable< ChatMessage> messages, ChatOptions? options, CancellationToken? cancellationToken}) → Stream<ChatResponseUpdate> -
Sends a chat request and returns a stream of response updates.
override
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited