Table of Contents

Class RealtimeResponseResource

Namespace
OpenAI.Realtime
Assembly
OpenAI-DotNet.dll
public sealed class RealtimeResponseResource
Inheritance
RealtimeResponseResource
Inherited Members

Properties

ConversationId

Which conversation the response is added to, determined by the conversation field in the response.create event. If auto, the response will be added to the default conversation and the value of conversation_id will be an id like conv_1234. If none, the response will not be added to any conversation and the value of conversation_id will be null. If responses are being triggered by server VAD, the response will be added to the default conversation, thus the conversation_id will be an id like conv_1234.

[JsonInclude]
[JsonPropertyName("conversation_id")]
public string ConversationId { get; }

Property Value

string

Id

The unique ID of the response.

[JsonInclude]
[JsonPropertyName("id")]
public string Id { get; }

Property Value

string

MaxOutputTokens

Maximum number of output tokens for a single assistant response, inclusive of tool calls, that was used in this response.

[JsonInclude]
[JsonPropertyName("max_output_tokens")]
[JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingDefault)]
public object MaxOutputTokens { get; }

Property Value

object

Metadata

Set of 16 key-value pairs that can be attached to an object. This can be useful for storing additional information about the object in a structured format, and querying for objects via API or the dashboard. Keys are strings with a maximum length of 64 characters. Values are strings with a maximum length of 512 characters.

[JsonInclude]
[JsonPropertyName("metadata")]
public IReadOnlyDictionary<string, object> Metadata { get; }

Property Value

IReadOnlyDictionary<string, object>

Modalities

The set of modalities the model used to respond. If there are multiple modalities, the model will pick one, for example if modalities is ["text", "audio"], the model could be responding in either text or audio.

[JsonInclude]
[JsonPropertyName("modalities")]
[JsonConverter(typeof(ModalityConverter))]
public Modality Modalities { get; }

Property Value

Modality

Object

The object type, must be "realtime.response".

[JsonInclude]
[JsonPropertyName("object")]
[JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingDefault)]
public string Object { get; }

Property Value

string

Output

The list of output items generated by the response.

[JsonInclude]
[JsonPropertyName("output")]
[JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingDefault)]
public IReadOnlyList<ConversationItem> Output { get; }

Property Value

IReadOnlyList<ConversationItem>

OutputAudioFormat

The format of output audio. Options are pcm16, g711_ulaw, or g711_alaw.

[JsonInclude]
[JsonPropertyName("output_audio_format")]
[JsonConverter(typeof(JsonStringEnumConverter<RealtimeAudioFormat>))]
public RealtimeAudioFormat OutputAudioFormat { get; }

Property Value

RealtimeAudioFormat

Status

The status of the response ("in_progress").

[JsonInclude]
[JsonPropertyName("status")]
[JsonIgnore(Condition = JsonIgnoreCondition.Never)]
[JsonConverter(typeof(JsonStringEnumConverter<RealtimeResponseStatus>))]
public RealtimeResponseStatus Status { get; }

Property Value

RealtimeResponseStatus

StatusDetails

Additional details about the status.

[JsonInclude]
[JsonPropertyName("status_details")]
[JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)]
public StatusDetails StatusDetails { get; }

Property Value

StatusDetails

Temperature

Sampling temperature for the model, limited to [0.6, 1.2]. Defaults to 0.8.

[JsonInclude]
[JsonPropertyName("temperature")]
public float Temperature { get; }

Property Value

float

Usage

Usage statistics for the Response, this will correspond to billing. A Realtime API session will maintain a conversation context and append new Items to the Conversation, thus output from previous turns (text and audio tokens) will become the input for later turns.

[JsonInclude]
[JsonPropertyName("usage")]
[JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingDefault)]
public Usage Usage { get; }

Property Value

Usage

Voice

The voice the model used to respond. Current voice options are alloy, ash, ballad, coral, echo sage, shimmer and verse.

[JsonInclude]
[JsonPropertyName("voice")]
public string Voice { get; }

Property Value

string