openai/openai-dotnet

Public

mirrored from https://github.com/openai/openai-dotnetAvailable

CodeCommitsIssuesPull requestsActionsInsightsSecurity
OpenAI_2.10.0

Branches

Tags

  • No tags available.
0Branches0Tags
Go to file
Add file
Code

Clone

HTTPS

Download ZIP

api/OpenAI.net8.0.cs

7262lines · modecode

1//------------------------------------------------------------------------------
2// <auto-generated>
3// This file is auto-generated by scripts/Export-Api.ps1 and must not be
4// modified manually. To update it, make the necessary source-code changes
5// and re-run scripts/Export-Api.ps1 to regenerate it.
6// </auto-generated>
7//------------------------------------------------------------------------------
8namespace OpenAI {
9 public class OpenAIClient {
10 protected OpenAIClient();
11 public OpenAIClient(ApiKeyCredential credential, OpenAIClientOptions options);
12 public OpenAIClient(ApiKeyCredential credential);
13 [Experimental("OPENAI001")]
14 public OpenAIClient(AuthenticationPolicy authenticationPolicy, OpenAIClientOptions options);
15 [Experimental("OPENAI001")]
16 public OpenAIClient(AuthenticationPolicy authenticationPolicy);
17 protected internal OpenAIClient(ClientPipeline pipeline, OpenAIClientOptions options);
18 public OpenAIClient(string apiKey);
19 [Experimental("OPENAI001")]
20 public Uri Endpoint { get; }
21 public ClientPipeline Pipeline { get; }
22 [Experimental("OPENAI001")]
23 public virtual AssistantClient GetAssistantClient();
24 public virtual AudioClient GetAudioClient(string model);
25 [Experimental("OPENAI001")]
26 public virtual BatchClient GetBatchClient();
27 public virtual ChatClient GetChatClient(string model);
28 [Experimental("OPENAI001")]
29 public virtual ContainerClient GetContainerClient();
30 [Experimental("OPENAI001")]
31 public virtual ConversationClient GetConversationClient();
32 public virtual EmbeddingClient GetEmbeddingClient(string model);
33 [Experimental("OPENAI001")]
34 public virtual EvaluationClient GetEvaluationClient();
35 [Experimental("OPENAI001")]
36 public virtual FineTuningClient GetFineTuningClient();
37 [Experimental("OPENAI001")]
38 public virtual GraderClient GetGraderClient();
39 public virtual ImageClient GetImageClient(string model);
40 public virtual ModerationClient GetModerationClient(string model);
41 public virtual OpenAIFileClient GetOpenAIFileClient();
42 public virtual OpenAIModelClient GetOpenAIModelClient();
43 [Experimental("OPENAI002")]
44 public virtual RealtimeClient GetRealtimeClient();
45 [Experimental("OPENAI001")]
46 public virtual ResponsesClient GetResponsesClient();
47 [Experimental("OPENAI001")]
48 public virtual VectorStoreClient GetVectorStoreClient();
49 [Experimental("OPENAI001")]
50 public virtual VideoClient GetVideoClient();
51 }
52 public class OpenAIClientOptions : ClientPipelineOptions {
53 public Uri Endpoint { get; set; }
54 public string OrganizationId { get; set; }
55 public string ProjectId { get; set; }
56 public string UserAgentApplicationId { get; set; }
57 }
58 [Experimental("OPENAI001")]
59 public class OpenAIContext : ModelReaderWriterContext {
60 public static OpenAIContext Default { get; }
61 protected override bool TryGetTypeBuilderCore(Type type, out ModelReaderWriterTypeBuilder builder);
62 }
63 [Experimental("SCME0002")]
64 public static class OpenAIHostBuilderExtensions {
65 public static IClientBuilder AddAssistantClient(this Microsoft.Extensions.Hosting.IHostApplicationBuilder builder, string sectionName);
66 public static IClientBuilder AddAudioClient(this Microsoft.Extensions.Hosting.IHostApplicationBuilder builder, string sectionName);
67 public static IClientBuilder AddBatchClient(this Microsoft.Extensions.Hosting.IHostApplicationBuilder builder, string sectionName);
68 public static IClientBuilder AddChatClient(this Microsoft.Extensions.Hosting.IHostApplicationBuilder builder, string sectionName);
69 public static IClientBuilder AddContainerClient(this Microsoft.Extensions.Hosting.IHostApplicationBuilder builder, string sectionName);
70 public static IClientBuilder AddConversationClient(this Microsoft.Extensions.Hosting.IHostApplicationBuilder builder, string sectionName);
71 public static IClientBuilder AddEmbeddingClient(this Microsoft.Extensions.Hosting.IHostApplicationBuilder builder, string sectionName);
72 public static IClientBuilder AddEvaluationClient(this Microsoft.Extensions.Hosting.IHostApplicationBuilder builder, string sectionName);
73 public static IClientBuilder AddFineTuningClient(this Microsoft.Extensions.Hosting.IHostApplicationBuilder builder, string sectionName);
74 public static IClientBuilder AddGraderClient(this Microsoft.Extensions.Hosting.IHostApplicationBuilder builder, string sectionName);
75 public static IClientBuilder AddImageClient(this Microsoft.Extensions.Hosting.IHostApplicationBuilder builder, string sectionName);
76 public static IClientBuilder AddKeyedAssistantClient(this Microsoft.Extensions.Hosting.IHostApplicationBuilder builder, string serviceKey, string sectionName);
77 public static IClientBuilder AddKeyedAudioClient(this Microsoft.Extensions.Hosting.IHostApplicationBuilder builder, string serviceKey, string sectionName);
78 public static IClientBuilder AddKeyedBatchClient(this Microsoft.Extensions.Hosting.IHostApplicationBuilder builder, string serviceKey, string sectionName);
79 public static IClientBuilder AddKeyedChatClient(this Microsoft.Extensions.Hosting.IHostApplicationBuilder builder, string serviceKey, string sectionName);
80 public static IClientBuilder AddKeyedContainerClient(this Microsoft.Extensions.Hosting.IHostApplicationBuilder builder, string serviceKey, string sectionName);
81 public static IClientBuilder AddKeyedConversationClient(this Microsoft.Extensions.Hosting.IHostApplicationBuilder builder, string serviceKey, string sectionName);
82 public static IClientBuilder AddKeyedEmbeddingClient(this Microsoft.Extensions.Hosting.IHostApplicationBuilder builder, string serviceKey, string sectionName);
83 public static IClientBuilder AddKeyedEvaluationClient(this Microsoft.Extensions.Hosting.IHostApplicationBuilder builder, string serviceKey, string sectionName);
84 public static IClientBuilder AddKeyedFineTuningClient(this Microsoft.Extensions.Hosting.IHostApplicationBuilder builder, string serviceKey, string sectionName);
85 public static IClientBuilder AddKeyedGraderClient(this Microsoft.Extensions.Hosting.IHostApplicationBuilder builder, string serviceKey, string sectionName);
86 public static IClientBuilder AddKeyedImageClient(this Microsoft.Extensions.Hosting.IHostApplicationBuilder builder, string serviceKey, string sectionName);
87 public static IClientBuilder AddKeyedModerationClient(this Microsoft.Extensions.Hosting.IHostApplicationBuilder builder, string serviceKey, string sectionName);
88 public static IClientBuilder AddKeyedOpenAIFileClient(this Microsoft.Extensions.Hosting.IHostApplicationBuilder builder, string serviceKey, string sectionName);
89 public static IClientBuilder AddKeyedOpenAIModelClient(this Microsoft.Extensions.Hosting.IHostApplicationBuilder builder, string serviceKey, string sectionName);
90 public static IClientBuilder AddKeyedRealtimeClient(this Microsoft.Extensions.Hosting.IHostApplicationBuilder builder, string serviceKey, string sectionName);
91 public static IClientBuilder AddKeyedResponsesClient(this Microsoft.Extensions.Hosting.IHostApplicationBuilder builder, string serviceKey, string sectionName);
92 public static IClientBuilder AddKeyedVectorStoreClient(this Microsoft.Extensions.Hosting.IHostApplicationBuilder builder, string serviceKey, string sectionName);
93 public static IClientBuilder AddKeyedVideoClient(this Microsoft.Extensions.Hosting.IHostApplicationBuilder builder, string serviceKey, string sectionName);
94 public static IClientBuilder AddModerationClient(this Microsoft.Extensions.Hosting.IHostApplicationBuilder builder, string sectionName);
95 public static IClientBuilder AddOpenAIFileClient(this Microsoft.Extensions.Hosting.IHostApplicationBuilder builder, string sectionName);
96 public static IClientBuilder AddOpenAIModelClient(this Microsoft.Extensions.Hosting.IHostApplicationBuilder builder, string sectionName);
97 public static IClientBuilder AddRealtimeClient(this Microsoft.Extensions.Hosting.IHostApplicationBuilder builder, string sectionName);
98 public static IClientBuilder AddResponsesClient(this Microsoft.Extensions.Hosting.IHostApplicationBuilder builder, string sectionName);
99 public static IClientBuilder AddVectorStoreClient(this Microsoft.Extensions.Hosting.IHostApplicationBuilder builder, string sectionName);
100 public static IClientBuilder AddVideoClient(this Microsoft.Extensions.Hosting.IHostApplicationBuilder builder, string sectionName);
101 }
102}
103namespace OpenAI.Assistants {
104 [Experimental("OPENAI001")]
105 public class Assistant : IJsonModel<Assistant>, IPersistableModel<Assistant> {
106 public DateTimeOffset CreatedAt { get; }
107 public string Description { get; }
108 public string Id { get; }
109 public string Instructions { get; }
110 public IReadOnlyDictionary<string, string> Metadata { get; }
111 public string Model { get; }
112 public string Name { get; }
113 public float? NucleusSamplingFactor { get; }
114 public AssistantResponseFormat ResponseFormat { get; }
115 public float? Temperature { get; }
116 public ToolResources ToolResources { get; }
117 public IReadOnlyList<ToolDefinition> Tools { get; }
118 public static explicit operator Assistant(ClientResult result);
119 }
120 [Experimental("OPENAI001")]
121 public class AssistantClient {
122 protected AssistantClient();
123 [Experimental("SCME0002")]
124 public AssistantClient(AssistantClientSettings settings);
125 public AssistantClient(ApiKeyCredential credential, OpenAIClientOptions options);
126 public AssistantClient(ApiKeyCredential credential);
127 public AssistantClient(AuthenticationPolicy authenticationPolicy, OpenAIClientOptions options);
128 public AssistantClient(AuthenticationPolicy authenticationPolicy);
129 protected internal AssistantClient(ClientPipeline pipeline, OpenAIClientOptions options);
130 public AssistantClient(string apiKey);
131 [Experimental("OPENAI001")]
132 public Uri Endpoint { get; }
133 public ClientPipeline Pipeline { get; }
134 public virtual ClientResult CancelRun(string threadId, string runId, RequestOptions options);
135 public virtual ClientResult<ThreadRun> CancelRun(string threadId, string runId, CancellationToken cancellationToken = default);
136 public virtual Task<ClientResult> CancelRunAsync(string threadId, string runId, RequestOptions options);
137 public virtual Task<ClientResult<ThreadRun>> CancelRunAsync(string threadId, string runId, CancellationToken cancellationToken = default);
138 public virtual ClientResult CreateAssistant(BinaryContent content, RequestOptions options = null);
139 public virtual ClientResult<Assistant> CreateAssistant(string model, AssistantCreationOptions options = null, CancellationToken cancellationToken = default);
140 public virtual Task<ClientResult> CreateAssistantAsync(BinaryContent content, RequestOptions options = null);
141 public virtual Task<ClientResult<Assistant>> CreateAssistantAsync(string model, AssistantCreationOptions options = null, CancellationToken cancellationToken = default);
142 public virtual ClientResult<ThreadMessage> CreateMessage(string threadId, MessageRole role, IEnumerable<MessageContent> content, MessageCreationOptions options = null, CancellationToken cancellationToken = default);
143 public virtual ClientResult CreateMessage(string threadId, BinaryContent content, RequestOptions options = null);
144 public virtual Task<ClientResult<ThreadMessage>> CreateMessageAsync(string threadId, MessageRole role, IEnumerable<MessageContent> content, MessageCreationOptions options = null, CancellationToken cancellationToken = default);
145 public virtual Task<ClientResult> CreateMessageAsync(string threadId, BinaryContent content, RequestOptions options = null);
146 public virtual ClientResult CreateRun(string threadId, BinaryContent content, RequestOptions options = null);
147 public virtual ClientResult<ThreadRun> CreateRun(string threadId, string assistantId, RunCreationOptions options = null, CancellationToken cancellationToken = default);
148 public virtual Task<ClientResult> CreateRunAsync(string threadId, BinaryContent content, RequestOptions options = null);
149 public virtual Task<ClientResult<ThreadRun>> CreateRunAsync(string threadId, string assistantId, RunCreationOptions options = null, CancellationToken cancellationToken = default);
150 public virtual CollectionResult<StreamingUpdate> CreateRunStreaming(string threadId, string assistantId, RunCreationOptions options = null, CancellationToken cancellationToken = default);
151 public virtual AsyncCollectionResult<StreamingUpdate> CreateRunStreamingAsync(string threadId, string assistantId, RunCreationOptions options = null, CancellationToken cancellationToken = default);
152 public virtual ClientResult<AssistantThread> CreateThread(ThreadCreationOptions options = null, CancellationToken cancellationToken = default);
153 public virtual ClientResult CreateThread(BinaryContent content, RequestOptions options = null);
154 public virtual ClientResult CreateThreadAndRun(BinaryContent content, RequestOptions options = null);
155 public virtual ClientResult<ThreadRun> CreateThreadAndRun(string assistantId, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null, CancellationToken cancellationToken = default);
156 public virtual Task<ClientResult> CreateThreadAndRunAsync(BinaryContent content, RequestOptions options = null);
157 public virtual Task<ClientResult<ThreadRun>> CreateThreadAndRunAsync(string assistantId, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null, CancellationToken cancellationToken = default);
158 public virtual CollectionResult<StreamingUpdate> CreateThreadAndRunStreaming(string assistantId, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null, CancellationToken cancellationToken = default);
159 public virtual AsyncCollectionResult<StreamingUpdate> CreateThreadAndRunStreamingAsync(string assistantId, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null, CancellationToken cancellationToken = default);
160 public virtual Task<ClientResult<AssistantThread>> CreateThreadAsync(ThreadCreationOptions options = null, CancellationToken cancellationToken = default);
161 public virtual Task<ClientResult> CreateThreadAsync(BinaryContent content, RequestOptions options = null);
162 public virtual ClientResult DeleteAssistant(string assistantId, RequestOptions options);
163 public virtual ClientResult<AssistantDeletionResult> DeleteAssistant(string assistantId, CancellationToken cancellationToken = default);
164 public virtual Task<ClientResult> DeleteAssistantAsync(string assistantId, RequestOptions options);
165 public virtual Task<ClientResult<AssistantDeletionResult>> DeleteAssistantAsync(string assistantId, CancellationToken cancellationToken = default);
166 public virtual ClientResult DeleteMessage(string threadId, string messageId, RequestOptions options);
167 public virtual ClientResult<MessageDeletionResult> DeleteMessage(string threadId, string messageId, CancellationToken cancellationToken = default);
168 public virtual Task<ClientResult> DeleteMessageAsync(string threadId, string messageId, RequestOptions options);
169 public virtual Task<ClientResult<MessageDeletionResult>> DeleteMessageAsync(string threadId, string messageId, CancellationToken cancellationToken = default);
170 public virtual ClientResult DeleteThread(string threadId, RequestOptions options);
171 public virtual ClientResult<ThreadDeletionResult> DeleteThread(string threadId, CancellationToken cancellationToken = default);
172 public virtual Task<ClientResult> DeleteThreadAsync(string threadId, RequestOptions options);
173 public virtual Task<ClientResult<ThreadDeletionResult>> DeleteThreadAsync(string threadId, CancellationToken cancellationToken = default);
174 public virtual ClientResult GetAssistant(string assistantId, RequestOptions options);
175 public virtual ClientResult<Assistant> GetAssistant(string assistantId, CancellationToken cancellationToken = default);
176 public virtual Task<ClientResult> GetAssistantAsync(string assistantId, RequestOptions options);
177 public virtual Task<ClientResult<Assistant>> GetAssistantAsync(string assistantId, CancellationToken cancellationToken = default);
178 public virtual CollectionResult<Assistant> GetAssistants(AssistantCollectionOptions options = null, CancellationToken cancellationToken = default);
179 public virtual CollectionResult GetAssistants(int? limit, string order, string after, string before, RequestOptions options);
180 public virtual AsyncCollectionResult<Assistant> GetAssistantsAsync(AssistantCollectionOptions options = null, CancellationToken cancellationToken = default);
181 public virtual AsyncCollectionResult GetAssistantsAsync(int? limit, string order, string after, string before, RequestOptions options);
182 public virtual ClientResult GetMessage(string threadId, string messageId, RequestOptions options);
183 public virtual ClientResult<ThreadMessage> GetMessage(string threadId, string messageId, CancellationToken cancellationToken = default);
184 public virtual Task<ClientResult> GetMessageAsync(string threadId, string messageId, RequestOptions options);
185 public virtual Task<ClientResult<ThreadMessage>> GetMessageAsync(string threadId, string messageId, CancellationToken cancellationToken = default);
186 public virtual CollectionResult<ThreadMessage> GetMessages(string threadId, MessageCollectionOptions options = null, CancellationToken cancellationToken = default);
187 public virtual CollectionResult GetMessages(string threadId, int? limit, string order, string after, string before, RequestOptions options);
188 public virtual AsyncCollectionResult<ThreadMessage> GetMessagesAsync(string threadId, MessageCollectionOptions options = null, CancellationToken cancellationToken = default);
189 public virtual AsyncCollectionResult GetMessagesAsync(string threadId, int? limit, string order, string after, string before, RequestOptions options);
190 public virtual ClientResult GetRun(string threadId, string runId, RequestOptions options);
191 public virtual ClientResult<ThreadRun> GetRun(string threadId, string runId, CancellationToken cancellationToken = default);
192 public virtual Task<ClientResult> GetRunAsync(string threadId, string runId, RequestOptions options);
193 public virtual Task<ClientResult<ThreadRun>> GetRunAsync(string threadId, string runId, CancellationToken cancellationToken = default);
194 public virtual CollectionResult<ThreadRun> GetRuns(string threadId, RunCollectionOptions options = null, CancellationToken cancellationToken = default);
195 public virtual CollectionResult GetRuns(string threadId, int? limit, string order, string after, string before, RequestOptions options);
196 public virtual AsyncCollectionResult<ThreadRun> GetRunsAsync(string threadId, RunCollectionOptions options = null, CancellationToken cancellationToken = default);
197 public virtual AsyncCollectionResult GetRunsAsync(string threadId, int? limit, string order, string after, string before, RequestOptions options);
198 public virtual ClientResult GetRunStep(string threadId, string runId, string stepId, RequestOptions options);
199 public virtual ClientResult<RunStep> GetRunStep(string threadId, string runId, string stepId, CancellationToken cancellationToken = default);
200 public virtual Task<ClientResult> GetRunStepAsync(string threadId, string runId, string stepId, RequestOptions options);
201 public virtual Task<ClientResult<RunStep>> GetRunStepAsync(string threadId, string runId, string stepId, CancellationToken cancellationToken = default);
202 public virtual CollectionResult<RunStep> GetRunSteps(string threadId, string runId, RunStepCollectionOptions options = null, CancellationToken cancellationToken = default);
203 public virtual CollectionResult GetRunSteps(string threadId, string runId, int? limit, string order, string after, string before, RequestOptions options);
204 public virtual AsyncCollectionResult<RunStep> GetRunStepsAsync(string threadId, string runId, RunStepCollectionOptions options = null, CancellationToken cancellationToken = default);
205 public virtual AsyncCollectionResult GetRunStepsAsync(string threadId, string runId, int? limit, string order, string after, string before, RequestOptions options);
206 public virtual ClientResult GetThread(string threadId, RequestOptions options);
207 public virtual ClientResult<AssistantThread> GetThread(string threadId, CancellationToken cancellationToken = default);
208 public virtual Task<ClientResult> GetThreadAsync(string threadId, RequestOptions options);
209 public virtual Task<ClientResult<AssistantThread>> GetThreadAsync(string threadId, CancellationToken cancellationToken = default);
210 public virtual ClientResult<Assistant> ModifyAssistant(string assistantId, AssistantModificationOptions options, CancellationToken cancellationToken = default);
211 public virtual ClientResult ModifyAssistant(string assistantId, BinaryContent content, RequestOptions options = null);
212 public virtual Task<ClientResult<Assistant>> ModifyAssistantAsync(string assistantId, AssistantModificationOptions options, CancellationToken cancellationToken = default);
213 public virtual Task<ClientResult> ModifyAssistantAsync(string assistantId, BinaryContent content, RequestOptions options = null);
214 public virtual ClientResult<ThreadMessage> ModifyMessage(string threadId, string messageId, MessageModificationOptions options, CancellationToken cancellationToken = default);
215 public virtual ClientResult ModifyMessage(string threadId, string messageId, BinaryContent content, RequestOptions options = null);
216 public virtual Task<ClientResult<ThreadMessage>> ModifyMessageAsync(string threadId, string messageId, MessageModificationOptions options, CancellationToken cancellationToken = default);
217 public virtual Task<ClientResult> ModifyMessageAsync(string threadId, string messageId, BinaryContent content, RequestOptions options = null);
218 public virtual ClientResult ModifyRun(string threadId, string runId, BinaryContent content, RequestOptions options = null);
219 public virtual Task<ClientResult> ModifyRunAsync(string threadId, string runId, BinaryContent content, RequestOptions options = null);
220 public virtual ClientResult<AssistantThread> ModifyThread(string threadId, ThreadModificationOptions options, CancellationToken cancellationToken = default);
221 public virtual ClientResult ModifyThread(string threadId, BinaryContent content, RequestOptions options = null);
222 public virtual Task<ClientResult<AssistantThread>> ModifyThreadAsync(string threadId, ThreadModificationOptions options, CancellationToken cancellationToken = default);
223 public virtual Task<ClientResult> ModifyThreadAsync(string threadId, BinaryContent content, RequestOptions options = null);
224 public virtual ClientResult SubmitToolOutputsToRun(string threadId, string runId, BinaryContent content, RequestOptions options = null);
225 public virtual ClientResult<ThreadRun> SubmitToolOutputsToRun(string threadId, string runId, IEnumerable<ToolOutput> toolOutputs, CancellationToken cancellationToken = default);
226 public virtual Task<ClientResult> SubmitToolOutputsToRunAsync(string threadId, string runId, BinaryContent content, RequestOptions options = null);
227 public virtual Task<ClientResult<ThreadRun>> SubmitToolOutputsToRunAsync(string threadId, string runId, IEnumerable<ToolOutput> toolOutputs, CancellationToken cancellationToken = default);
228 public virtual CollectionResult<StreamingUpdate> SubmitToolOutputsToRunStreaming(string threadId, string runId, IEnumerable<ToolOutput> toolOutputs, CancellationToken cancellationToken = default);
229 public virtual AsyncCollectionResult<StreamingUpdate> SubmitToolOutputsToRunStreamingAsync(string threadId, string runId, IEnumerable<ToolOutput> toolOutputs, CancellationToken cancellationToken = default);
230 }
231 [Experimental("SCME0002")]
232 public sealed class AssistantClientSettings : ClientSettings {
233 public OpenAIClientOptions Options { get; set; }
234 protected override void BindCore(Microsoft.Extensions.Configuration.IConfigurationSection section);
235 }
236 [Experimental("OPENAI001")]
237 public class AssistantCollectionOptions : IJsonModel<AssistantCollectionOptions>, IPersistableModel<AssistantCollectionOptions> {
238 public string AfterId { get; set; }
239 public string BeforeId { get; set; }
240 public AssistantCollectionOrder? Order { get; set; }
241 public int? PageSizeLimit { get; set; }
242 }
243 [Experimental("OPENAI001")]
244 public readonly partial struct AssistantCollectionOrder : IEquatable<AssistantCollectionOrder> {
245 public AssistantCollectionOrder(string value);
246 public static AssistantCollectionOrder Ascending { get; }
247 public static AssistantCollectionOrder Descending { get; }
248 public readonly bool Equals(AssistantCollectionOrder other);
249 [EditorBrowsable(EditorBrowsableState.Never)]
250 public override readonly bool Equals(object obj);
251 [EditorBrowsable(EditorBrowsableState.Never)]
252 public override readonly int GetHashCode();
253 public static bool operator ==(AssistantCollectionOrder left, AssistantCollectionOrder right);
254 public static implicit operator AssistantCollectionOrder(string value);
255 public static implicit operator AssistantCollectionOrder?(string value);
256 public static bool operator !=(AssistantCollectionOrder left, AssistantCollectionOrder right);
257 public override readonly string ToString();
258 }
259 [Experimental("OPENAI001")]
260 public class AssistantCreationOptions : IJsonModel<AssistantCreationOptions>, IPersistableModel<AssistantCreationOptions> {
261 public string Description { get; set; }
262 public string Instructions { get; set; }
263 public IDictionary<string, string> Metadata { get; }
264 public string Name { get; set; }
265 public float? NucleusSamplingFactor { get; set; }
266 public AssistantResponseFormat ResponseFormat { get; set; }
267 public float? Temperature { get; set; }
268 public ToolResources ToolResources { get; set; }
269 public IList<ToolDefinition> Tools { get; }
270 }
271 [Experimental("OPENAI001")]
272 public class AssistantDeletionResult : IJsonModel<AssistantDeletionResult>, IPersistableModel<AssistantDeletionResult> {
273 public string AssistantId { get; }
274 public bool Deleted { get; }
275 public static explicit operator AssistantDeletionResult(ClientResult result);
276 }
277 [Experimental("OPENAI001")]
278 public class AssistantModificationOptions : IJsonModel<AssistantModificationOptions>, IPersistableModel<AssistantModificationOptions> {
279 public IList<ToolDefinition> DefaultTools { get; }
280 public string Description { get; set; }
281 public string Instructions { get; set; }
282 public IDictionary<string, string> Metadata { get; }
283 public string Model { get; set; }
284 public string Name { get; set; }
285 public float? NucleusSamplingFactor { get; set; }
286 public AssistantResponseFormat ResponseFormat { get; set; }
287 public float? Temperature { get; set; }
288 public ToolResources ToolResources { get; set; }
289 }
290 [Experimental("OPENAI001")]
291 public class AssistantResponseFormat : IEquatable<AssistantResponseFormat>, IEquatable<string>, IJsonModel<AssistantResponseFormat>, IPersistableModel<AssistantResponseFormat> {
292 public static AssistantResponseFormat Auto { get; }
293 public static AssistantResponseFormat JsonObject { get; }
294 public static AssistantResponseFormat Text { get; }
295 public static AssistantResponseFormat CreateAutoFormat();
296 public static AssistantResponseFormat CreateJsonObjectFormat();
297 public static AssistantResponseFormat CreateJsonSchemaFormat(string name, BinaryData jsonSchema, string description = null, bool? strictSchemaEnabled = null);
298 public static AssistantResponseFormat CreateTextFormat();
299 [EditorBrowsable(EditorBrowsableState.Never)]
300 public override bool Equals(object obj);
301 [EditorBrowsable(EditorBrowsableState.Never)]
302 public override int GetHashCode();
303 [EditorBrowsable(EditorBrowsableState.Never)]
304 public static bool operator ==(AssistantResponseFormat first, AssistantResponseFormat second);
305 [EditorBrowsable(EditorBrowsableState.Never)]
306 public static implicit operator AssistantResponseFormat(string plainTextFormat);
307 [EditorBrowsable(EditorBrowsableState.Never)]
308 public static bool operator !=(AssistantResponseFormat first, AssistantResponseFormat second);
309 [EditorBrowsable(EditorBrowsableState.Never)]
310 bool IEquatable<AssistantResponseFormat>.Equals(AssistantResponseFormat other);
311 [EditorBrowsable(EditorBrowsableState.Never)]
312 bool IEquatable<string>.Equals(string other);
313 public override string ToString();
314 }
315 [Experimental("OPENAI001")]
316 public class AssistantThread : IJsonModel<AssistantThread>, IPersistableModel<AssistantThread> {
317 public DateTimeOffset CreatedAt { get; }
318 public string Id { get; }
319 public IReadOnlyDictionary<string, string> Metadata { get; }
320 public ToolResources ToolResources { get; }
321 public static explicit operator AssistantThread(ClientResult result);
322 }
323 [Experimental("OPENAI001")]
324 public class CodeInterpreterToolDefinition : ToolDefinition, IJsonModel<CodeInterpreterToolDefinition>, IPersistableModel<CodeInterpreterToolDefinition> {
325 public CodeInterpreterToolDefinition();
326 }
327 [Experimental("OPENAI001")]
328 public class CodeInterpreterToolResources : IJsonModel<CodeInterpreterToolResources>, IPersistableModel<CodeInterpreterToolResources> {
329 public IList<string> FileIds { get; }
330 }
331 [Experimental("OPENAI001")]
332 public readonly partial struct FileSearchRanker : IEquatable<FileSearchRanker> {
333 public FileSearchRanker(string value);
334 public static FileSearchRanker Auto { get; }
335 public static FileSearchRanker Default20240821 { get; }
336 public readonly bool Equals(FileSearchRanker other);
337 [EditorBrowsable(EditorBrowsableState.Never)]
338 public override readonly bool Equals(object obj);
339 [EditorBrowsable(EditorBrowsableState.Never)]
340 public override readonly int GetHashCode();
341 public static bool operator ==(FileSearchRanker left, FileSearchRanker right);
342 public static implicit operator FileSearchRanker(string value);
343 public static implicit operator FileSearchRanker?(string value);
344 public static bool operator !=(FileSearchRanker left, FileSearchRanker right);
345 public override readonly string ToString();
346 }
347 [Experimental("OPENAI001")]
348 public class FileSearchRankingOptions : IJsonModel<FileSearchRankingOptions>, IPersistableModel<FileSearchRankingOptions> {
349 public FileSearchRankingOptions(float scoreThreshold);
350 public FileSearchRanker? Ranker { get; set; }
351 public float ScoreThreshold { get; set; }
352 }
353 [Experimental("OPENAI001")]
354 public class FileSearchToolDefinition : ToolDefinition, IJsonModel<FileSearchToolDefinition>, IPersistableModel<FileSearchToolDefinition> {
355 public FileSearchToolDefinition();
356 public int? MaxResults { get; set; }
357 public FileSearchRankingOptions RankingOptions { get; set; }
358 }
359 [Experimental("OPENAI001")]
360 public class FileSearchToolResources : IJsonModel<FileSearchToolResources>, IPersistableModel<FileSearchToolResources> {
361 public IList<VectorStoreCreationHelper> NewVectorStores { get; }
362 public IList<string> VectorStoreIds { get; }
363 }
364 [Experimental("OPENAI001")]
365 public class FunctionToolDefinition : ToolDefinition, IJsonModel<FunctionToolDefinition>, IPersistableModel<FunctionToolDefinition> {
366 public FunctionToolDefinition();
367 public FunctionToolDefinition(string name);
368 public string Description { get; set; }
369 public string FunctionName { get; set; }
370 public BinaryData Parameters { get; set; }
371 public bool? StrictParameterSchemaEnabled { get; set; }
372 }
373 [Experimental("OPENAI001")]
374 public class MessageCollectionOptions : IJsonModel<MessageCollectionOptions>, IPersistableModel<MessageCollectionOptions> {
375 public string AfterId { get; set; }
376 public string BeforeId { get; set; }
377 public MessageCollectionOrder? Order { get; set; }
378 public int? PageSizeLimit { get; set; }
379 }
380 [Experimental("OPENAI001")]
381 public readonly partial struct MessageCollectionOrder : IEquatable<MessageCollectionOrder> {
382 public MessageCollectionOrder(string value);
383 public static MessageCollectionOrder Ascending { get; }
384 public static MessageCollectionOrder Descending { get; }
385 public readonly bool Equals(MessageCollectionOrder other);
386 [EditorBrowsable(EditorBrowsableState.Never)]
387 public override readonly bool Equals(object obj);
388 [EditorBrowsable(EditorBrowsableState.Never)]
389 public override readonly int GetHashCode();
390 public static bool operator ==(MessageCollectionOrder left, MessageCollectionOrder right);
391 public static implicit operator MessageCollectionOrder(string value);
392 public static implicit operator MessageCollectionOrder?(string value);
393 public static bool operator !=(MessageCollectionOrder left, MessageCollectionOrder right);
394 public override readonly string ToString();
395 }
396 [Experimental("OPENAI001")]
397 public abstract class MessageContent : IJsonModel<MessageContent>, IPersistableModel<MessageContent> {
398 public MessageImageDetail? ImageDetail { get; }
399 public string ImageFileId { get; }
400 public Uri ImageUri { get; }
401 public string Refusal { get; }
402 public string Text { get; }
403 public IReadOnlyList<TextAnnotation> TextAnnotations { get; }
404 public static MessageContent FromImageFileId(string imageFileId, MessageImageDetail? detail = null);
405 public static MessageContent FromImageUri(Uri imageUri, MessageImageDetail? detail = null);
406 public static MessageContent FromText(string text);
407 public static implicit operator MessageContent(string value);
408 }
409 [Experimental("OPENAI001")]
410 public class MessageContentUpdate : StreamingUpdate {
411 public MessageImageDetail? ImageDetail { get; }
412 public string ImageFileId { get; }
413 public string MessageId { get; }
414 public int MessageIndex { get; }
415 public string RefusalUpdate { get; }
416 public MessageRole? Role { get; }
417 public string Text { get; }
418 public TextAnnotationUpdate TextAnnotation { get; }
419 }
420 [Experimental("OPENAI001")]
421 public class MessageCreationAttachment : IJsonModel<MessageCreationAttachment>, IPersistableModel<MessageCreationAttachment> {
422 public MessageCreationAttachment(string fileId, IEnumerable<ToolDefinition> tools);
423 public string FileId { get; }
424 public IReadOnlyList<ToolDefinition> Tools { get; }
425 }
426 [Experimental("OPENAI001")]
427 public class MessageCreationOptions : IJsonModel<MessageCreationOptions>, IPersistableModel<MessageCreationOptions> {
428 public IList<MessageCreationAttachment> Attachments { get; set; }
429 public IDictionary<string, string> Metadata { get; }
430 }
431 [Experimental("OPENAI001")]
432 public class MessageDeletionResult : IJsonModel<MessageDeletionResult>, IPersistableModel<MessageDeletionResult> {
433 public bool Deleted { get; }
434 public string MessageId { get; }
435 public static explicit operator MessageDeletionResult(ClientResult result);
436 }
437 [Experimental("OPENAI001")]
438 public class MessageFailureDetails : IJsonModel<MessageFailureDetails>, IPersistableModel<MessageFailureDetails> {
439 public MessageFailureReason Reason { get; }
440 }
441 [Experimental("OPENAI001")]
442 public readonly partial struct MessageFailureReason : IEquatable<MessageFailureReason> {
443 public MessageFailureReason(string value);
444 public static MessageFailureReason ContentFilter { get; }
445 public static MessageFailureReason MaxTokens { get; }
446 public static MessageFailureReason RunCancelled { get; }
447 public static MessageFailureReason RunExpired { get; }
448 public static MessageFailureReason RunFailed { get; }
449 public readonly bool Equals(MessageFailureReason other);
450 [EditorBrowsable(EditorBrowsableState.Never)]
451 public override readonly bool Equals(object obj);
452 [EditorBrowsable(EditorBrowsableState.Never)]
453 public override readonly int GetHashCode();
454 public static bool operator ==(MessageFailureReason left, MessageFailureReason right);
455 public static implicit operator MessageFailureReason(string value);
456 public static implicit operator MessageFailureReason?(string value);
457 public static bool operator !=(MessageFailureReason left, MessageFailureReason right);
458 public override readonly string ToString();
459 }
460 [Experimental("OPENAI001")]
461 public enum MessageImageDetail {
462 Auto = 0,
463 Low = 1,
464 High = 2
465 }
466 [Experimental("OPENAI001")]
467 public class MessageModificationOptions : IJsonModel<MessageModificationOptions>, IPersistableModel<MessageModificationOptions> {
468 public IDictionary<string, string> Metadata { get; }
469 }
470 [Experimental("OPENAI001")]
471 public enum MessageRole {
472 User = 0,
473 Assistant = 1
474 }
475 [Experimental("OPENAI001")]
476 public readonly partial struct MessageStatus : IEquatable<MessageStatus> {
477 public MessageStatus(string value);
478 public static MessageStatus Completed { get; }
479 public static MessageStatus Incomplete { get; }
480 public static MessageStatus InProgress { get; }
481 public readonly bool Equals(MessageStatus other);
482 [EditorBrowsable(EditorBrowsableState.Never)]
483 public override readonly bool Equals(object obj);
484 [EditorBrowsable(EditorBrowsableState.Never)]
485 public override readonly int GetHashCode();
486 public static bool operator ==(MessageStatus left, MessageStatus right);
487 public static implicit operator MessageStatus(string value);
488 public static implicit operator MessageStatus?(string value);
489 public static bool operator !=(MessageStatus left, MessageStatus right);
490 public override readonly string ToString();
491 }
492 [Experimental("OPENAI001")]
493 public class MessageStatusUpdate : StreamingUpdate<ThreadMessage> {
494 }
495 [Experimental("OPENAI001")]
496 public abstract class RequiredAction {
497 public string FunctionArguments { get; }
498 public string FunctionName { get; }
499 public string ToolCallId { get; }
500 }
501 [Experimental("OPENAI001")]
502 public class RequiredActionUpdate : RunUpdate {
503 public string FunctionArguments { get; }
504 public string FunctionName { get; }
505 public string ToolCallId { get; }
506 public ThreadRun GetThreadRun();
507 }
508 [Experimental("OPENAI001")]
509 public class RunCollectionOptions : IJsonModel<RunCollectionOptions>, IPersistableModel<RunCollectionOptions> {
510 public string AfterId { get; set; }
511 public string BeforeId { get; set; }
512 public RunCollectionOrder? Order { get; set; }
513 public int? PageSizeLimit { get; set; }
514 }
515 [Experimental("OPENAI001")]
516 public readonly partial struct RunCollectionOrder : IEquatable<RunCollectionOrder> {
517 public RunCollectionOrder(string value);
518 public static RunCollectionOrder Ascending { get; }
519 public static RunCollectionOrder Descending { get; }
520 public readonly bool Equals(RunCollectionOrder other);
521 [EditorBrowsable(EditorBrowsableState.Never)]
522 public override readonly bool Equals(object obj);
523 [EditorBrowsable(EditorBrowsableState.Never)]
524 public override readonly int GetHashCode();
525 public static bool operator ==(RunCollectionOrder left, RunCollectionOrder right);
526 public static implicit operator RunCollectionOrder(string value);
527 public static implicit operator RunCollectionOrder?(string value);
528 public static bool operator !=(RunCollectionOrder left, RunCollectionOrder right);
529 public override readonly string ToString();
530 }
531 [Experimental("OPENAI001")]
532 public class RunCreationOptions : IJsonModel<RunCreationOptions>, IPersistableModel<RunCreationOptions> {
533 public string AdditionalInstructions { get; set; }
534 public IList<ThreadInitializationMessage> AdditionalMessages { get; }
535 public bool? AllowParallelToolCalls { get; set; }
536 public string InstructionsOverride { get; set; }
537 public int? MaxInputTokenCount { get; set; }
538 public int? MaxOutputTokenCount { get; set; }
539 public IDictionary<string, string> Metadata { get; }
540 public string ModelOverride { get; set; }
541 public float? NucleusSamplingFactor { get; set; }
542 public AssistantResponseFormat ResponseFormat { get; set; }
543 public float? Temperature { get; set; }
544 public ToolConstraint ToolConstraint { get; set; }
545 public IList<ToolDefinition> ToolsOverride { get; }
546 public RunTruncationStrategy TruncationStrategy { get; set; }
547 }
548 [Experimental("OPENAI001")]
549 public class RunError : IJsonModel<RunError>, IPersistableModel<RunError> {
550 public RunErrorCode Code { get; }
551 public string Message { get; }
552 }
553 [Experimental("OPENAI001")]
554 public readonly partial struct RunErrorCode : IEquatable<RunErrorCode> {
555 public RunErrorCode(string value);
556 public static RunErrorCode InvalidPrompt { get; }
557 public static RunErrorCode RateLimitExceeded { get; }
558 public static RunErrorCode ServerError { get; }
559 public readonly bool Equals(RunErrorCode other);
560 [EditorBrowsable(EditorBrowsableState.Never)]
561 public override readonly bool Equals(object obj);
562 [EditorBrowsable(EditorBrowsableState.Never)]
563 public override readonly int GetHashCode();
564 public static bool operator ==(RunErrorCode left, RunErrorCode right);
565 public static implicit operator RunErrorCode(string value);
566 public static implicit operator RunErrorCode?(string value);
567 public static bool operator !=(RunErrorCode left, RunErrorCode right);
568 public override readonly string ToString();
569 }
570 [Experimental("OPENAI001")]
571 public class RunIncompleteDetails : IJsonModel<RunIncompleteDetails>, IPersistableModel<RunIncompleteDetails> {
572 public RunIncompleteReason? Reason { get; }
573 }
574 [Experimental("OPENAI001")]
575 public readonly partial struct RunIncompleteReason : IEquatable<RunIncompleteReason> {
576 public RunIncompleteReason(string value);
577 public static RunIncompleteReason MaxInputTokenCount { get; }
578 public static RunIncompleteReason MaxOutputTokenCount { get; }
579 public readonly bool Equals(RunIncompleteReason other);
580 [EditorBrowsable(EditorBrowsableState.Never)]
581 public override readonly bool Equals(object obj);
582 [EditorBrowsable(EditorBrowsableState.Never)]
583 public override readonly int GetHashCode();
584 public static bool operator ==(RunIncompleteReason left, RunIncompleteReason right);
585 public static implicit operator RunIncompleteReason(string value);
586 public static implicit operator RunIncompleteReason?(string value);
587 public static bool operator !=(RunIncompleteReason left, RunIncompleteReason right);
588 public override readonly string ToString();
589 }
590 [Experimental("OPENAI001")]
591 public class RunModificationOptions : IJsonModel<RunModificationOptions>, IPersistableModel<RunModificationOptions> {
592 public IDictionary<string, string> Metadata { get; }
593 }
594 [Experimental("OPENAI001")]
595 public readonly partial struct RunStatus : IEquatable<RunStatus> {
596 public RunStatus(string value);
597 public static RunStatus Cancelled { get; }
598 public static RunStatus Cancelling { get; }
599 public static RunStatus Completed { get; }
600 public static RunStatus Expired { get; }
601 public static RunStatus Failed { get; }
602 public static RunStatus Incomplete { get; }
603 public static RunStatus InProgress { get; }
604 public bool IsTerminal { get; }
605 public static RunStatus Queued { get; }
606 public static RunStatus RequiresAction { get; }
607 public readonly bool Equals(RunStatus other);
608 [EditorBrowsable(EditorBrowsableState.Never)]
609 public override readonly bool Equals(object obj);
610 [EditorBrowsable(EditorBrowsableState.Never)]
611 public override readonly int GetHashCode();
612 public static bool operator ==(RunStatus left, RunStatus right);
613 public static implicit operator RunStatus(string value);
614 public static implicit operator RunStatus?(string value);
615 public static bool operator !=(RunStatus left, RunStatus right);
616 public override readonly string ToString();
617 }
618 [Experimental("OPENAI001")]
619 public class RunStep : IJsonModel<RunStep>, IPersistableModel<RunStep> {
620 public string AssistantId { get; }
621 public DateTimeOffset? CancelledAt { get; }
622 public DateTimeOffset? CompletedAt { get; }
623 public DateTimeOffset CreatedAt { get; }
624 public RunStepDetails Details { get; }
625 public DateTimeOffset? ExpiredAt { get; }
626 public DateTimeOffset? FailedAt { get; }
627 public string Id { get; }
628 public RunStepKind Kind { get; }
629 public RunStepError LastError { get; }
630 public IReadOnlyDictionary<string, string> Metadata { get; }
631 public string RunId { get; }
632 public RunStepStatus Status { get; }
633 public string ThreadId { get; }
634 public RunStepTokenUsage Usage { get; }
635 public static explicit operator RunStep(ClientResult result);
636 }
637 [Experimental("OPENAI001")]
638 public abstract class RunStepCodeInterpreterOutput : IJsonModel<RunStepCodeInterpreterOutput>, IPersistableModel<RunStepCodeInterpreterOutput> {
639 public string ImageFileId { get; }
640 public string Logs { get; }
641 }
642 [Experimental("OPENAI001")]
643 public class RunStepCollectionOptions : IJsonModel<RunStepCollectionOptions>, IPersistableModel<RunStepCollectionOptions> {
644 public string AfterId { get; set; }
645 public string BeforeId { get; set; }
646 public RunStepCollectionOrder? Order { get; set; }
647 public int? PageSizeLimit { get; set; }
648 }
649 [Experimental("OPENAI001")]
650 public readonly partial struct RunStepCollectionOrder : IEquatable<RunStepCollectionOrder> {
651 public RunStepCollectionOrder(string value);
652 public static RunStepCollectionOrder Ascending { get; }
653 public static RunStepCollectionOrder Descending { get; }
654 public readonly bool Equals(RunStepCollectionOrder other);
655 [EditorBrowsable(EditorBrowsableState.Never)]
656 public override readonly bool Equals(object obj);
657 [EditorBrowsable(EditorBrowsableState.Never)]
658 public override readonly int GetHashCode();
659 public static bool operator ==(RunStepCollectionOrder left, RunStepCollectionOrder right);
660 public static implicit operator RunStepCollectionOrder(string value);
661 public static implicit operator RunStepCollectionOrder?(string value);
662 public static bool operator !=(RunStepCollectionOrder left, RunStepCollectionOrder right);
663 public override readonly string ToString();
664 }
665 [Experimental("OPENAI001")]
666 public abstract class RunStepDetails : IJsonModel<RunStepDetails>, IPersistableModel<RunStepDetails> {
667 public string CreatedMessageId { get; }
668 public IReadOnlyList<RunStepToolCall> ToolCalls { get; }
669 }
670 [Experimental("OPENAI001")]
671 public class RunStepDetailsUpdate : StreamingUpdate {
672 public string CodeInterpreterInput { get; }
673 public IReadOnlyList<RunStepUpdateCodeInterpreterOutput> CodeInterpreterOutputs { get; }
674 public string CreatedMessageId { get; }
675 public FileSearchRankingOptions FileSearchRankingOptions { get; }
676 public IReadOnlyList<RunStepFileSearchResult> FileSearchResults { get; }
677 public string FunctionArguments { get; }
678 public string FunctionName { get; }
679 public string FunctionOutput { get; }
680 public string StepId { get; }
681 public string ToolCallId { get; }
682 public int? ToolCallIndex { get; }
683 }
684 [Experimental("OPENAI001")]
685 public class RunStepError : IJsonModel<RunStepError>, IPersistableModel<RunStepError> {
686 public RunStepErrorCode Code { get; }
687 public string Message { get; }
688 }
689 [Experimental("OPENAI001")]
690 public readonly partial struct RunStepErrorCode : IEquatable<RunStepErrorCode> {
691 public RunStepErrorCode(string value);
692 public static RunStepErrorCode RateLimitExceeded { get; }
693 public static RunStepErrorCode ServerError { get; }
694 public readonly bool Equals(RunStepErrorCode other);
695 [EditorBrowsable(EditorBrowsableState.Never)]
696 public override readonly bool Equals(object obj);
697 [EditorBrowsable(EditorBrowsableState.Never)]
698 public override readonly int GetHashCode();
699 public static bool operator ==(RunStepErrorCode left, RunStepErrorCode right);
700 public static implicit operator RunStepErrorCode(string value);
701 public static implicit operator RunStepErrorCode?(string value);
702 public static bool operator !=(RunStepErrorCode left, RunStepErrorCode right);
703 public override readonly string ToString();
704 }
705 [Experimental("OPENAI001")]
706 public class RunStepFileSearchResult : IJsonModel<RunStepFileSearchResult>, IPersistableModel<RunStepFileSearchResult> {
707 public IReadOnlyList<RunStepFileSearchResultContent> Content { get; }
708 public string FileId { get; }
709 public string FileName { get; }
710 public float Score { get; }
711 }
712 [Experimental("OPENAI001")]
713 public class RunStepFileSearchResultContent : IJsonModel<RunStepFileSearchResultContent>, IPersistableModel<RunStepFileSearchResultContent> {
714 public RunStepFileSearchResultContentKind Kind { get; }
715 public string Text { get; }
716 }
717 [Experimental("OPENAI001")]
718 public enum RunStepFileSearchResultContentKind {
719 Text = 0
720 }
721 [Experimental("OPENAI001")]
722 public enum RunStepKind {
723 CreatedMessage = 0,
724 ToolCall = 1
725 }
726 [Experimental("OPENAI001")]
727 public readonly partial struct RunStepStatus : IEquatable<RunStepStatus> {
728 public RunStepStatus(string value);
729 public static RunStepStatus Cancelled { get; }
730 public static RunStepStatus Completed { get; }
731 public static RunStepStatus Expired { get; }
732 public static RunStepStatus Failed { get; }
733 public static RunStepStatus InProgress { get; }
734 public readonly bool Equals(RunStepStatus other);
735 [EditorBrowsable(EditorBrowsableState.Never)]
736 public override readonly bool Equals(object obj);
737 [EditorBrowsable(EditorBrowsableState.Never)]
738 public override readonly int GetHashCode();
739 public static bool operator ==(RunStepStatus left, RunStepStatus right);
740 public static implicit operator RunStepStatus(string value);
741 public static implicit operator RunStepStatus?(string value);
742 public static bool operator !=(RunStepStatus left, RunStepStatus right);
743 public override readonly string ToString();
744 }
745 [Experimental("OPENAI001")]
746 public class RunStepTokenUsage : IJsonModel<RunStepTokenUsage>, IPersistableModel<RunStepTokenUsage> {
747 public int InputTokenCount { get; }
748 public int OutputTokenCount { get; }
749 public int TotalTokenCount { get; }
750 }
751 [Experimental("OPENAI001")]
752 public class RunStepToolCall : IJsonModel<RunStepToolCall>, IPersistableModel<RunStepToolCall> {
753 public string CodeInterpreterInput { get; }
754 public IReadOnlyList<RunStepCodeInterpreterOutput> CodeInterpreterOutputs { get; }
755 public FileSearchRankingOptions FileSearchRankingOptions { get; }
756 public IReadOnlyList<RunStepFileSearchResult> FileSearchResults { get; }
757 public string FunctionArguments { get; }
758 public string FunctionName { get; }
759 public string FunctionOutput { get; }
760 public string Id { get; }
761 public RunStepToolCallKind Kind { get; }
762 }
763 [Experimental("OPENAI001")]
764 public enum RunStepToolCallKind {
765 CodeInterpreter = 0,
766 FileSearch = 1,
767 Function = 2
768 }
769 [Experimental("OPENAI001")]
770 public class RunStepUpdate : StreamingUpdate<RunStep> {
771 }
772 [Experimental("OPENAI001")]
773 public class RunStepUpdateCodeInterpreterOutput : IJsonModel<RunStepUpdateCodeInterpreterOutput>, IPersistableModel<RunStepUpdateCodeInterpreterOutput> {
774 public string ImageFileId { get; }
775 public string Logs { get; }
776 public int OutputIndex { get; }
777 }
778 [Experimental("OPENAI001")]
779 public class RunTokenUsage : IJsonModel<RunTokenUsage>, IPersistableModel<RunTokenUsage> {
780 public int InputTokenCount { get; }
781 public int OutputTokenCount { get; }
782 public int TotalTokenCount { get; }
783 }
784 [Experimental("OPENAI001")]
785 public class RunTruncationStrategy : IJsonModel<RunTruncationStrategy>, IPersistableModel<RunTruncationStrategy> {
786 public static RunTruncationStrategy Auto { get; }
787 public int? LastMessages { get; }
788 public static RunTruncationStrategy CreateLastMessagesStrategy(int lastMessageCount);
789 }
790 [Experimental("OPENAI001")]
791 public class RunUpdate : StreamingUpdate<ThreadRun> {
792 }
793 [Experimental("OPENAI001")]
794 public abstract class StreamingUpdate {
795 public StreamingUpdateReason UpdateKind { get; }
796 }
797 [Experimental("OPENAI001")]
798 public enum StreamingUpdateReason {
799 Unknown = 0,
800 ThreadCreated = 1,
801 RunCreated = 2,
802 RunQueued = 3,
803 RunInProgress = 4,
804 RunRequiresAction = 5,
805 RunCompleted = 6,
806 RunIncomplete = 7,
807 RunFailed = 8,
808 RunCancelling = 9,
809 RunCancelled = 10,
810 RunExpired = 11,
811 RunStepCreated = 12,
812 RunStepInProgress = 13,
813 RunStepUpdated = 14,
814 RunStepCompleted = 15,
815 RunStepFailed = 16,
816 RunStepCancelled = 17,
817 RunStepExpired = 18,
818 MessageCreated = 19,
819 MessageInProgress = 20,
820 MessageUpdated = 21,
821 MessageCompleted = 22,
822 MessageFailed = 23,
823 Error = 24,
824 Done = 25
825 }
826 [Experimental("OPENAI001")]
827 public class StreamingUpdate<T> : StreamingUpdate where T : class {
828 public T Value { get; }
829 public static implicit operator T(StreamingUpdate<T> update);
830 }
831 [Experimental("OPENAI001")]
832 public class TextAnnotation {
833 public int EndIndex { get; }
834 public string InputFileId { get; }
835 public string OutputFileId { get; }
836 public int StartIndex { get; }
837 public string TextToReplace { get; }
838 }
839 [Experimental("OPENAI001")]
840 public class TextAnnotationUpdate {
841 public int ContentIndex { get; }
842 public int? EndIndex { get; }
843 public string InputFileId { get; }
844 public string OutputFileId { get; }
845 public int? StartIndex { get; }
846 public string TextToReplace { get; }
847 }
848 [Experimental("OPENAI001")]
849 public class ThreadCreationOptions : IJsonModel<ThreadCreationOptions>, IPersistableModel<ThreadCreationOptions> {
850 public IList<ThreadInitializationMessage> InitialMessages { get; }
851 public IDictionary<string, string> Metadata { get; }
852 public ToolResources ToolResources { get; set; }
853 }
854 [Experimental("OPENAI001")]
855 public class ThreadDeletionResult : IJsonModel<ThreadDeletionResult>, IPersistableModel<ThreadDeletionResult> {
856 public bool Deleted { get; }
857 public string ThreadId { get; }
858 public static explicit operator ThreadDeletionResult(ClientResult result);
859 }
860 [Experimental("OPENAI001")]
861 public class ThreadInitializationMessage : MessageCreationOptions {
862 public ThreadInitializationMessage(MessageRole role, IEnumerable<MessageContent> content);
863 public static implicit operator ThreadInitializationMessage(string initializationMessage);
864 }
865 [Experimental("OPENAI001")]
866 public class ThreadMessage : IJsonModel<ThreadMessage>, IPersistableModel<ThreadMessage> {
867 public string AssistantId { get; }
868 public IReadOnlyList<MessageCreationAttachment> Attachments { get; }
869 public DateTimeOffset? CompletedAt { get; }
870 public IReadOnlyList<MessageContent> Content { get; }
871 public DateTimeOffset CreatedAt { get; }
872 public string Id { get; }
873 public DateTimeOffset? IncompleteAt { get; }
874 public MessageFailureDetails IncompleteDetails { get; }
875 public IReadOnlyDictionary<string, string> Metadata { get; }
876 public MessageRole Role { get; }
877 public string RunId { get; }
878 public MessageStatus Status { get; }
879 public string ThreadId { get; }
880 public static explicit operator ThreadMessage(ClientResult result);
881 }
882 [Experimental("OPENAI001")]
883 public class ThreadModificationOptions : IJsonModel<ThreadModificationOptions>, IPersistableModel<ThreadModificationOptions> {
884 public IDictionary<string, string> Metadata { get; }
885 public ToolResources ToolResources { get; set; }
886 }
887 [Experimental("OPENAI001")]
888 public class ThreadRun : IJsonModel<ThreadRun>, IPersistableModel<ThreadRun> {
889 public bool? AllowParallelToolCalls { get; }
890 public string AssistantId { get; }
891 public DateTimeOffset? CancelledAt { get; }
892 public DateTimeOffset? CompletedAt { get; }
893 public DateTimeOffset CreatedAt { get; }
894 public DateTimeOffset? ExpiresAt { get; }
895 public DateTimeOffset? FailedAt { get; }
896 public string Id { get; }
897 public RunIncompleteDetails IncompleteDetails { get; }
898 public string Instructions { get; }
899 public RunError LastError { get; }
900 public int? MaxInputTokenCount { get; }
901 public int? MaxOutputTokenCount { get; }
902 public IReadOnlyDictionary<string, string> Metadata { get; }
903 public string Model { get; }
904 public float? NucleusSamplingFactor { get; }
905 public IReadOnlyList<RequiredAction> RequiredActions { get; }
906 public AssistantResponseFormat ResponseFormat { get; }
907 public DateTimeOffset? StartedAt { get; }
908 public RunStatus Status { get; }
909 public float? Temperature { get; }
910 public string ThreadId { get; }
911 public ToolConstraint ToolConstraint { get; }
912 public IReadOnlyList<ToolDefinition> Tools { get; }
913 public RunTruncationStrategy TruncationStrategy { get; }
914 public RunTokenUsage Usage { get; }
915 public static explicit operator ThreadRun(ClientResult result);
916 }
917 [Experimental("OPENAI001")]
918 public class ThreadUpdate : StreamingUpdate<AssistantThread> {
919 public DateTimeOffset CreatedAt { get; }
920 public string Id { get; }
921 public IReadOnlyDictionary<string, string> Metadata { get; }
922 public ToolResources ToolResources { get; }
923 }
924 [Experimental("OPENAI001")]
925 public class ToolConstraint : IJsonModel<ToolConstraint>, IPersistableModel<ToolConstraint> {
926 public ToolConstraint(ToolDefinition toolDefinition);
927 public static ToolConstraint Auto { get; }
928 public static ToolConstraint None { get; }
929 public static ToolConstraint Required { get; }
930 }
931 [Experimental("OPENAI001")]
932 public class ToolDefinition : IJsonModel<ToolDefinition>, IPersistableModel<ToolDefinition> {
933 public static CodeInterpreterToolDefinition CreateCodeInterpreter();
934 public static FileSearchToolDefinition CreateFileSearch(int? maxResults = null);
935 public static FunctionToolDefinition CreateFunction(string name, string description = null, BinaryData parameters = null, bool? strictParameterSchemaEnabled = null);
936 }
937 [Experimental("OPENAI001")]
938 public class ToolOutput : IJsonModel<ToolOutput>, IPersistableModel<ToolOutput> {
939 public ToolOutput();
940 public ToolOutput(string toolCallId, string output);
941 public string Output { get; set; }
942 public string ToolCallId { get; set; }
943 }
944 [Experimental("OPENAI001")]
945 public class ToolResources : IJsonModel<ToolResources>, IPersistableModel<ToolResources> {
946 public CodeInterpreterToolResources CodeInterpreter { get; set; }
947 public FileSearchToolResources FileSearch { get; set; }
948 }
949 [Experimental("OPENAI001")]
950 public class VectorStoreCreationHelper : IJsonModel<VectorStoreCreationHelper>, IPersistableModel<VectorStoreCreationHelper> {
951 public VectorStoreCreationHelper();
952 public VectorStoreCreationHelper(IEnumerable<OpenAIFile> files);
953 public VectorStoreCreationHelper(IEnumerable<string> fileIds);
954 public FileChunkingStrategy ChunkingStrategy { get; set; }
955 public IList<string> FileIds { get; }
956 public IDictionary<string, string> Metadata { get; }
957 }
958}
959namespace OpenAI.Audio {
960 public class AudioClient {
961 protected AudioClient();
962 [Experimental("SCME0002")]
963 public AudioClient(AudioClientSettings settings);
964 protected internal AudioClient(ClientPipeline pipeline, string model, OpenAIClientOptions options);
965 public AudioClient(string model, ApiKeyCredential credential, OpenAIClientOptions options);
966 public AudioClient(string model, ApiKeyCredential credential);
967 [Experimental("OPENAI001")]
968 public AudioClient(string model, AuthenticationPolicy authenticationPolicy, OpenAIClientOptions options);
969 [Experimental("OPENAI001")]
970 public AudioClient(string model, AuthenticationPolicy authenticationPolicy);
971 public AudioClient(string model, string apiKey);
972 [Experimental("OPENAI001")]
973 public Uri Endpoint { get; }
974 [Experimental("OPENAI001")]
975 public string Model { get; }
976 public ClientPipeline Pipeline { get; }
977 [Experimental("OPENAI001")]
978 public virtual ClientResult CreateVoice(BinaryContent content, string contentType, RequestOptions options = null);
979 [Experimental("OPENAI001")]
980 public virtual Task<ClientResult> CreateVoiceAsync(BinaryContent content, string contentType, RequestOptions options = null);
981 [Experimental("OPENAI001")]
982 public virtual ClientResult CreateVoiceConsent(BinaryContent content, string contentType, RequestOptions options = null);
983 [Experimental("OPENAI001")]
984 public virtual Task<ClientResult> CreateVoiceConsentAsync(BinaryContent content, string contentType, RequestOptions options = null);
985 [Experimental("OPENAI001")]
986 public virtual ClientResult DeleteVoiceConsent(string consentId, RequestOptions options = null);
987 [Experimental("OPENAI001")]
988 public virtual Task<ClientResult> DeleteVoiceConsentAsync(string consentId, RequestOptions options = null);
989 public virtual ClientResult GenerateSpeech(BinaryContent content, RequestOptions options = null);
990 public virtual ClientResult<BinaryData> GenerateSpeech(string text, GeneratedSpeechVoice voice, SpeechGenerationOptions options = null, CancellationToken cancellationToken = default);
991 public virtual Task<ClientResult> GenerateSpeechAsync(BinaryContent content, RequestOptions options = null);
992 public virtual Task<ClientResult<BinaryData>> GenerateSpeechAsync(string text, GeneratedSpeechVoice voice, SpeechGenerationOptions options = null, CancellationToken cancellationToken = default);
993 [Experimental("OPENAI001")]
994 public virtual CollectionResult<StreamingSpeechUpdate> GenerateSpeechStreaming(string text, GeneratedSpeechVoice voice, SpeechGenerationOptions options = null, CancellationToken cancellationToken = default);
995 [Experimental("OPENAI001")]
996 public virtual AsyncCollectionResult<StreamingSpeechUpdate> GenerateSpeechStreamingAsync(string text, GeneratedSpeechVoice voice, SpeechGenerationOptions options = null, CancellationToken cancellationToken = default);
997 [Experimental("OPENAI001")]
998 public virtual ClientResult GetVoiceConsent(string consentId, RequestOptions options = null);
999 [Experimental("OPENAI001")]
1000 public virtual Task<ClientResult> GetVoiceConsentAsync(string consentId, RequestOptions options = null);
1001 [Experimental("OPENAI001")]
1002 public virtual CollectionResult GetVoiceConsents(string after = null, int? limit = null, RequestOptions options = null);
1003 [Experimental("OPENAI001")]
1004 public virtual AsyncCollectionResult GetVoiceConsentsAsync(string after = null, int? limit = null, RequestOptions options = null);
1005 public virtual ClientResult TranscribeAudio(BinaryContent content, string contentType, RequestOptions options = null);
1006 public virtual ClientResult<AudioTranscription> TranscribeAudio(Stream audio, string audioFilename, AudioTranscriptionOptions options = null, CancellationToken cancellationToken = default);
1007 public virtual ClientResult<AudioTranscription> TranscribeAudio(string audioFilePath, AudioTranscriptionOptions options = null);
1008 public virtual Task<ClientResult> TranscribeAudioAsync(BinaryContent content, string contentType, RequestOptions options = null);
1009 public virtual Task<ClientResult<AudioTranscription>> TranscribeAudioAsync(Stream audio, string audioFilename, AudioTranscriptionOptions options = null, CancellationToken cancellationToken = default);
1010 public virtual Task<ClientResult<AudioTranscription>> TranscribeAudioAsync(string audioFilePath, AudioTranscriptionOptions options = null);
1011 [Experimental("OPENAI001")]
1012 public virtual ClientResult<DiarizedAudioTranscription> TranscribeAudioDiarized(Stream audio, string audioFilename, AudioTranscriptionOptions options = null, CancellationToken cancellationToken = default);
1013 [Experimental("OPENAI001")]
1014 public virtual ClientResult<DiarizedAudioTranscription> TranscribeAudioDiarized(string audioFilePath, AudioTranscriptionOptions options = null);
1015 [Experimental("OPENAI001")]
1016 public virtual Task<ClientResult<DiarizedAudioTranscription>> TranscribeAudioDiarizedAsync(Stream audio, string audioFilename, AudioTranscriptionOptions options = null, CancellationToken cancellationToken = default);
1017 [Experimental("OPENAI001")]
1018 public virtual Task<ClientResult<DiarizedAudioTranscription>> TranscribeAudioDiarizedAsync(string audioFilePath, AudioTranscriptionOptions options = null);
1019 [Experimental("OPENAI001")]
1020 public virtual CollectionResult<StreamingAudioTranscriptionUpdate> TranscribeAudioStreaming(Stream audio, string audioFilename, AudioTranscriptionOptions options = null, CancellationToken cancellationToken = default);
1021 [Experimental("OPENAI001")]
1022 public virtual CollectionResult<StreamingAudioTranscriptionUpdate> TranscribeAudioStreaming(string audioFilePath, AudioTranscriptionOptions options = null, CancellationToken cancellationToken = default);
1023 [Experimental("OPENAI001")]
1024 public virtual AsyncCollectionResult<StreamingAudioTranscriptionUpdate> TranscribeAudioStreamingAsync(Stream audio, string audioFilename, AudioTranscriptionOptions options = null, CancellationToken cancellationToken = default);
1025 [Experimental("OPENAI001")]
1026 public virtual AsyncCollectionResult<StreamingAudioTranscriptionUpdate> TranscribeAudioStreamingAsync(string audioFilePath, AudioTranscriptionOptions options = null, CancellationToken cancellationToken = default);
1027 public virtual ClientResult TranslateAudio(BinaryContent content, string contentType, RequestOptions options = null);
1028 public virtual ClientResult<AudioTranslation> TranslateAudio(Stream audio, string audioFilename, AudioTranslationOptions options = null, CancellationToken cancellationToken = default);
1029 public virtual ClientResult<AudioTranslation> TranslateAudio(string audioFilePath, AudioTranslationOptions options = null);
1030 public virtual Task<ClientResult> TranslateAudioAsync(BinaryContent content, string contentType, RequestOptions options = null);
1031 public virtual Task<ClientResult<AudioTranslation>> TranslateAudioAsync(Stream audio, string audioFilename, AudioTranslationOptions options = null, CancellationToken cancellationToken = default);
1032 public virtual Task<ClientResult<AudioTranslation>> TranslateAudioAsync(string audioFilePath, AudioTranslationOptions options = null);
1033 [Experimental("OPENAI001")]
1034 public virtual ClientResult UpdateVoiceConsent(string consentId, BinaryContent content, RequestOptions options = null);
1035 [Experimental("OPENAI001")]
1036 public virtual Task<ClientResult> UpdateVoiceConsentAsync(string consentId, BinaryContent content, RequestOptions options = null);
1037 }
1038 [Experimental("SCME0002")]
1039 public sealed class AudioClientSettings : ClientSettings {
1040 public string Model { get; set; }
1041 public OpenAIClientOptions Options { get; set; }
1042 protected override void BindCore(Microsoft.Extensions.Configuration.IConfigurationSection section);
1043 }
1044 [Flags]
1045 public enum AudioTimestampGranularities {
1046 Default = 0,
1047 Word = 1,
1048 Segment = 2
1049 }
1050 [Experimental("OPENAI001")]
1051 public class AudioTokenLogProbabilityDetails : IJsonModel<AudioTokenLogProbabilityDetails>, IPersistableModel<AudioTokenLogProbabilityDetails> {
1052 public float LogProbability { get; }
1053 public string Token { get; }
1054 public ReadOnlyMemory<byte> Utf8Bytes { get; }
1055 }
1056 public class AudioTranscription : IJsonModel<AudioTranscription>, IPersistableModel<AudioTranscription> {
1057 public TimeSpan? Duration { get; }
1058 public string Language { get; }
1059 public IReadOnlyList<TranscribedSegment> Segments { get; }
1060 public string Text { get; }
1061 [Experimental("OPENAI001")]
1062 public IReadOnlyList<AudioTokenLogProbabilityDetails> TranscriptionTokenLogProbabilities { get; }
1063 [Experimental("OPENAI001")]
1064 public AudioTranscriptionUsage Usage { get; }
1065 public IReadOnlyList<TranscribedWord> Words { get; }
1066 [Experimental("OPENAI001")]
1067 public static explicit operator AudioTranscription(ClientResult result);
1068 }
1069 [Experimental("OPENAI001")]
1070 public class AudioTranscriptionChunkingStrategy : IJsonModel<AudioTranscriptionChunkingStrategy>, IPersistableModel<AudioTranscriptionChunkingStrategy> {
1071 public AudioTranscriptionChunkingStrategy(AudioTranscriptionCustomChunkingStrategy customChunkingStrategy);
1072 public AudioTranscriptionChunkingStrategy(AudioTranscriptionDefaultChunkingStrategy defaultChunkingStrategy);
1073 public AudioTranscriptionCustomChunkingStrategy CustomChunkingStrategy { get; }
1074 public AudioTranscriptionDefaultChunkingStrategy? DefaultChunkingStrategy { get; }
1075 public static implicit operator AudioTranscriptionChunkingStrategy(AudioTranscriptionCustomChunkingStrategy customChunkingStrategy);
1076 public static implicit operator AudioTranscriptionChunkingStrategy(AudioTranscriptionDefaultChunkingStrategy defaultChunkingStrategy);
1077 }
1078 [Experimental("OPENAI001")]
1079 public class AudioTranscriptionCustomChunkingStrategy : IJsonModel<AudioTranscriptionCustomChunkingStrategy>, IPersistableModel<AudioTranscriptionCustomChunkingStrategy> {
1080 }
1081 [Experimental("OPENAI001")]
1082 public class AudioTranscriptionCustomServerVadChunkingStrategy : AudioTranscriptionCustomChunkingStrategy, IJsonModel<AudioTranscriptionCustomServerVadChunkingStrategy>, IPersistableModel<AudioTranscriptionCustomServerVadChunkingStrategy> {
1083 public AudioTranscriptionCustomServerVadChunkingStrategy();
1084 public float? DetectionThreshold { get; set; }
1085 public TimeSpan? PrefixPadding { get; set; }
1086 public TimeSpan? SilenceDuration { get; set; }
1087 }
1088 [Experimental("OPENAI001")]
1089 public readonly partial struct AudioTranscriptionDefaultChunkingStrategy : IEquatable<AudioTranscriptionDefaultChunkingStrategy> {
1090 public AudioTranscriptionDefaultChunkingStrategy(string value);
1091 public static AudioTranscriptionDefaultChunkingStrategy Auto { get; }
1092 public readonly bool Equals(AudioTranscriptionDefaultChunkingStrategy other);
1093 [EditorBrowsable(EditorBrowsableState.Never)]
1094 public override readonly bool Equals(object obj);
1095 [EditorBrowsable(EditorBrowsableState.Never)]
1096 public override readonly int GetHashCode();
1097 public static bool operator ==(AudioTranscriptionDefaultChunkingStrategy left, AudioTranscriptionDefaultChunkingStrategy right);
1098 public static implicit operator AudioTranscriptionDefaultChunkingStrategy(string value);
1099 public static implicit operator AudioTranscriptionDefaultChunkingStrategy?(string value);
1100 public static bool operator !=(AudioTranscriptionDefaultChunkingStrategy left, AudioTranscriptionDefaultChunkingStrategy right);
1101 public override readonly string ToString();
1102 }
1103 [Experimental("OPENAI001")]
1104 public class AudioTranscriptionDurationUsage : AudioTranscriptionUsage, IJsonModel<AudioTranscriptionDurationUsage>, IPersistableModel<AudioTranscriptionDurationUsage> {
1105 public TimeSpan Duration { get; }
1106 }
1107 public readonly partial struct AudioTranscriptionFormat : IEquatable<AudioTranscriptionFormat> {
1108 public AudioTranscriptionFormat(string value);
1109 [Experimental("OPENAI001")]
1110 public static AudioTranscriptionFormat Diarized { get; }
1111 public static AudioTranscriptionFormat Simple { get; }
1112 public static AudioTranscriptionFormat Srt { get; }
1113 [EditorBrowsable(EditorBrowsableState.Never)]
1114 public static AudioTranscriptionFormat Text { get; }
1115 public static AudioTranscriptionFormat Verbose { get; }
1116 public static AudioTranscriptionFormat Vtt { get; }
1117 public readonly bool Equals(AudioTranscriptionFormat other);
1118 [EditorBrowsable(EditorBrowsableState.Never)]
1119 public override readonly bool Equals(object obj);
1120 [EditorBrowsable(EditorBrowsableState.Never)]
1121 public override readonly int GetHashCode();
1122 public static bool operator ==(AudioTranscriptionFormat left, AudioTranscriptionFormat right);
1123 public static implicit operator AudioTranscriptionFormat(string value);
1124 public static implicit operator AudioTranscriptionFormat?(string value);
1125 public static bool operator !=(AudioTranscriptionFormat left, AudioTranscriptionFormat right);
1126 public override readonly string ToString();
1127 }
1128 [Experimental("OPENAI001")]
1129 [Flags]
1130 public enum AudioTranscriptionIncludes {
1131 Default = 0,
1132 Logprobs = 1
1133 }
1134 [Experimental("OPENAI001")]
1135 public class AudioTranscriptionInputTokenUsageDetails : IJsonModel<AudioTranscriptionInputTokenUsageDetails>, IPersistableModel<AudioTranscriptionInputTokenUsageDetails> {
1136 public int? AudioTokenCount { get; }
1137 public int? TextTokenCount { get; }
1138 }
1139 public class AudioTranscriptionOptions : IJsonModel<AudioTranscriptionOptions>, IPersistableModel<AudioTranscriptionOptions> {
1140 [Experimental("OPENAI001")]
1141 public AudioTranscriptionChunkingStrategy ChunkingStrategy { get; set; }
1142 [Experimental("OPENAI001")]
1143 public AudioTranscriptionIncludes Includes { get; set; }
1144 [Experimental("OPENAI001")]
1145 public IList<string> KnownSpeakerNames { get; }
1146 [Experimental("OPENAI001")]
1147 public IList<Uri> KnownSpeakerReferenceUris { get; }
1148 public string Language { get; set; }
1149 public string Prompt { get; set; }
1150 public AudioTranscriptionFormat? ResponseFormat { get; set; }
1151 public float? Temperature { get; set; }
1152 public AudioTimestampGranularities TimestampGranularities { get; set; }
1153 }
1154 [Experimental("OPENAI001")]
1155 public class AudioTranscriptionTokenUsage : AudioTranscriptionUsage, IJsonModel<AudioTranscriptionTokenUsage>, IPersistableModel<AudioTranscriptionTokenUsage> {
1156 public int InputTokenCount { get; }
1157 public AudioTranscriptionInputTokenUsageDetails InputTokenDetails { get; }
1158 public int OutputTokenCount { get; }
1159 public int TotalTokenCount { get; }
1160 }
1161 [Experimental("OPENAI001")]
1162 public class AudioTranscriptionUsage : IJsonModel<AudioTranscriptionUsage>, IPersistableModel<AudioTranscriptionUsage> {
1163 }
1164 public class AudioTranslation : IJsonModel<AudioTranslation>, IPersistableModel<AudioTranslation> {
1165 public TimeSpan? Duration { get; }
1166 public string Language { get; }
1167 public IReadOnlyList<TranscribedSegment> Segments { get; }
1168 public string Text { get; }
1169 [Experimental("OPENAI001")]
1170 public static explicit operator AudioTranslation(ClientResult result);
1171 }
1172 public readonly partial struct AudioTranslationFormat : IEquatable<AudioTranslationFormat> {
1173 public AudioTranslationFormat(string value);
1174 public static AudioTranslationFormat Simple { get; }
1175 public static AudioTranslationFormat Srt { get; }
1176 [EditorBrowsable(EditorBrowsableState.Never)]
1177 public static AudioTranslationFormat Text { get; }
1178 public static AudioTranslationFormat Verbose { get; }
1179 public static AudioTranslationFormat Vtt { get; }
1180 public readonly bool Equals(AudioTranslationFormat other);
1181 [EditorBrowsable(EditorBrowsableState.Never)]
1182 public override readonly bool Equals(object obj);
1183 [EditorBrowsable(EditorBrowsableState.Never)]
1184 public override readonly int GetHashCode();
1185 public static bool operator ==(AudioTranslationFormat left, AudioTranslationFormat right);
1186 public static implicit operator AudioTranslationFormat(string value);
1187 public static implicit operator AudioTranslationFormat?(string value);
1188 public static bool operator !=(AudioTranslationFormat left, AudioTranslationFormat right);
1189 public override readonly string ToString();
1190 }
1191 public class AudioTranslationOptions : IJsonModel<AudioTranslationOptions>, IPersistableModel<AudioTranslationOptions> {
1192 public string Prompt { get; set; }
1193 public AudioTranslationFormat? ResponseFormat { get; set; }
1194 public float? Temperature { get; set; }
1195 }
1196 [Experimental("OPENAI001")]
1197 public class DiarizedAudioTranscription : IJsonModel<DiarizedAudioTranscription>, IPersistableModel<DiarizedAudioTranscription> {
1198 public TimeSpan Duration { get; }
1199 public IReadOnlyList<DiarizedTranscriptionSegment> Segments { get; }
1200 public string Text { get; }
1201 public AudioTranscriptionUsage Usage { get; }
1202 }
1203 [Experimental("OPENAI001")]
1204 public readonly partial struct DiarizedTranscriptionSegment : IJsonModel<DiarizedTranscriptionSegment>, IPersistableModel<DiarizedTranscriptionSegment>, IJsonModel<object>, IPersistableModel<object> {
1205 public TimeSpan EndTime { get; }
1206 public string Id { get; }
1207 public string SpeakerLabel { get; }
1208 public TimeSpan StartTime { get; }
1209 public string Text { get; }
1210 }
1211 public readonly partial struct GeneratedSpeechFormat : IEquatable<GeneratedSpeechFormat> {
1212 public GeneratedSpeechFormat(string value);
1213 public static GeneratedSpeechFormat Aac { get; }
1214 public static GeneratedSpeechFormat Flac { get; }
1215 public static GeneratedSpeechFormat Mp3 { get; }
1216 public static GeneratedSpeechFormat Opus { get; }
1217 public static GeneratedSpeechFormat Pcm { get; }
1218 public static GeneratedSpeechFormat Wav { get; }
1219 public readonly bool Equals(GeneratedSpeechFormat other);
1220 [EditorBrowsable(EditorBrowsableState.Never)]
1221 public override readonly bool Equals(object obj);
1222 [EditorBrowsable(EditorBrowsableState.Never)]
1223 public override readonly int GetHashCode();
1224 public static bool operator ==(GeneratedSpeechFormat left, GeneratedSpeechFormat right);
1225 public static implicit operator GeneratedSpeechFormat(string value);
1226 public static implicit operator GeneratedSpeechFormat?(string value);
1227 public static bool operator !=(GeneratedSpeechFormat left, GeneratedSpeechFormat right);
1228 public override readonly string ToString();
1229 }
1230 public readonly partial struct GeneratedSpeechVoice : IEquatable<GeneratedSpeechVoice> {
1231 public GeneratedSpeechVoice(string value);
1232 public static GeneratedSpeechVoice Alloy { get; }
1233 [Experimental("OPENAI001")]
1234 public static GeneratedSpeechVoice Ash { get; }
1235 [Experimental("OPENAI001")]
1236 public static GeneratedSpeechVoice Ballad { get; }
1237 [Experimental("OPENAI001")]
1238 public static GeneratedSpeechVoice Coral { get; }
1239 public static GeneratedSpeechVoice Echo { get; }
1240 public static GeneratedSpeechVoice Fable { get; }
1241 public static GeneratedSpeechVoice Nova { get; }
1242 public static GeneratedSpeechVoice Onyx { get; }
1243 [Experimental("OPENAI001")]
1244 public static GeneratedSpeechVoice Sage { get; }
1245 public static GeneratedSpeechVoice Shimmer { get; }
1246 [Experimental("OPENAI001")]
1247 public static GeneratedSpeechVoice Verse { get; }
1248 public readonly bool Equals(GeneratedSpeechVoice other);
1249 [EditorBrowsable(EditorBrowsableState.Never)]
1250 public override readonly bool Equals(object obj);
1251 [EditorBrowsable(EditorBrowsableState.Never)]
1252 public override readonly int GetHashCode();
1253 public static bool operator ==(GeneratedSpeechVoice left, GeneratedSpeechVoice right);
1254 public static implicit operator GeneratedSpeechVoice(string value);
1255 public static implicit operator GeneratedSpeechVoice?(string value);
1256 public static bool operator !=(GeneratedSpeechVoice left, GeneratedSpeechVoice right);
1257 public override readonly string ToString();
1258 }
1259 public static class OpenAIAudioModelFactory {
1260 [Experimental("OPENAI001")]
1261 public static AudioTranscription AudioTranscription(string language = null, TimeSpan? duration = null, string text = null, IEnumerable<TranscribedWord> words = null, IEnumerable<TranscribedSegment> segments = null, IEnumerable<AudioTokenLogProbabilityDetails> transcriptionTokenLogProbabilities = null);
1262 [EditorBrowsable(EditorBrowsableState.Never)]
1263 public static AudioTranscription AudioTranscription(string language, TimeSpan? duration, string text, IEnumerable<TranscribedWord> words, IEnumerable<TranscribedSegment> segments);
1264 public static AudioTranslation AudioTranslation(string language = null, TimeSpan? duration = null, string text = null, IEnumerable<TranscribedSegment> segments = null);
1265 public static TranscribedSegment TranscribedSegment(int id = 0, int seekOffset = 0, TimeSpan startTime = default, TimeSpan endTime = default, string text = null, ReadOnlyMemory<int> tokenIds = default, float temperature = 0, float averageLogProbability = 0, float compressionRatio = 0, float noSpeechProbability = 0);
1266 public static TranscribedWord TranscribedWord(string word = null, TimeSpan startTime = default, TimeSpan endTime = default);
1267 }
1268 public class SpeechGenerationOptions : IJsonModel<SpeechGenerationOptions>, IPersistableModel<SpeechGenerationOptions> {
1269 [Experimental("OPENAI001")]
1270 public string Instructions { get; set; }
1271 public GeneratedSpeechFormat? ResponseFormat { get; set; }
1272 public float? SpeedRatio { get; set; }
1273 }
1274 [Experimental("OPENAI001")]
1275 public class SpeechTokenUsage : IJsonModel<SpeechTokenUsage>, IPersistableModel<SpeechTokenUsage> {
1276 public int InputTokenCount { get; }
1277 public int OutputTokenCount { get; }
1278 public int TotalTokenCount { get; }
1279 }
1280 [Experimental("OPENAI001")]
1281 public class StreamingAudioTranscriptionTextDeltaUpdate : StreamingAudioTranscriptionUpdate, IJsonModel<StreamingAudioTranscriptionTextDeltaUpdate>, IPersistableModel<StreamingAudioTranscriptionTextDeltaUpdate> {
1282 public string Delta { get; }
1283 public string SegmentId { get; }
1284 public IReadOnlyList<AudioTokenLogProbabilityDetails> TranscriptionTokenLogProbabilities { get; }
1285 }
1286 [Experimental("OPENAI001")]
1287 public class StreamingAudioTranscriptionTextDoneUpdate : StreamingAudioTranscriptionUpdate, IJsonModel<StreamingAudioTranscriptionTextDoneUpdate>, IPersistableModel<StreamingAudioTranscriptionTextDoneUpdate> {
1288 public string Text { get; }
1289 public IReadOnlyList<AudioTokenLogProbabilityDetails> TranscriptionTokenLogProbabilities { get; }
1290 public AudioTranscriptionTokenUsage Usage { get; }
1291 }
1292 [Experimental("OPENAI001")]
1293 public class StreamingAudioTranscriptionTextSegmentUpdate : StreamingAudioTranscriptionUpdate, IJsonModel<StreamingAudioTranscriptionTextSegmentUpdate>, IPersistableModel<StreamingAudioTranscriptionTextSegmentUpdate> {
1294 public TimeSpan EndTime { get; }
1295 public string SegmentId { get; }
1296 public string SpeakerLabel { get; }
1297 public TimeSpan StartTime { get; }
1298 public string Text { get; }
1299 }
1300 [Experimental("OPENAI001")]
1301 public class StreamingAudioTranscriptionUpdate : IJsonModel<StreamingAudioTranscriptionUpdate>, IPersistableModel<StreamingAudioTranscriptionUpdate> {
1302 }
1303 [Experimental("OPENAI001")]
1304 public class StreamingSpeechAudioDeltaUpdate : StreamingSpeechUpdate, IJsonModel<StreamingSpeechAudioDeltaUpdate>, IPersistableModel<StreamingSpeechAudioDeltaUpdate> {
1305 public BinaryData AudioBytes { get; }
1306 }
1307 [Experimental("OPENAI001")]
1308 public class StreamingSpeechAudioDoneUpdate : StreamingSpeechUpdate, IJsonModel<StreamingSpeechAudioDoneUpdate>, IPersistableModel<StreamingSpeechAudioDoneUpdate> {
1309 public SpeechTokenUsage Usage { get; }
1310 }
1311 [Experimental("OPENAI001")]
1312 public class StreamingSpeechUpdate : IJsonModel<StreamingSpeechUpdate>, IPersistableModel<StreamingSpeechUpdate> {
1313 }
1314 public readonly partial struct TranscribedSegment : IJsonModel<TranscribedSegment>, IPersistableModel<TranscribedSegment>, IJsonModel<object>, IPersistableModel<object> {
1315 public float AverageLogProbability { get; }
1316 public float CompressionRatio { get; }
1317 public TimeSpan EndTime { get; }
1318 public int Id { get; }
1319 public float NoSpeechProbability { get; }
1320 public int SeekOffset { get; }
1321 public TimeSpan StartTime { get; }
1322 public float Temperature { get; }
1323 public string Text { get; }
1324 public ReadOnlyMemory<int> TokenIds { get; }
1325 }
1326 public readonly partial struct TranscribedWord : IJsonModel<TranscribedWord>, IPersistableModel<TranscribedWord>, IJsonModel<object>, IPersistableModel<object> {
1327 public TimeSpan EndTime { get; }
1328 public TimeSpan StartTime { get; }
1329 public string Word { get; }
1330 }
1331}
1332namespace OpenAI.Batch {
1333 [Experimental("OPENAI001")]
1334 public class BatchClient {
1335 protected BatchClient();
1336 [Experimental("SCME0002")]
1337 public BatchClient(BatchClientSettings settings);
1338 public BatchClient(ApiKeyCredential credential, OpenAIClientOptions options);
1339 public BatchClient(ApiKeyCredential credential);
1340 public BatchClient(AuthenticationPolicy authenticationPolicy, OpenAIClientOptions options);
1341 public BatchClient(AuthenticationPolicy authenticationPolicy);
1342 protected internal BatchClient(ClientPipeline pipeline, OpenAIClientOptions options);
1343 public BatchClient(string apiKey);
1344 [Experimental("OPENAI001")]
1345 public Uri Endpoint { get; }
1346 public ClientPipeline Pipeline { get; }
1347 public virtual CreateBatchOperation CreateBatch(BinaryContent content, bool waitUntilCompleted, RequestOptions options = null);
1348 public virtual Task<CreateBatchOperation> CreateBatchAsync(BinaryContent content, bool waitUntilCompleted, RequestOptions options = null);
1349 public virtual ClientResult GetBatch(string batchId, RequestOptions options);
1350 public virtual Task<ClientResult> GetBatchAsync(string batchId, RequestOptions options);
1351 public virtual CollectionResult<BatchJob> GetBatches(BatchCollectionOptions options = null, CancellationToken cancellationToken = default);
1352 public virtual CollectionResult GetBatches(string after, int? limit, RequestOptions options);
1353 public virtual AsyncCollectionResult<BatchJob> GetBatchesAsync(BatchCollectionOptions options = null, CancellationToken cancellationToken = default);
1354 public virtual AsyncCollectionResult GetBatchesAsync(string after, int? limit, RequestOptions options);
1355 }
1356 [Experimental("SCME0002")]
1357 public sealed class BatchClientSettings : ClientSettings {
1358 public OpenAIClientOptions Options { get; set; }
1359 protected override void BindCore(Microsoft.Extensions.Configuration.IConfigurationSection section);
1360 }
1361 [Experimental("OPENAI001")]
1362 public class BatchCollectionOptions : IJsonModel<BatchCollectionOptions>, IPersistableModel<BatchCollectionOptions> {
1363 public string AfterId { get; set; }
1364 public int? PageSizeLimit { get; set; }
1365 }
1366 [Experimental("OPENAI001")]
1367 public class BatchJob : IJsonModel<BatchJob>, IPersistableModel<BatchJob> {
1368 public DateTimeOffset? CancelledAt { get; }
1369 public DateTimeOffset? CancellingAt { get; }
1370 public DateTimeOffset? CompletedAt { get; }
1371 public string CompletionWindow { get; }
1372 public DateTimeOffset CreatedAt { get; }
1373 public string Endpoint { get; }
1374 public string ErrorFileId { get; }
1375 public DateTimeOffset? ExpiredAt { get; }
1376 public DateTimeOffset? ExpiresAt { get; }
1377 public DateTimeOffset? FailedAt { get; }
1378 public DateTimeOffset? FinalizingAt { get; }
1379 public string Id { get; }
1380 public DateTimeOffset? InProgressAt { get; }
1381 public string InputFileId { get; }
1382 public IDictionary<string, string> Metadata { get; }
1383 public string Object { get; }
1384 public string OutputFileId { get; }
1385 public static explicit operator BatchJob(ClientResult result);
1386 }
1387 [Experimental("OPENAI001")]
1388 public class CreateBatchOperation : OperationResult {
1389 public string BatchId { get; }
1390 public override ContinuationToken? RehydrationToken { get; protected set; }
1391 public virtual ClientResult Cancel(RequestOptions? options);
1392 public virtual Task<ClientResult> CancelAsync(RequestOptions? options);
1393 public virtual ClientResult GetBatch(RequestOptions? options);
1394 public virtual Task<ClientResult> GetBatchAsync(RequestOptions? options);
1395 public static CreateBatchOperation Rehydrate(BatchClient client, ContinuationToken rehydrationToken, CancellationToken cancellationToken = default);
1396 public static CreateBatchOperation Rehydrate(BatchClient client, string batchId, CancellationToken cancellationToken = default);
1397 public static Task<CreateBatchOperation> RehydrateAsync(BatchClient client, ContinuationToken rehydrationToken, CancellationToken cancellationToken = default);
1398 public static Task<CreateBatchOperation> RehydrateAsync(BatchClient client, string batchId, CancellationToken cancellationToken = default);
1399 public override ClientResult UpdateStatus(RequestOptions? options = null);
1400 public override ValueTask<ClientResult> UpdateStatusAsync(RequestOptions? options = null);
1401 }
1402}
1403namespace OpenAI.Chat {
1404 public class AssistantChatMessage : ChatMessage, IJsonModel<AssistantChatMessage>, IPersistableModel<AssistantChatMessage> {
1405 public AssistantChatMessage(ChatCompletion chatCompletion);
1406 [Obsolete("This constructor is obsolete. Please use the constructor that takes an IEnumerable<ChatToolCall> parameter instead.")]
1407 public AssistantChatMessage(ChatFunctionCall functionCall);
1408 public AssistantChatMessage(params ChatMessageContentPart[] contentParts);
1409 [Experimental("OPENAI001")]
1410 public AssistantChatMessage(ChatOutputAudioReference outputAudioReference);
1411 public AssistantChatMessage(IEnumerable<ChatMessageContentPart> contentParts);
1412 public AssistantChatMessage(IEnumerable<ChatToolCall> toolCalls);
1413 public AssistantChatMessage(string content);
1414 [Obsolete("This property is obsolete. Please use ToolCalls instead.")]
1415 public ChatFunctionCall FunctionCall { get; set; }
1416 [Experimental("OPENAI001")]
1417 public ChatOutputAudioReference OutputAudioReference { get; set; }
1418 public string ParticipantName { get; set; }
1419 public string Refusal { get; set; }
1420 public IList<ChatToolCall> ToolCalls { get; }
1421 }
1422 [Experimental("OPENAI001")]
1423 public class ChatAudioOptions : IJsonModel<ChatAudioOptions>, IPersistableModel<ChatAudioOptions> {
1424 public ChatAudioOptions(ChatOutputAudioVoice outputAudioVoice, ChatOutputAudioFormat outputAudioFormat);
1425 public ChatOutputAudioFormat OutputAudioFormat { get; }
1426 public ChatOutputAudioVoice OutputAudioVoice { get; }
1427 [Serialization.JsonIgnore]
1428 [EditorBrowsable(EditorBrowsableState.Never)]
1429 [Experimental("SCME0001")]
1430 public ref JsonPatch Patch { get; }
1431 }
1432 public class ChatClient {
1433 protected ChatClient();
1434 [Experimental("SCME0002")]
1435 public ChatClient(ChatClientSettings settings);
1436 protected internal ChatClient(ClientPipeline pipeline, string model, OpenAIClientOptions options);
1437 public ChatClient(string model, ApiKeyCredential credential, OpenAIClientOptions options);
1438 public ChatClient(string model, ApiKeyCredential credential);
1439 [Experimental("OPENAI001")]
1440 public ChatClient(string model, AuthenticationPolicy authenticationPolicy, OpenAIClientOptions options);
1441 [Experimental("OPENAI001")]
1442 public ChatClient(string model, AuthenticationPolicy authenticationPolicy);
1443 public ChatClient(string model, string apiKey);
1444 [Experimental("OPENAI001")]
1445 public Uri Endpoint { get; }
1446 [Experimental("OPENAI001")]
1447 public string Model { get; }
1448 public ClientPipeline Pipeline { get; }
1449 public virtual ClientResult<ChatCompletion> CompleteChat(params ChatMessage[] messages);
1450 public virtual ClientResult CompleteChat(BinaryContent content, RequestOptions options = null);
1451 public virtual ClientResult<ChatCompletion> CompleteChat(IEnumerable<ChatMessage> messages, ChatCompletionOptions options = null, CancellationToken cancellationToken = default);
1452 public virtual Task<ClientResult<ChatCompletion>> CompleteChatAsync(params ChatMessage[] messages);
1453 public virtual Task<ClientResult> CompleteChatAsync(BinaryContent content, RequestOptions options = null);
1454 public virtual Task<ClientResult<ChatCompletion>> CompleteChatAsync(IEnumerable<ChatMessage> messages, ChatCompletionOptions options = null, CancellationToken cancellationToken = default);
1455 public virtual CollectionResult<StreamingChatCompletionUpdate> CompleteChatStreaming(params ChatMessage[] messages);
1456 public virtual CollectionResult<StreamingChatCompletionUpdate> CompleteChatStreaming(IEnumerable<ChatMessage> messages, ChatCompletionOptions options = null, CancellationToken cancellationToken = default);
1457 public virtual AsyncCollectionResult<StreamingChatCompletionUpdate> CompleteChatStreamingAsync(params ChatMessage[] messages);
1458 public virtual AsyncCollectionResult<StreamingChatCompletionUpdate> CompleteChatStreamingAsync(IEnumerable<ChatMessage> messages, ChatCompletionOptions options = null, CancellationToken cancellationToken = default);
1459 [Experimental("OPENAI001")]
1460 public virtual ClientResult DeleteChatCompletion(string completionId, RequestOptions options);
1461 [Experimental("OPENAI001")]
1462 public virtual ClientResult<ChatCompletionDeletionResult> DeleteChatCompletion(string completionId, CancellationToken cancellationToken = default);
1463 [Experimental("OPENAI001")]
1464 public virtual Task<ClientResult> DeleteChatCompletionAsync(string completionId, RequestOptions options);
1465 [Experimental("OPENAI001")]
1466 public virtual Task<ClientResult<ChatCompletionDeletionResult>> DeleteChatCompletionAsync(string completionId, CancellationToken cancellationToken = default);
1467 [Experimental("OPENAI001")]
1468 public virtual ClientResult GetChatCompletion(string completionId, RequestOptions options);
1469 [Experimental("OPENAI001")]
1470 public virtual ClientResult<ChatCompletion> GetChatCompletion(string completionId, CancellationToken cancellationToken = default);
1471 [Experimental("OPENAI001")]
1472 public virtual Task<ClientResult> GetChatCompletionAsync(string completionId, RequestOptions options);
1473 [Experimental("OPENAI001")]
1474 public virtual Task<ClientResult<ChatCompletion>> GetChatCompletionAsync(string completionId, CancellationToken cancellationToken = default);
1475 [Experimental("OPENAI001")]
1476 public virtual CollectionResult<ChatCompletionMessageListDatum> GetChatCompletionMessages(string completionId, ChatCompletionMessageCollectionOptions options = null, CancellationToken cancellationToken = default);
1477 [Experimental("OPENAI001")]
1478 public virtual CollectionResult GetChatCompletionMessages(string completionId, string after, int? limit, string order, RequestOptions options);
1479 [Experimental("OPENAI001")]
1480 public virtual AsyncCollectionResult<ChatCompletionMessageListDatum> GetChatCompletionMessagesAsync(string completionId, ChatCompletionMessageCollectionOptions options = null, CancellationToken cancellationToken = default);
1481 [Experimental("OPENAI001")]
1482 public virtual AsyncCollectionResult GetChatCompletionMessagesAsync(string completionId, string after, int? limit, string order, RequestOptions options);
1483 [Experimental("OPENAI001")]
1484 public virtual CollectionResult<ChatCompletion> GetChatCompletions(ChatCompletionCollectionOptions options = null, CancellationToken cancellationToken = default);
1485 [Experimental("OPENAI001")]
1486 public virtual CollectionResult GetChatCompletions(string after, int? limit, string order, IDictionary<string, string> metadata, string model, RequestOptions options);
1487 [Experimental("OPENAI001")]
1488 public virtual AsyncCollectionResult<ChatCompletion> GetChatCompletionsAsync(ChatCompletionCollectionOptions options = null, CancellationToken cancellationToken = default);
1489 [Experimental("OPENAI001")]
1490 public virtual AsyncCollectionResult GetChatCompletionsAsync(string after, int? limit, string order, IDictionary<string, string> metadata, string model, RequestOptions options);
1491 [Experimental("OPENAI001")]
1492 public virtual ClientResult UpdateChatCompletion(string completionId, BinaryContent content, RequestOptions options = null);
1493 [Experimental("OPENAI001")]
1494 public virtual ClientResult<ChatCompletion> UpdateChatCompletion(string completionId, IDictionary<string, string> metadata, CancellationToken cancellationToken = default);
1495 [Experimental("OPENAI001")]
1496 public virtual Task<ClientResult> UpdateChatCompletionAsync(string completionId, BinaryContent content, RequestOptions options = null);
1497 [Experimental("OPENAI001")]
1498 public virtual Task<ClientResult<ChatCompletion>> UpdateChatCompletionAsync(string completionId, IDictionary<string, string> metadata, CancellationToken cancellationToken = default);
1499 }
1500 [Experimental("SCME0002")]
1501 public sealed class ChatClientSettings : ClientSettings {
1502 public string Model { get; set; }
1503 public OpenAIClientOptions Options { get; set; }
1504 protected override void BindCore(Microsoft.Extensions.Configuration.IConfigurationSection section);
1505 }
1506 public class ChatCompletion : IJsonModel<ChatCompletion>, IPersistableModel<ChatCompletion> {
1507 [Experimental("OPENAI001")]
1508 public IReadOnlyList<ChatMessageAnnotation> Annotations { get; }
1509 public ChatMessageContent Content { get; }
1510 public IReadOnlyList<ChatTokenLogProbabilityDetails> ContentTokenLogProbabilities { get; }
1511 public DateTimeOffset CreatedAt { get; }
1512 public ChatFinishReason FinishReason { get; }
1513 [Obsolete("This property is obsolete. Please use ToolCalls instead.")]
1514 public ChatFunctionCall FunctionCall { get; }
1515 public string Id { get; }
1516 public string Model { get; }
1517 [Experimental("OPENAI001")]
1518 public ChatOutputAudio OutputAudio { get; }
1519 [Serialization.JsonIgnore]
1520 [EditorBrowsable(EditorBrowsableState.Never)]
1521 [Experimental("SCME0001")]
1522 public ref JsonPatch Patch { get; }
1523 public string Refusal { get; }
1524 public IReadOnlyList<ChatTokenLogProbabilityDetails> RefusalTokenLogProbabilities { get; }
1525 public ChatMessageRole Role { get; }
1526 [Experimental("OPENAI001")]
1527 public ChatServiceTier? ServiceTier { get; }
1528 public string SystemFingerprint { get; }
1529 public IReadOnlyList<ChatToolCall> ToolCalls { get; }
1530 public ChatTokenUsage Usage { get; }
1531 [Experimental("OPENAI001")]
1532 public static explicit operator ChatCompletion(ClientResult result);
1533 }
1534 [Experimental("OPENAI001")]
1535 public class ChatCompletionCollectionOptions : IJsonModel<ChatCompletionCollectionOptions>, IPersistableModel<ChatCompletionCollectionOptions> {
1536 public string AfterId { get; set; }
1537 public IDictionary<string, string> Metadata { get; }
1538 public string Model { get; set; }
1539 public ChatCompletionCollectionOrder? Order { get; set; }
1540 public int? PageSizeLimit { get; set; }
1541 [Serialization.JsonIgnore]
1542 [EditorBrowsable(EditorBrowsableState.Never)]
1543 [Experimental("SCME0001")]
1544 public ref JsonPatch Patch { get; }
1545 }
1546 [Experimental("OPENAI001")]
1547 public readonly partial struct ChatCompletionCollectionOrder : IEquatable<ChatCompletionCollectionOrder> {
1548 public ChatCompletionCollectionOrder(string value);
1549 public static ChatCompletionCollectionOrder Ascending { get; }
1550 public static ChatCompletionCollectionOrder Descending { get; }
1551 public readonly bool Equals(ChatCompletionCollectionOrder other);
1552 [EditorBrowsable(EditorBrowsableState.Never)]
1553 public override readonly bool Equals(object obj);
1554 [EditorBrowsable(EditorBrowsableState.Never)]
1555 public override readonly int GetHashCode();
1556 public static bool operator ==(ChatCompletionCollectionOrder left, ChatCompletionCollectionOrder right);
1557 public static implicit operator ChatCompletionCollectionOrder(string value);
1558 public static implicit operator ChatCompletionCollectionOrder?(string value);
1559 public static bool operator !=(ChatCompletionCollectionOrder left, ChatCompletionCollectionOrder right);
1560 public override readonly string ToString();
1561 }
1562 [Experimental("OPENAI001")]
1563 public class ChatCompletionDeletionResult : IJsonModel<ChatCompletionDeletionResult>, IPersistableModel<ChatCompletionDeletionResult> {
1564 public string ChatCompletionId { get; }
1565 public bool Deleted { get; }
1566 [Serialization.JsonIgnore]
1567 [EditorBrowsable(EditorBrowsableState.Never)]
1568 [Experimental("SCME0001")]
1569 public ref JsonPatch Patch { get; }
1570 public static explicit operator ChatCompletionDeletionResult(ClientResult result);
1571 }
1572 [Experimental("OPENAI001")]
1573 public class ChatCompletionMessageCollectionOptions : IJsonModel<ChatCompletionMessageCollectionOptions>, IPersistableModel<ChatCompletionMessageCollectionOptions> {
1574 public string AfterId { get; set; }
1575 public ChatCompletionMessageCollectionOrder? Order { get; set; }
1576 public int? PageSizeLimit { get; set; }
1577 [Serialization.JsonIgnore]
1578 [EditorBrowsable(EditorBrowsableState.Never)]
1579 [Experimental("SCME0001")]
1580 public ref JsonPatch Patch { get; }
1581 }
1582 [Experimental("OPENAI001")]
1583 public readonly partial struct ChatCompletionMessageCollectionOrder : IEquatable<ChatCompletionMessageCollectionOrder> {
1584 public ChatCompletionMessageCollectionOrder(string value);
1585 public static ChatCompletionMessageCollectionOrder Ascending { get; }
1586 public static ChatCompletionMessageCollectionOrder Descending { get; }
1587 public readonly bool Equals(ChatCompletionMessageCollectionOrder other);
1588 [EditorBrowsable(EditorBrowsableState.Never)]
1589 public override readonly bool Equals(object obj);
1590 [EditorBrowsable(EditorBrowsableState.Never)]
1591 public override readonly int GetHashCode();
1592 public static bool operator ==(ChatCompletionMessageCollectionOrder left, ChatCompletionMessageCollectionOrder right);
1593 public static implicit operator ChatCompletionMessageCollectionOrder(string value);
1594 public static implicit operator ChatCompletionMessageCollectionOrder?(string value);
1595 public static bool operator !=(ChatCompletionMessageCollectionOrder left, ChatCompletionMessageCollectionOrder right);
1596 public override readonly string ToString();
1597 }
1598 [Experimental("OPENAI001")]
1599 public class ChatCompletionMessageListDatum : IJsonModel<ChatCompletionMessageListDatum>, IPersistableModel<ChatCompletionMessageListDatum> {
1600 public IReadOnlyList<ChatMessageAnnotation> Annotations { get; }
1601 public string Content { get; }
1602 public IList<ChatMessageContentPart> ContentParts { get; }
1603 public string Id { get; }
1604 public ChatOutputAudio OutputAudio { get; }
1605 [Serialization.JsonIgnore]
1606 [EditorBrowsable(EditorBrowsableState.Never)]
1607 [Experimental("SCME0001")]
1608 public ref JsonPatch Patch { get; }
1609 public string Refusal { get; }
1610 public IReadOnlyList<ChatToolCall> ToolCalls { get; }
1611 }
1612 public class ChatCompletionOptions : IJsonModel<ChatCompletionOptions>, IPersistableModel<ChatCompletionOptions> {
1613 public bool? AllowParallelToolCalls { get; set; }
1614 [Experimental("OPENAI001")]
1615 public ChatAudioOptions AudioOptions { get; set; }
1616 public string EndUserId { get; set; }
1617 public float? FrequencyPenalty { get; set; }
1618 [Obsolete("This property is obsolete. Please use ToolChoice instead.")]
1619 public ChatFunctionChoice FunctionChoice { get; set; }
1620 [Obsolete("This property is obsolete. Please use Tools instead.")]
1621 public IList<ChatFunction> Functions { get; }
1622 public bool? IncludeLogProbabilities { get; set; }
1623 public IDictionary<int, int> LogitBiases { get; }
1624 public int? MaxOutputTokenCount { get; set; }
1625 public IDictionary<string, string> Metadata { get; }
1626 [Experimental("OPENAI001")]
1627 public ChatOutputPrediction OutputPrediction { get; set; }
1628 [Serialization.JsonIgnore]
1629 [EditorBrowsable(EditorBrowsableState.Never)]
1630 [Experimental("SCME0001")]
1631 public ref JsonPatch Patch { get; }
1632 public float? PresencePenalty { get; set; }
1633 [Experimental("OPENAI001")]
1634 public ChatReasoningEffortLevel? ReasoningEffortLevel { get; set; }
1635 public ChatResponseFormat ResponseFormat { get; set; }
1636 [Experimental("OPENAI001")]
1637 public ChatResponseModalities ResponseModalities { get; set; }
1638 [Experimental("OPENAI001")]
1639 public string SafetyIdentifier { get; set; }
1640 [Experimental("OPENAI001")]
1641 public long? Seed { get; set; }
1642 [Experimental("OPENAI001")]
1643 public ChatServiceTier? ServiceTier { get; set; }
1644 public IList<string> StopSequences { get; }
1645 public bool? StoredOutputEnabled { get; set; }
1646 public float? Temperature { get; set; }
1647 public ChatToolChoice ToolChoice { get; set; }
1648 public IList<ChatTool> Tools { get; }
1649 public int? TopLogProbabilityCount { get; set; }
1650 public float? TopP { get; set; }
1651 [Experimental("OPENAI001")]
1652 public ChatWebSearchOptions WebSearchOptions { get; set; }
1653 }
1654 public enum ChatFinishReason {
1655 Stop = 0,
1656 Length = 1,
1657 ContentFilter = 2,
1658 ToolCalls = 3,
1659 FunctionCall = 4
1660 }
1661 [Obsolete("This class is obsolete. Please use ChatTool instead.")]
1662 public class ChatFunction : IJsonModel<ChatFunction>, IPersistableModel<ChatFunction> {
1663 public ChatFunction(string functionName);
1664 public string FunctionDescription { get; set; }
1665 public string FunctionName { get; }
1666 public BinaryData FunctionParameters { get; set; }
1667 [Serialization.JsonIgnore]
1668 [EditorBrowsable(EditorBrowsableState.Never)]
1669 [Experimental("SCME0001")]
1670 public ref JsonPatch Patch { get; }
1671 }
1672 [Obsolete("This class is obsolete. Please use ChatToolCall instead.")]
1673 public class ChatFunctionCall : IJsonModel<ChatFunctionCall>, IPersistableModel<ChatFunctionCall> {
1674 public ChatFunctionCall(string functionName, BinaryData functionArguments);
1675 public BinaryData FunctionArguments { get; }
1676 public string FunctionName { get; }
1677 [Serialization.JsonIgnore]
1678 [EditorBrowsable(EditorBrowsableState.Never)]
1679 [Experimental("SCME0001")]
1680 public ref JsonPatch Patch { get; }
1681 }
1682 [Obsolete("This class is obsolete. Please use ChatToolChoice instead.")]
1683 public class ChatFunctionChoice : IJsonModel<ChatFunctionChoice>, IPersistableModel<ChatFunctionChoice> {
1684 [Serialization.JsonIgnore]
1685 [EditorBrowsable(EditorBrowsableState.Never)]
1686 [Experimental("SCME0001")]
1687 public ref JsonPatch Patch { get; }
1688 public static ChatFunctionChoice CreateAutoChoice();
1689 public static ChatFunctionChoice CreateNamedChoice(string functionName);
1690 public static ChatFunctionChoice CreateNoneChoice();
1691 }
1692 public readonly partial struct ChatImageDetailLevel : IEquatable<ChatImageDetailLevel> {
1693 public ChatImageDetailLevel(string value);
1694 public static ChatImageDetailLevel Auto { get; }
1695 public static ChatImageDetailLevel High { get; }
1696 public static ChatImageDetailLevel Low { get; }
1697 public readonly bool Equals(ChatImageDetailLevel other);
1698 [EditorBrowsable(EditorBrowsableState.Never)]
1699 public override readonly bool Equals(object obj);
1700 [EditorBrowsable(EditorBrowsableState.Never)]
1701 public override readonly int GetHashCode();
1702 public static bool operator ==(ChatImageDetailLevel left, ChatImageDetailLevel right);
1703 public static implicit operator ChatImageDetailLevel(string value);
1704 public static implicit operator ChatImageDetailLevel?(string value);
1705 public static bool operator !=(ChatImageDetailLevel left, ChatImageDetailLevel right);
1706 public override readonly string ToString();
1707 }
1708 [Experimental("OPENAI001")]
1709 public readonly partial struct ChatInputAudioFormat : IEquatable<ChatInputAudioFormat> {
1710 public ChatInputAudioFormat(string value);
1711 public static ChatInputAudioFormat Mp3 { get; }
1712 public static ChatInputAudioFormat Wav { get; }
1713 public readonly bool Equals(ChatInputAudioFormat other);
1714 [EditorBrowsable(EditorBrowsableState.Never)]
1715 public override readonly bool Equals(object obj);
1716 [EditorBrowsable(EditorBrowsableState.Never)]
1717 public override readonly int GetHashCode();
1718 public static bool operator ==(ChatInputAudioFormat left, ChatInputAudioFormat right);
1719 public static implicit operator ChatInputAudioFormat(string value);
1720 public static implicit operator ChatInputAudioFormat?(string value);
1721 public static bool operator !=(ChatInputAudioFormat left, ChatInputAudioFormat right);
1722 public override readonly string ToString();
1723 }
1724 public class ChatInputTokenUsageDetails : IJsonModel<ChatInputTokenUsageDetails>, IPersistableModel<ChatInputTokenUsageDetails> {
1725 public int AudioTokenCount { get; }
1726 public int CachedTokenCount { get; }
1727 [Serialization.JsonIgnore]
1728 [EditorBrowsable(EditorBrowsableState.Never)]
1729 [Experimental("SCME0001")]
1730 public ref JsonPatch Patch { get; }
1731 }
1732 public class ChatMessage : IJsonModel<ChatMessage>, IPersistableModel<ChatMessage> {
1733 public ChatMessageContent Content { get; }
1734 [Serialization.JsonIgnore]
1735 [EditorBrowsable(EditorBrowsableState.Never)]
1736 [Experimental("SCME0001")]
1737 public ref JsonPatch Patch { get; }
1738 public static AssistantChatMessage CreateAssistantMessage(ChatCompletion chatCompletion);
1739 public static AssistantChatMessage CreateAssistantMessage(ChatFunctionCall functionCall);
1740 public static AssistantChatMessage CreateAssistantMessage(params ChatMessageContentPart[] contentParts);
1741 [Experimental("OPENAI001")]
1742 public static AssistantChatMessage CreateAssistantMessage(ChatOutputAudioReference outputAudioReference);
1743 public static AssistantChatMessage CreateAssistantMessage(IEnumerable<ChatMessageContentPart> contentParts);
1744 public static AssistantChatMessage CreateAssistantMessage(IEnumerable<ChatToolCall> toolCalls);
1745 public static AssistantChatMessage CreateAssistantMessage(string content);
1746 [Experimental("OPENAI001")]
1747 public static DeveloperChatMessage CreateDeveloperMessage(params ChatMessageContentPart[] contentParts);
1748 [Experimental("OPENAI001")]
1749 public static DeveloperChatMessage CreateDeveloperMessage(IEnumerable<ChatMessageContentPart> contentParts);
1750 [Experimental("OPENAI001")]
1751 public static DeveloperChatMessage CreateDeveloperMessage(string content);
1752 [Obsolete("This method is obsolete. Please use CreateToolMessage instead.")]
1753 public static FunctionChatMessage CreateFunctionMessage(string functionName, string content);
1754 public static SystemChatMessage CreateSystemMessage(params ChatMessageContentPart[] contentParts);
1755 public static SystemChatMessage CreateSystemMessage(IEnumerable<ChatMessageContentPart> contentParts);
1756 public static SystemChatMessage CreateSystemMessage(string content);
1757 public static ToolChatMessage CreateToolMessage(string toolCallId, params ChatMessageContentPart[] contentParts);
1758 public static ToolChatMessage CreateToolMessage(string toolCallId, IEnumerable<ChatMessageContentPart> contentParts);
1759 public static ToolChatMessage CreateToolMessage(string toolCallId, string content);
1760 public static UserChatMessage CreateUserMessage(params ChatMessageContentPart[] contentParts);
1761 public static UserChatMessage CreateUserMessage(IEnumerable<ChatMessageContentPart> contentParts);
1762 public static UserChatMessage CreateUserMessage(string content);
1763 public static implicit operator ChatMessage(string content);
1764 }
1765 [Experimental("OPENAI001")]
1766 public class ChatMessageAnnotation : IJsonModel<ChatMessageAnnotation>, IPersistableModel<ChatMessageAnnotation> {
1767 public int EndIndex { get; }
1768 [Serialization.JsonIgnore]
1769 [EditorBrowsable(EditorBrowsableState.Never)]
1770 [Experimental("SCME0001")]
1771 public ref JsonPatch Patch { get; }
1772 public int StartIndex { get; }
1773 public string WebResourceTitle { get; }
1774 public Uri WebResourceUri { get; }
1775 }
1776 public class ChatMessageContent : ObjectModel.Collection<ChatMessageContentPart> {
1777 public ChatMessageContent();
1778 public ChatMessageContent(params ChatMessageContentPart[] contentParts);
1779 public ChatMessageContent(IEnumerable<ChatMessageContentPart> contentParts);
1780 public ChatMessageContent(string content);
1781 }
1782 public class ChatMessageContentPart : IJsonModel<ChatMessageContentPart>, IPersistableModel<ChatMessageContentPart> {
1783 [Experimental("OPENAI001")]
1784 public BinaryData FileBytes { get; }
1785 [Experimental("OPENAI001")]
1786 public string FileBytesMediaType { get; }
1787 [Experimental("OPENAI001")]
1788 public string FileId { get; }
1789 [Experimental("OPENAI001")]
1790 public string Filename { get; }
1791 public BinaryData ImageBytes { get; }
1792 public string ImageBytesMediaType { get; }
1793 public ChatImageDetailLevel? ImageDetailLevel { get; }
1794 public Uri ImageUri { get; }
1795 [Experimental("OPENAI001")]
1796 public BinaryData InputAudioBytes { get; }
1797 [Experimental("OPENAI001")]
1798 public ChatInputAudioFormat? InputAudioFormat { get; }
1799 public ChatMessageContentPartKind Kind { get; }
1800 [Serialization.JsonIgnore]
1801 [EditorBrowsable(EditorBrowsableState.Never)]
1802 [Experimental("SCME0001")]
1803 public ref JsonPatch Patch { get; }
1804 public string Refusal { get; }
1805 public string Text { get; }
1806 [Experimental("OPENAI001")]
1807 public static ChatMessageContentPart CreateFilePart(BinaryData fileBytes, string fileBytesMediaType, string filename);
1808 [Experimental("OPENAI001")]
1809 public static ChatMessageContentPart CreateFilePart(string fileId);
1810 public static ChatMessageContentPart CreateImagePart(BinaryData imageBytes, string imageBytesMediaType, ChatImageDetailLevel? imageDetailLevel = null);
1811 public static ChatMessageContentPart CreateImagePart(Uri imageUri, ChatImageDetailLevel? imageDetailLevel = null);
1812 [Experimental("OPENAI001")]
1813 public static ChatMessageContentPart CreateInputAudioPart(BinaryData inputAudioBytes, ChatInputAudioFormat inputAudioFormat);
1814 public static ChatMessageContentPart CreateRefusalPart(string refusal);
1815 public static ChatMessageContentPart CreateTextPart(string text);
1816 public static implicit operator ChatMessageContentPart(string text);
1817 }
1818 public enum ChatMessageContentPartKind {
1819 Text = 0,
1820 Refusal = 1,
1821 Image = 2,
1822 InputAudio = 3,
1823 File = 4
1824 }
1825 public enum ChatMessageRole {
1826 System = 0,
1827 User = 1,
1828 Assistant = 2,
1829 Tool = 3,
1830 Function = 4,
1831 Developer = 5
1832 }
1833 [Experimental("OPENAI001")]
1834 public class ChatOutputAudio : IJsonModel<ChatOutputAudio>, IPersistableModel<ChatOutputAudio> {
1835 public BinaryData AudioBytes { get; }
1836 public DateTimeOffset ExpiresAt { get; }
1837 public string Id { get; }
1838 [Serialization.JsonIgnore]
1839 [EditorBrowsable(EditorBrowsableState.Never)]
1840 [Experimental("SCME0001")]
1841 public ref JsonPatch Patch { get; }
1842 public string Transcript { get; }
1843 }
1844 [Experimental("OPENAI001")]
1845 public readonly partial struct ChatOutputAudioFormat : IEquatable<ChatOutputAudioFormat> {
1846 public ChatOutputAudioFormat(string value);
1847 public static ChatOutputAudioFormat Aac { get; }
1848 public static ChatOutputAudioFormat Flac { get; }
1849 public static ChatOutputAudioFormat Mp3 { get; }
1850 public static ChatOutputAudioFormat Opus { get; }
1851 public static ChatOutputAudioFormat Pcm16 { get; }
1852 public static ChatOutputAudioFormat Wav { get; }
1853 public readonly bool Equals(ChatOutputAudioFormat other);
1854 [EditorBrowsable(EditorBrowsableState.Never)]
1855 public override readonly bool Equals(object obj);
1856 [EditorBrowsable(EditorBrowsableState.Never)]
1857 public override readonly int GetHashCode();
1858 public static bool operator ==(ChatOutputAudioFormat left, ChatOutputAudioFormat right);
1859 public static implicit operator ChatOutputAudioFormat(string value);
1860 public static implicit operator ChatOutputAudioFormat?(string value);
1861 public static bool operator !=(ChatOutputAudioFormat left, ChatOutputAudioFormat right);
1862 public override readonly string ToString();
1863 }
1864 [Experimental("OPENAI001")]
1865 public class ChatOutputAudioReference : IJsonModel<ChatOutputAudioReference>, IPersistableModel<ChatOutputAudioReference> {
1866 public ChatOutputAudioReference(string id);
1867 public string Id { get; }
1868 [Serialization.JsonIgnore]
1869 [EditorBrowsable(EditorBrowsableState.Never)]
1870 [Experimental("SCME0001")]
1871 public ref JsonPatch Patch { get; }
1872 }
1873 [Experimental("OPENAI001")]
1874 public readonly partial struct ChatOutputAudioVoice : IEquatable<ChatOutputAudioVoice> {
1875 public ChatOutputAudioVoice(string value);
1876 public static ChatOutputAudioVoice Alloy { get; }
1877 public static ChatOutputAudioVoice Ash { get; }
1878 public static ChatOutputAudioVoice Ballad { get; }
1879 public static ChatOutputAudioVoice Coral { get; }
1880 public static ChatOutputAudioVoice Echo { get; }
1881 public static ChatOutputAudioVoice Fable { get; }
1882 public static ChatOutputAudioVoice Nova { get; }
1883 public static ChatOutputAudioVoice Onyx { get; }
1884 public static ChatOutputAudioVoice Sage { get; }
1885 public static ChatOutputAudioVoice Shimmer { get; }
1886 public static ChatOutputAudioVoice Verse { get; }
1887 public readonly bool Equals(ChatOutputAudioVoice other);
1888 [EditorBrowsable(EditorBrowsableState.Never)]
1889 public override readonly bool Equals(object obj);
1890 [EditorBrowsable(EditorBrowsableState.Never)]
1891 public override readonly int GetHashCode();
1892 public static bool operator ==(ChatOutputAudioVoice left, ChatOutputAudioVoice right);
1893 public static implicit operator ChatOutputAudioVoice(string value);
1894 public static implicit operator ChatOutputAudioVoice?(string value);
1895 public static bool operator !=(ChatOutputAudioVoice left, ChatOutputAudioVoice right);
1896 public override readonly string ToString();
1897 }
1898 [Experimental("OPENAI001")]
1899 public class ChatOutputPrediction : IJsonModel<ChatOutputPrediction>, IPersistableModel<ChatOutputPrediction> {
1900 [Serialization.JsonIgnore]
1901 [EditorBrowsable(EditorBrowsableState.Never)]
1902 [Experimental("SCME0001")]
1903 public ref JsonPatch Patch { get; }
1904 public static ChatOutputPrediction CreateStaticContentPrediction(IEnumerable<ChatMessageContentPart> staticContentParts);
1905 public static ChatOutputPrediction CreateStaticContentPrediction(string staticContent);
1906 }
1907 public class ChatOutputTokenUsageDetails : IJsonModel<ChatOutputTokenUsageDetails>, IPersistableModel<ChatOutputTokenUsageDetails> {
1908 [Experimental("OPENAI001")]
1909 public int AcceptedPredictionTokenCount { get; }
1910 public int AudioTokenCount { get; }
1911 [Serialization.JsonIgnore]
1912 [EditorBrowsable(EditorBrowsableState.Never)]
1913 [Experimental("SCME0001")]
1914 public ref JsonPatch Patch { get; }
1915 public int ReasoningTokenCount { get; }
1916 [Experimental("OPENAI001")]
1917 public int RejectedPredictionTokenCount { get; }
1918 }
1919 [Experimental("OPENAI001")]
1920 public readonly partial struct ChatReasoningEffortLevel : IEquatable<ChatReasoningEffortLevel> {
1921 public ChatReasoningEffortLevel(string value);
1922 public static ChatReasoningEffortLevel High { get; }
1923 public static ChatReasoningEffortLevel Low { get; }
1924 public static ChatReasoningEffortLevel Medium { get; }
1925 public static ChatReasoningEffortLevel Minimal { get; }
1926 public static ChatReasoningEffortLevel None { get; }
1927 public readonly bool Equals(ChatReasoningEffortLevel other);
1928 [EditorBrowsable(EditorBrowsableState.Never)]
1929 public override readonly bool Equals(object obj);
1930 [EditorBrowsable(EditorBrowsableState.Never)]
1931 public override readonly int GetHashCode();
1932 public static bool operator ==(ChatReasoningEffortLevel left, ChatReasoningEffortLevel right);
1933 public static implicit operator ChatReasoningEffortLevel(string value);
1934 public static implicit operator ChatReasoningEffortLevel?(string value);
1935 public static bool operator !=(ChatReasoningEffortLevel left, ChatReasoningEffortLevel right);
1936 public override readonly string ToString();
1937 }
1938 public class ChatResponseFormat : IJsonModel<ChatResponseFormat>, IPersistableModel<ChatResponseFormat> {
1939 [Serialization.JsonIgnore]
1940 [EditorBrowsable(EditorBrowsableState.Never)]
1941 [Experimental("SCME0001")]
1942 public ref JsonPatch Patch { get; }
1943 public static ChatResponseFormat CreateJsonObjectFormat();
1944 public static ChatResponseFormat CreateJsonSchemaFormat(string jsonSchemaFormatName, BinaryData jsonSchema, string jsonSchemaFormatDescription = null, bool? jsonSchemaIsStrict = null);
1945 public static ChatResponseFormat CreateTextFormat();
1946 }
1947 [Experimental("OPENAI001")]
1948 [Flags]
1949 public enum ChatResponseModalities {
1950 Default = 0,
1951 Text = 1,
1952 Audio = 2
1953 }
1954 [Experimental("OPENAI001")]
1955 public readonly partial struct ChatServiceTier : IEquatable<ChatServiceTier> {
1956 public ChatServiceTier(string value);
1957 public static ChatServiceTier Auto { get; }
1958 public static ChatServiceTier Default { get; }
1959 public static ChatServiceTier Flex { get; }
1960 public static ChatServiceTier Scale { get; }
1961 public readonly bool Equals(ChatServiceTier other);
1962 [EditorBrowsable(EditorBrowsableState.Never)]
1963 public override readonly bool Equals(object obj);
1964 [EditorBrowsable(EditorBrowsableState.Never)]
1965 public override readonly int GetHashCode();
1966 public static bool operator ==(ChatServiceTier left, ChatServiceTier right);
1967 public static implicit operator ChatServiceTier(string value);
1968 public static implicit operator ChatServiceTier?(string value);
1969 public static bool operator !=(ChatServiceTier left, ChatServiceTier right);
1970 public override readonly string ToString();
1971 }
1972 public class ChatTokenLogProbabilityDetails : IJsonModel<ChatTokenLogProbabilityDetails>, IPersistableModel<ChatTokenLogProbabilityDetails> {
1973 public float LogProbability { get; }
1974 [Serialization.JsonIgnore]
1975 [EditorBrowsable(EditorBrowsableState.Never)]
1976 [Experimental("SCME0001")]
1977 public ref JsonPatch Patch { get; }
1978 public string Token { get; }
1979 public IReadOnlyList<ChatTokenTopLogProbabilityDetails> TopLogProbabilities { get; }
1980 public ReadOnlyMemory<byte>? Utf8Bytes { get; }
1981 }
1982 public class ChatTokenTopLogProbabilityDetails : IJsonModel<ChatTokenTopLogProbabilityDetails>, IPersistableModel<ChatTokenTopLogProbabilityDetails> {
1983 public float LogProbability { get; }
1984 [Serialization.JsonIgnore]
1985 [EditorBrowsable(EditorBrowsableState.Never)]
1986 [Experimental("SCME0001")]
1987 public ref JsonPatch Patch { get; }
1988 public string Token { get; }
1989 public ReadOnlyMemory<byte>? Utf8Bytes { get; }
1990 }
1991 public class ChatTokenUsage : IJsonModel<ChatTokenUsage>, IPersistableModel<ChatTokenUsage> {
1992 public int InputTokenCount { get; }
1993 public ChatInputTokenUsageDetails InputTokenDetails { get; }
1994 public int OutputTokenCount { get; }
1995 public ChatOutputTokenUsageDetails OutputTokenDetails { get; }
1996 [Serialization.JsonIgnore]
1997 [EditorBrowsable(EditorBrowsableState.Never)]
1998 [Experimental("SCME0001")]
1999 public ref JsonPatch Patch { get; }
2000 public int TotalTokenCount { get; }
2001 }
2002 public class ChatTool : IJsonModel<ChatTool>, IPersistableModel<ChatTool> {
2003 public string FunctionDescription { get; }
2004 public string FunctionName { get; }
2005 public BinaryData FunctionParameters { get; }
2006 public bool? FunctionSchemaIsStrict { get; }
2007 public ChatToolKind Kind { get; }
2008 [Serialization.JsonIgnore]
2009 [EditorBrowsable(EditorBrowsableState.Never)]
2010 [Experimental("SCME0001")]
2011 public ref JsonPatch Patch { get; }
2012 public static ChatTool CreateFunctionTool(string functionName, string functionDescription = null, BinaryData functionParameters = null, bool? functionSchemaIsStrict = null);
2013 }
2014 public class ChatToolCall : IJsonModel<ChatToolCall>, IPersistableModel<ChatToolCall> {
2015 public BinaryData FunctionArguments { get; }
2016 public string FunctionName { get; }
2017 public string Id { get; set; }
2018 public ChatToolCallKind Kind { get; }
2019 [Serialization.JsonIgnore]
2020 [EditorBrowsable(EditorBrowsableState.Never)]
2021 [Experimental("SCME0001")]
2022 public ref JsonPatch Patch { get; }
2023 public static ChatToolCall CreateFunctionToolCall(string id, string functionName, BinaryData functionArguments);
2024 }
2025 public enum ChatToolCallKind {
2026 Function = 0
2027 }
2028 public class ChatToolChoice : IJsonModel<ChatToolChoice>, IPersistableModel<ChatToolChoice> {
2029 [Serialization.JsonIgnore]
2030 [EditorBrowsable(EditorBrowsableState.Never)]
2031 [Experimental("SCME0001")]
2032 public ref JsonPatch Patch { get; }
2033 public static ChatToolChoice CreateAutoChoice();
2034 public static ChatToolChoice CreateFunctionChoice(string functionName);
2035 public static ChatToolChoice CreateNoneChoice();
2036 public static ChatToolChoice CreateRequiredChoice();
2037 }
2038 public enum ChatToolKind {
2039 Function = 0
2040 }
2041 [Experimental("OPENAI001")]
2042 public class ChatWebSearchOptions : IJsonModel<ChatWebSearchOptions>, IPersistableModel<ChatWebSearchOptions> {
2043 [Serialization.JsonIgnore]
2044 [EditorBrowsable(EditorBrowsableState.Never)]
2045 [Experimental("SCME0001")]
2046 public ref JsonPatch Patch { get; }
2047 }
2048 [Experimental("OPENAI001")]
2049 public class DeveloperChatMessage : ChatMessage, IJsonModel<DeveloperChatMessage>, IPersistableModel<DeveloperChatMessage> {
2050 public DeveloperChatMessage(params ChatMessageContentPart[] contentParts);
2051 public DeveloperChatMessage(IEnumerable<ChatMessageContentPart> contentParts);
2052 public DeveloperChatMessage(string content);
2053 public string ParticipantName { get; set; }
2054 }
2055 [Obsolete("This class is obsolete. Please use ToolChatMessage instead.")]
2056 public class FunctionChatMessage : ChatMessage, IJsonModel<FunctionChatMessage>, IPersistableModel<FunctionChatMessage> {
2057 public FunctionChatMessage(string functionName, string content);
2058 public string FunctionName { get; }
2059 }
2060 public static class OpenAIChatModelFactory {
2061 [Experimental("OPENAI001")]
2062 public static ChatCompletion ChatCompletion(string id = null, ChatFinishReason finishReason = ChatFinishReason.Stop, ChatMessageContent content = null, string refusal = null, IEnumerable<ChatToolCall> toolCalls = null, ChatMessageRole role = ChatMessageRole.System, ChatFunctionCall functionCall = null, IEnumerable<ChatTokenLogProbabilityDetails> contentTokenLogProbabilities = null, IEnumerable<ChatTokenLogProbabilityDetails> refusalTokenLogProbabilities = null, DateTimeOffset createdAt = default, string model = null, ChatServiceTier? serviceTier = null, string systemFingerprint = null, ChatTokenUsage usage = null, ChatOutputAudio outputAudio = null, IEnumerable<ChatMessageAnnotation> messageAnnotations = null);
2063 [EditorBrowsable(EditorBrowsableState.Never)]
2064 public static ChatCompletion ChatCompletion(string id, ChatFinishReason finishReason, ChatMessageContent content, string refusal, IEnumerable<ChatToolCall> toolCalls, ChatMessageRole role, ChatFunctionCall functionCall, IEnumerable<ChatTokenLogProbabilityDetails> contentTokenLogProbabilities, IEnumerable<ChatTokenLogProbabilityDetails> refusalTokenLogProbabilities, DateTimeOffset createdAt, string model, string systemFingerprint, ChatTokenUsage usage);
2065 [Experimental("OPENAI001")]
2066 public static ChatCompletionMessageListDatum ChatCompletionMessageListDatum(string id, string content, string refusal, ChatMessageRole role, IList<ChatMessageContentPart> contentParts = null, IList<ChatToolCall> toolCalls = null, IList<ChatMessageAnnotation> annotations = null, string functionName = null, string functionArguments = null, ChatOutputAudio outputAudio = null);
2067 public static ChatInputTokenUsageDetails ChatInputTokenUsageDetails(int audioTokenCount = 0, int cachedTokenCount = 0);
2068 [Experimental("OPENAI001")]
2069 public static ChatMessageAnnotation ChatMessageAnnotation(int startIndex = 0, int endIndex = 0, Uri webResourceUri = null, string webResourceTitle = null);
2070 [Experimental("OPENAI001")]
2071 public static ChatOutputAudio ChatOutputAudio(BinaryData audioBytes, string id = null, string transcript = null, DateTimeOffset expiresAt = default);
2072 [Experimental("OPENAI001")]
2073 public static ChatOutputTokenUsageDetails ChatOutputTokenUsageDetails(int reasoningTokenCount = 0, int audioTokenCount = 0, int acceptedPredictionTokenCount = 0, int rejectedPredictionTokenCount = 0);
2074 [EditorBrowsable(EditorBrowsableState.Never)]
2075 public static ChatOutputTokenUsageDetails ChatOutputTokenUsageDetails(int reasoningTokenCount, int audioTokenCount);
2076 [EditorBrowsable(EditorBrowsableState.Never)]
2077 public static ChatOutputTokenUsageDetails ChatOutputTokenUsageDetails(int reasoningTokenCount);
2078 public static ChatTokenLogProbabilityDetails ChatTokenLogProbabilityDetails(string token = null, float logProbability = 0, ReadOnlyMemory<byte>? utf8Bytes = null, IEnumerable<ChatTokenTopLogProbabilityDetails> topLogProbabilities = null);
2079 public static ChatTokenTopLogProbabilityDetails ChatTokenTopLogProbabilityDetails(string token = null, float logProbability = 0, ReadOnlyMemory<byte>? utf8Bytes = null);
2080 public static ChatTokenUsage ChatTokenUsage(int outputTokenCount = 0, int inputTokenCount = 0, int totalTokenCount = 0, ChatOutputTokenUsageDetails outputTokenDetails = null, ChatInputTokenUsageDetails inputTokenDetails = null);
2081 [EditorBrowsable(EditorBrowsableState.Never)]
2082 public static ChatTokenUsage ChatTokenUsage(int outputTokenCount, int inputTokenCount, int totalTokenCount, ChatOutputTokenUsageDetails outputTokenDetails);
2083 [Experimental("OPENAI001")]
2084 public static StreamingChatCompletionUpdate StreamingChatCompletionUpdate(string completionId = null, ChatMessageContent contentUpdate = null, StreamingChatFunctionCallUpdate functionCallUpdate = null, IEnumerable<StreamingChatToolCallUpdate> toolCallUpdates = null, ChatMessageRole? role = null, string refusalUpdate = null, IEnumerable<ChatTokenLogProbabilityDetails> contentTokenLogProbabilities = null, IEnumerable<ChatTokenLogProbabilityDetails> refusalTokenLogProbabilities = null, ChatFinishReason? finishReason = null, DateTimeOffset createdAt = default, string model = null, ChatServiceTier? serviceTier = null, string systemFingerprint = null, ChatTokenUsage usage = null, StreamingChatOutputAudioUpdate outputAudioUpdate = null);
2085 [EditorBrowsable(EditorBrowsableState.Never)]
2086 public static StreamingChatCompletionUpdate StreamingChatCompletionUpdate(string completionId, ChatMessageContent contentUpdate, StreamingChatFunctionCallUpdate functionCallUpdate, IEnumerable<StreamingChatToolCallUpdate> toolCallUpdates, ChatMessageRole? role, string refusalUpdate, IEnumerable<ChatTokenLogProbabilityDetails> contentTokenLogProbabilities, IEnumerable<ChatTokenLogProbabilityDetails> refusalTokenLogProbabilities, ChatFinishReason? finishReason, DateTimeOffset createdAt, string model, string systemFingerprint, ChatTokenUsage usage);
2087 [Obsolete("This class is obsolete. Please use StreamingChatToolCallUpdate instead.")]
2088 public static StreamingChatFunctionCallUpdate StreamingChatFunctionCallUpdate(string functionName = null, BinaryData functionArgumentsUpdate = null);
2089 [Experimental("OPENAI001")]
2090 public static StreamingChatOutputAudioUpdate StreamingChatOutputAudioUpdate(string id = null, DateTimeOffset? expiresAt = null, string transcriptUpdate = null, BinaryData audioBytesUpdate = null);
2091 public static StreamingChatToolCallUpdate StreamingChatToolCallUpdate(int index = 0, string toolCallId = null, ChatToolCallKind kind = ChatToolCallKind.Function, string functionName = null, BinaryData functionArgumentsUpdate = null);
2092 }
2093 public class StreamingChatCompletionUpdate : IJsonModel<StreamingChatCompletionUpdate>, IPersistableModel<StreamingChatCompletionUpdate> {
2094 public string CompletionId { get; }
2095 public IReadOnlyList<ChatTokenLogProbabilityDetails> ContentTokenLogProbabilities { get; }
2096 public ChatMessageContent ContentUpdate { get; }
2097 public DateTimeOffset CreatedAt { get; }
2098 public ChatFinishReason? FinishReason { get; }
2099 [Obsolete("This property is obsolete. Please use ToolCallUpdates instead.")]
2100 public StreamingChatFunctionCallUpdate FunctionCallUpdate { get; }
2101 public string Model { get; }
2102 [Experimental("OPENAI001")]
2103 public StreamingChatOutputAudioUpdate OutputAudioUpdate { get; }
2104 [Serialization.JsonIgnore]
2105 [EditorBrowsable(EditorBrowsableState.Never)]
2106 [Experimental("SCME0001")]
2107 public ref JsonPatch Patch { get; }
2108 public IReadOnlyList<ChatTokenLogProbabilityDetails> RefusalTokenLogProbabilities { get; }
2109 public string RefusalUpdate { get; }
2110 public ChatMessageRole? Role { get; }
2111 [Experimental("OPENAI001")]
2112 public ChatServiceTier? ServiceTier { get; }
2113 public string SystemFingerprint { get; }
2114 public IReadOnlyList<StreamingChatToolCallUpdate> ToolCallUpdates { get; }
2115 public ChatTokenUsage Usage { get; }
2116 }
2117 [Obsolete("This class is obsolete. Please use StreamingChatToolCallUpdate instead.")]
2118 public class StreamingChatFunctionCallUpdate : IJsonModel<StreamingChatFunctionCallUpdate>, IPersistableModel<StreamingChatFunctionCallUpdate> {
2119 public BinaryData FunctionArgumentsUpdate { get; }
2120 public string FunctionName { get; }
2121 [Serialization.JsonIgnore]
2122 [EditorBrowsable(EditorBrowsableState.Never)]
2123 [Experimental("SCME0001")]
2124 public ref JsonPatch Patch { get; }
2125 }
2126 [Experimental("OPENAI001")]
2127 public class StreamingChatOutputAudioUpdate : IJsonModel<StreamingChatOutputAudioUpdate>, IPersistableModel<StreamingChatOutputAudioUpdate> {
2128 public BinaryData AudioBytesUpdate { get; }
2129 public DateTimeOffset? ExpiresAt { get; }
2130 public string Id { get; }
2131 [Serialization.JsonIgnore]
2132 [EditorBrowsable(EditorBrowsableState.Never)]
2133 [Experimental("SCME0001")]
2134 public ref JsonPatch Patch { get; }
2135 public string TranscriptUpdate { get; }
2136 }
2137 public class StreamingChatToolCallUpdate : IJsonModel<StreamingChatToolCallUpdate>, IPersistableModel<StreamingChatToolCallUpdate> {
2138 public BinaryData FunctionArgumentsUpdate { get; }
2139 public string FunctionName { get; }
2140 public int Index { get; }
2141 public ChatToolCallKind Kind { get; }
2142 [Serialization.JsonIgnore]
2143 [EditorBrowsable(EditorBrowsableState.Never)]
2144 [Experimental("SCME0001")]
2145 public ref JsonPatch Patch { get; }
2146 public string ToolCallId { get; }
2147 }
2148 public class SystemChatMessage : ChatMessage, IJsonModel<SystemChatMessage>, IPersistableModel<SystemChatMessage> {
2149 public SystemChatMessage(params ChatMessageContentPart[] contentParts);
2150 public SystemChatMessage(IEnumerable<ChatMessageContentPart> contentParts);
2151 public SystemChatMessage(string content);
2152 public string ParticipantName { get; set; }
2153 }
2154 public class ToolChatMessage : ChatMessage, IJsonModel<ToolChatMessage>, IPersistableModel<ToolChatMessage> {
2155 public ToolChatMessage(string toolCallId, params ChatMessageContentPart[] contentParts);
2156 public ToolChatMessage(string toolCallId, IEnumerable<ChatMessageContentPart> contentParts);
2157 public ToolChatMessage(string toolCallId, string content);
2158 public string ToolCallId { get; }
2159 }
2160 public class UserChatMessage : ChatMessage, IJsonModel<UserChatMessage>, IPersistableModel<UserChatMessage> {
2161 public UserChatMessage(params ChatMessageContentPart[] contentParts);
2162 public UserChatMessage(IEnumerable<ChatMessageContentPart> contentParts);
2163 public UserChatMessage(string content);
2164 public string ParticipantName { get; set; }
2165 }
2166}
2167namespace OpenAI.Containers {
2168 [Experimental("OPENAI001")]
2169 public class ContainerClient {
2170 protected ContainerClient();
2171 [Experimental("SCME0002")]
2172 public ContainerClient(ContainerClientSettings settings);
2173 public ContainerClient(ApiKeyCredential credential, OpenAIClientOptions options);
2174 public ContainerClient(ApiKeyCredential credential);
2175 public ContainerClient(AuthenticationPolicy authenticationPolicy, OpenAIClientOptions options);
2176 public ContainerClient(AuthenticationPolicy authenticationPolicy);
2177 protected internal ContainerClient(ClientPipeline pipeline, OpenAIClientOptions options);
2178 public ContainerClient(string apiKey);
2179 [Experimental("OPENAI001")]
2180 public Uri Endpoint { get; }
2181 public ClientPipeline Pipeline { get; }
2182 public virtual ClientResult<ContainerResource> CreateContainer(CreateContainerBody body, CancellationToken cancellationToken = default);
2183 public virtual ClientResult CreateContainer(BinaryContent content, RequestOptions options = null);
2184 public virtual Task<ClientResult<ContainerResource>> CreateContainerAsync(CreateContainerBody body, CancellationToken cancellationToken = default);
2185 public virtual Task<ClientResult> CreateContainerAsync(BinaryContent content, RequestOptions options = null);
2186 public virtual ClientResult CreateContainerFile(string containerId, BinaryContent content, string contentType, RequestOptions options = null);
2187 public virtual Task<ClientResult> CreateContainerFileAsync(string containerId, BinaryContent content, string contentType, RequestOptions options = null);
2188 public virtual ClientResult DeleteContainer(string containerId, RequestOptions options);
2189 public virtual ClientResult<DeleteContainerResponse> DeleteContainer(string containerId, CancellationToken cancellationToken = default);
2190 public virtual Task<ClientResult> DeleteContainerAsync(string containerId, RequestOptions options);
2191 public virtual Task<ClientResult<DeleteContainerResponse>> DeleteContainerAsync(string containerId, CancellationToken cancellationToken = default);
2192 public virtual ClientResult DeleteContainerFile(string containerId, string fileId, RequestOptions options);
2193 public virtual ClientResult<DeleteContainerFileResponse> DeleteContainerFile(string containerId, string fileId, CancellationToken cancellationToken = default);
2194 public virtual Task<ClientResult> DeleteContainerFileAsync(string containerId, string fileId, RequestOptions options);
2195 public virtual Task<ClientResult<DeleteContainerFileResponse>> DeleteContainerFileAsync(string containerId, string fileId, CancellationToken cancellationToken = default);
2196 public virtual ClientResult DownloadContainerFile(string containerId, string fileId, RequestOptions options);
2197 public virtual ClientResult<BinaryData> DownloadContainerFile(string containerId, string fileId, CancellationToken cancellationToken = default);
2198 public virtual Task<ClientResult> DownloadContainerFileAsync(string containerId, string fileId, RequestOptions options);
2199 public virtual Task<ClientResult<BinaryData>> DownloadContainerFileAsync(string containerId, string fileId, CancellationToken cancellationToken = default);
2200 public virtual ClientResult GetContainer(string containerId, RequestOptions options);
2201 public virtual ClientResult<ContainerResource> GetContainer(string containerId, CancellationToken cancellationToken = default);
2202 public virtual Task<ClientResult> GetContainerAsync(string containerId, RequestOptions options);
2203 public virtual Task<ClientResult<ContainerResource>> GetContainerAsync(string containerId, CancellationToken cancellationToken = default);
2204 public virtual ClientResult GetContainerFile(string containerId, string fileId, RequestOptions options);
2205 public virtual ClientResult<ContainerFileResource> GetContainerFile(string containerId, string fileId, CancellationToken cancellationToken = default);
2206 public virtual Task<ClientResult> GetContainerFileAsync(string containerId, string fileId, RequestOptions options);
2207 public virtual Task<ClientResult<ContainerFileResource>> GetContainerFileAsync(string containerId, string fileId, CancellationToken cancellationToken = default);
2208 public virtual CollectionResult<ContainerFileResource> GetContainerFiles(string containerId, ContainerFileCollectionOptions options = null, CancellationToken cancellationToken = default);
2209 public virtual CollectionResult GetContainerFiles(string containerId, int? limit, string order, string after, RequestOptions options);
2210 public virtual AsyncCollectionResult<ContainerFileResource> GetContainerFilesAsync(string containerId, ContainerFileCollectionOptions options = null, CancellationToken cancellationToken = default);
2211 public virtual AsyncCollectionResult GetContainerFilesAsync(string containerId, int? limit, string order, string after, RequestOptions options);
2212 public virtual CollectionResult<ContainerResource> GetContainers(ContainerCollectionOptions options = null, CancellationToken cancellationToken = default);
2213 public virtual CollectionResult GetContainers(int? limit, string order, string after, RequestOptions options);
2214 public virtual AsyncCollectionResult<ContainerResource> GetContainersAsync(ContainerCollectionOptions options = null, CancellationToken cancellationToken = default);
2215 public virtual AsyncCollectionResult GetContainersAsync(int? limit, string order, string after, RequestOptions options);
2216 }
2217 [Experimental("SCME0002")]
2218 public sealed class ContainerClientSettings : ClientSettings {
2219 public OpenAIClientOptions Options { get; set; }
2220 protected override void BindCore(Microsoft.Extensions.Configuration.IConfigurationSection section);
2221 }
2222 [Experimental("OPENAI001")]
2223 public class ContainerCollectionOptions : IJsonModel<ContainerCollectionOptions>, IPersistableModel<ContainerCollectionOptions> {
2224 public string AfterId { get; set; }
2225 public ContainerCollectionOrder? Order { get; set; }
2226 public int? PageSizeLimit { get; set; }
2227 }
2228 [Experimental("OPENAI001")]
2229 public readonly partial struct ContainerCollectionOrder : IEquatable<ContainerCollectionOrder> {
2230 public ContainerCollectionOrder(string value);
2231 public static ContainerCollectionOrder Ascending { get; }
2232 public static ContainerCollectionOrder Descending { get; }
2233 public readonly bool Equals(ContainerCollectionOrder other);
2234 [EditorBrowsable(EditorBrowsableState.Never)]
2235 public override readonly bool Equals(object obj);
2236 [EditorBrowsable(EditorBrowsableState.Never)]
2237 public override readonly int GetHashCode();
2238 public static bool operator ==(ContainerCollectionOrder left, ContainerCollectionOrder right);
2239 public static implicit operator ContainerCollectionOrder(string value);
2240 public static implicit operator ContainerCollectionOrder?(string value);
2241 public static bool operator !=(ContainerCollectionOrder left, ContainerCollectionOrder right);
2242 public override readonly string ToString();
2243 }
2244 [Experimental("OPENAI001")]
2245 public class ContainerFileCollectionOptions : IJsonModel<ContainerFileCollectionOptions>, IPersistableModel<ContainerFileCollectionOptions> {
2246 public string AfterId { get; set; }
2247 public ContainerCollectionOrder? Order { get; set; }
2248 public int? PageSizeLimit { get; set; }
2249 }
2250 [Experimental("OPENAI001")]
2251 public class ContainerFileResource : IJsonModel<ContainerFileResource>, IPersistableModel<ContainerFileResource> {
2252 public string ContainerId { get; }
2253 public DateTimeOffset CreatedAt { get; }
2254 public string Id { get; }
2255 public string Object { get; }
2256 public string Path { get; }
2257 public long? SizeInBytes { get; }
2258 public string Source { get; }
2259 public static explicit operator ContainerFileResource(ClientResult result);
2260 }
2261 [Experimental("OPENAI001")]
2262 public class ContainerResource : IJsonModel<ContainerResource>, IPersistableModel<ContainerResource> {
2263 public DateTimeOffset CreatedAt { get; }
2264 public ContainerResourceExpiresAfter ExpiresAfter { get; }
2265 public string Id { get; }
2266 public string Name { get; }
2267 public string Object { get; }
2268 public string Status { get; }
2269 public static explicit operator ContainerResource(ClientResult result);
2270 }
2271 [Experimental("OPENAI001")]
2272 public class ContainerResourceExpiresAfter : IJsonModel<ContainerResourceExpiresAfter>, IPersistableModel<ContainerResourceExpiresAfter> {
2273 public string Anchor { get; }
2274 public int? Minutes { get; }
2275 }
2276 [Experimental("OPENAI001")]
2277 public class CreateContainerBody : IJsonModel<CreateContainerBody>, IPersistableModel<CreateContainerBody> {
2278 public CreateContainerBody(string name);
2279 public CreateContainerBodyExpiresAfter ExpiresAfter { get; set; }
2280 public IList<string> FileIds { get; }
2281 public string Name { get; }
2282 public static implicit operator BinaryContent(CreateContainerBody createContainerBody);
2283 }
2284 [Experimental("OPENAI001")]
2285 public class CreateContainerBodyExpiresAfter : IJsonModel<CreateContainerBodyExpiresAfter>, IPersistableModel<CreateContainerBodyExpiresAfter> {
2286 public CreateContainerBodyExpiresAfter(int minutes);
2287 public string Anchor { get; }
2288 public int Minutes { get; }
2289 }
2290 [Experimental("OPENAI001")]
2291 public class CreateContainerFileBody : IJsonModel<CreateContainerFileBody>, IPersistableModel<CreateContainerFileBody> {
2292 public BinaryData File { get; set; }
2293 public string FileId { get; set; }
2294 }
2295 [Experimental("OPENAI001")]
2296 public class DeleteContainerFileResponse : IJsonModel<DeleteContainerFileResponse>, IPersistableModel<DeleteContainerFileResponse> {
2297 public bool Deleted { get; }
2298 public string Id { get; }
2299 public string Object { get; }
2300 public static explicit operator DeleteContainerFileResponse(ClientResult result);
2301 }
2302 [Experimental("OPENAI001")]
2303 public class DeleteContainerResponse : IJsonModel<DeleteContainerResponse>, IPersistableModel<DeleteContainerResponse> {
2304 public bool Deleted { get; }
2305 public string Id { get; }
2306 public string Object { get; }
2307 public static explicit operator DeleteContainerResponse(ClientResult result);
2308 }
2309}
2310namespace OpenAI.Conversations {
2311 [Experimental("OPENAI001")]
2312 public class ConversationClient {
2313 protected ConversationClient();
2314 [Experimental("SCME0002")]
2315 public ConversationClient(ConversationClientSettings settings);
2316 public ConversationClient(ApiKeyCredential credential, OpenAIClientOptions options);
2317 public ConversationClient(ApiKeyCredential credential);
2318 public ConversationClient(AuthenticationPolicy authenticationPolicy, OpenAIClientOptions options);
2319 public ConversationClient(AuthenticationPolicy authenticationPolicy);
2320 protected internal ConversationClient(ClientPipeline pipeline, OpenAIClientOptions options);
2321 public ConversationClient(string apiKey);
2322 [Experimental("OPENAI001")]
2323 public Uri Endpoint { get; }
2324 public ClientPipeline Pipeline { get; }
2325 public virtual ClientResult CreateConversation(BinaryContent content, RequestOptions options = null);
2326 public virtual Task<ClientResult> CreateConversationAsync(BinaryContent content, RequestOptions options = null);
2327 public virtual ClientResult CreateConversationItems(string conversationId, BinaryContent content, IEnumerable<IncludedConversationItemProperty> include = null, RequestOptions options = null);
2328 public virtual Task<ClientResult> CreateConversationItemsAsync(string conversationId, BinaryContent content, IEnumerable<IncludedConversationItemProperty> include = null, RequestOptions options = null);
2329 public virtual ClientResult DeleteConversation(string conversationId, RequestOptions options = null);
2330 public virtual Task<ClientResult> DeleteConversationAsync(string conversationId, RequestOptions options = null);
2331 public virtual ClientResult DeleteConversationItem(string conversationId, string itemId, RequestOptions options = null);
2332 public virtual Task<ClientResult> DeleteConversationItemAsync(string conversationId, string itemId, RequestOptions options = null);
2333 public virtual ClientResult GetConversation(string conversationId, RequestOptions options = null);
2334 public virtual Task<ClientResult> GetConversationAsync(string conversationId, RequestOptions options = null);
2335 public virtual ClientResult GetConversationItem(string conversationId, string itemId, IEnumerable<IncludedConversationItemProperty> include = null, RequestOptions options = null);
2336 public virtual Task<ClientResult> GetConversationItemAsync(string conversationId, string itemId, IEnumerable<IncludedConversationItemProperty> include = null, RequestOptions options = null);
2337 public virtual CollectionResult GetConversationItems(string conversationId, int? limit = null, string order = null, string after = null, IEnumerable<IncludedConversationItemProperty> include = null, RequestOptions options = null);
2338 public virtual AsyncCollectionResult GetConversationItemsAsync(string conversationId, int? limit = null, string order = null, string after = null, IEnumerable<IncludedConversationItemProperty> include = null, RequestOptions options = null);
2339 public virtual ClientResult UpdateConversation(string conversationId, BinaryContent content, RequestOptions options = null);
2340 public virtual Task<ClientResult> UpdateConversationAsync(string conversationId, BinaryContent content, RequestOptions options = null);
2341 }
2342 [Experimental("SCME0002")]
2343 public sealed class ConversationClientSettings : ClientSettings {
2344 public OpenAIClientOptions Options { get; set; }
2345 protected override void BindCore(Microsoft.Extensions.Configuration.IConfigurationSection section);
2346 }
2347 [Experimental("OPENAI001")]
2348 public readonly partial struct IncludedConversationItemProperty : IEquatable<IncludedConversationItemProperty> {
2349 public IncludedConversationItemProperty(string value);
2350 public static IncludedConversationItemProperty CodeInterpreterCallOutputs { get; }
2351 public static IncludedConversationItemProperty ComputerCallOutputImageUri { get; }
2352 public static IncludedConversationItemProperty FileSearchCallResults { get; }
2353 public static IncludedConversationItemProperty MessageInputImageUri { get; }
2354 public static IncludedConversationItemProperty MessageOutputTextLogProbabilities { get; }
2355 public static IncludedConversationItemProperty ReasoningEncryptedContent { get; }
2356 public static IncludedConversationItemProperty WebSearchCallActionSources { get; }
2357 public static IncludedConversationItemProperty WebSearchCallResults { get; }
2358 public readonly bool Equals(IncludedConversationItemProperty other);
2359 [EditorBrowsable(EditorBrowsableState.Never)]
2360 public override readonly bool Equals(object obj);
2361 [EditorBrowsable(EditorBrowsableState.Never)]
2362 public override readonly int GetHashCode();
2363 public static bool operator ==(IncludedConversationItemProperty left, IncludedConversationItemProperty right);
2364 public static implicit operator IncludedConversationItemProperty(string value);
2365 public static implicit operator IncludedConversationItemProperty?(string value);
2366 public static bool operator !=(IncludedConversationItemProperty left, IncludedConversationItemProperty right);
2367 public override readonly string ToString();
2368 }
2369}
2370namespace OpenAI.Embeddings {
2371 public class EmbeddingClient {
2372 protected EmbeddingClient();
2373 [Experimental("SCME0002")]
2374 public EmbeddingClient(EmbeddingClientSettings settings);
2375 protected internal EmbeddingClient(ClientPipeline pipeline, string model, OpenAIClientOptions options);
2376 public EmbeddingClient(string model, ApiKeyCredential credential, OpenAIClientOptions options);
2377 public EmbeddingClient(string model, ApiKeyCredential credential);
2378 [Experimental("OPENAI001")]
2379 public EmbeddingClient(string model, AuthenticationPolicy authenticationPolicy, OpenAIClientOptions options);
2380 [Experimental("OPENAI001")]
2381 public EmbeddingClient(string model, AuthenticationPolicy authenticationPolicy);
2382 public EmbeddingClient(string model, string apiKey);
2383 [Experimental("OPENAI001")]
2384 public Uri Endpoint { get; }
2385 [Experimental("OPENAI001")]
2386 public string Model { get; }
2387 public ClientPipeline Pipeline { get; }
2388 public virtual ClientResult<OpenAIEmbedding> GenerateEmbedding(string input, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = default);
2389 public virtual Task<ClientResult<OpenAIEmbedding>> GenerateEmbeddingAsync(string input, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = default);
2390 public virtual ClientResult GenerateEmbeddings(BinaryContent content, RequestOptions options = null);
2391 public virtual ClientResult<OpenAIEmbeddingCollection> GenerateEmbeddings(IEnumerable<ReadOnlyMemory<int>> inputs, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = default);
2392 public virtual ClientResult<OpenAIEmbeddingCollection> GenerateEmbeddings(IEnumerable<string> inputs, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = default);
2393 public virtual Task<ClientResult> GenerateEmbeddingsAsync(BinaryContent content, RequestOptions options = null);
2394 public virtual Task<ClientResult<OpenAIEmbeddingCollection>> GenerateEmbeddingsAsync(IEnumerable<ReadOnlyMemory<int>> inputs, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = default);
2395 public virtual Task<ClientResult<OpenAIEmbeddingCollection>> GenerateEmbeddingsAsync(IEnumerable<string> inputs, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = default);
2396 }
2397 [Experimental("SCME0002")]
2398 public sealed class EmbeddingClientSettings : ClientSettings {
2399 public string Model { get; set; }
2400 public OpenAIClientOptions Options { get; set; }
2401 protected override void BindCore(Microsoft.Extensions.Configuration.IConfigurationSection section);
2402 }
2403 public class EmbeddingGenerationOptions : IJsonModel<EmbeddingGenerationOptions>, IPersistableModel<EmbeddingGenerationOptions> {
2404 public int? Dimensions { get; set; }
2405 public string EndUserId { get; set; }
2406 [Serialization.JsonIgnore]
2407 [EditorBrowsable(EditorBrowsableState.Never)]
2408 [Experimental("SCME0001")]
2409 public ref JsonPatch Patch { get; }
2410 }
2411 public class EmbeddingTokenUsage : IJsonModel<EmbeddingTokenUsage>, IPersistableModel<EmbeddingTokenUsage> {
2412 public int InputTokenCount { get; }
2413 [Serialization.JsonIgnore]
2414 [EditorBrowsable(EditorBrowsableState.Never)]
2415 [Experimental("SCME0001")]
2416 public ref JsonPatch Patch { get; }
2417 public int TotalTokenCount { get; }
2418 }
2419 public class OpenAIEmbedding : IJsonModel<OpenAIEmbedding>, IPersistableModel<OpenAIEmbedding> {
2420 public int Index { get; }
2421 [Serialization.JsonIgnore]
2422 [EditorBrowsable(EditorBrowsableState.Never)]
2423 [Experimental("SCME0001")]
2424 public ref JsonPatch Patch { get; }
2425 public ReadOnlyMemory<float> ToFloats();
2426 }
2427 public class OpenAIEmbeddingCollection : ObjectModel.ReadOnlyCollection<OpenAIEmbedding>, IJsonModel<OpenAIEmbeddingCollection>, IPersistableModel<OpenAIEmbeddingCollection> {
2428 public string Model { get; }
2429 [Serialization.JsonIgnore]
2430 [EditorBrowsable(EditorBrowsableState.Never)]
2431 [Experimental("SCME0001")]
2432 public ref JsonPatch Patch { get; }
2433 public EmbeddingTokenUsage Usage { get; }
2434 [Experimental("OPENAI001")]
2435 public static explicit operator OpenAIEmbeddingCollection(ClientResult result);
2436 }
2437 public static class OpenAIEmbeddingsModelFactory {
2438 public static EmbeddingTokenUsage EmbeddingTokenUsage(int inputTokenCount = 0, int totalTokenCount = 0);
2439 public static OpenAIEmbedding OpenAIEmbedding(int index = 0, IEnumerable<float> vector = null);
2440 public static OpenAIEmbeddingCollection OpenAIEmbeddingCollection(IEnumerable<OpenAIEmbedding> items = null, string model = null, EmbeddingTokenUsage usage = null);
2441 }
2442}
2443namespace OpenAI.Evals {
2444 [Experimental("OPENAI001")]
2445 public class EvaluationClient {
2446 protected EvaluationClient();
2447 [Experimental("SCME0002")]
2448 public EvaluationClient(EvaluationClientSettings settings);
2449 public EvaluationClient(ApiKeyCredential credential, OpenAIClientOptions options);
2450 public EvaluationClient(ApiKeyCredential credential);
2451 public EvaluationClient(AuthenticationPolicy authenticationPolicy, OpenAIClientOptions options);
2452 public EvaluationClient(AuthenticationPolicy authenticationPolicy);
2453 protected internal EvaluationClient(ClientPipeline pipeline, OpenAIClientOptions options);
2454 public EvaluationClient(string apiKey);
2455 [Experimental("OPENAI001")]
2456 public Uri Endpoint { get; }
2457 public ClientPipeline Pipeline { get; }
2458 public virtual ClientResult CancelEvaluationRun(string evaluationId, string evaluationRunId, RequestOptions options);
2459 public virtual Task<ClientResult> CancelEvaluationRunAsync(string evaluationId, string evaluationRunId, RequestOptions options);
2460 public virtual ClientResult CreateEvaluation(BinaryContent content, RequestOptions options = null);
2461 public virtual Task<ClientResult> CreateEvaluationAsync(BinaryContent content, RequestOptions options = null);
2462 public virtual ClientResult CreateEvaluationRun(string evaluationId, BinaryContent content, RequestOptions options = null);
2463 public virtual Task<ClientResult> CreateEvaluationRunAsync(string evaluationId, BinaryContent content, RequestOptions options = null);
2464 public virtual ClientResult DeleteEvaluation(string evaluationId, RequestOptions options);
2465 public virtual Task<ClientResult> DeleteEvaluationAsync(string evaluationId, RequestOptions options);
2466 public virtual ClientResult DeleteEvaluationRun(string evaluationId, string evaluationRunId, RequestOptions options);
2467 public virtual Task<ClientResult> DeleteEvaluationRunAsync(string evaluationId, string evaluationRunId, RequestOptions options);
2468 public virtual ClientResult GetEvaluation(string evaluationId, RequestOptions options);
2469 public virtual Task<ClientResult> GetEvaluationAsync(string evaluationId, RequestOptions options);
2470 public virtual ClientResult GetEvaluationRun(string evaluationId, string evaluationRunId, RequestOptions options);
2471 public virtual Task<ClientResult> GetEvaluationRunAsync(string evaluationId, string evaluationRunId, RequestOptions options);
2472 public virtual ClientResult GetEvaluationRunOutputItem(string evaluationId, string evaluationRunId, string outputItemId, RequestOptions options);
2473 public virtual Task<ClientResult> GetEvaluationRunOutputItemAsync(string evaluationId, string evaluationRunId, string outputItemId, RequestOptions options);
2474 public virtual ClientResult GetEvaluationRunOutputItems(string evaluationId, string evaluationRunId, int? limit, string order, string after, string outputItemStatus, RequestOptions options);
2475 public virtual Task<ClientResult> GetEvaluationRunOutputItemsAsync(string evaluationId, string evaluationRunId, int? limit, string order, string after, string outputItemStatus, RequestOptions options);
2476 public virtual ClientResult GetEvaluationRuns(string evaluationId, int? limit, string order, string after, string evaluationRunStatus, RequestOptions options);
2477 public virtual Task<ClientResult> GetEvaluationRunsAsync(string evaluationId, int? limit, string order, string after, string evaluationRunStatus, RequestOptions options);
2478 public virtual ClientResult GetEvaluations(int? limit, string orderBy, string order, string after, RequestOptions options);
2479 public virtual Task<ClientResult> GetEvaluationsAsync(int? limit, string orderBy, string order, string after, RequestOptions options);
2480 public virtual ClientResult UpdateEvaluation(string evaluationId, BinaryContent content, RequestOptions options = null);
2481 public virtual Task<ClientResult> UpdateEvaluationAsync(string evaluationId, BinaryContent content, RequestOptions options = null);
2482 }
2483 [Experimental("SCME0002")]
2484 public sealed class EvaluationClientSettings : ClientSettings {
2485 public OpenAIClientOptions Options { get; set; }
2486 protected override void BindCore(Microsoft.Extensions.Configuration.IConfigurationSection section);
2487 }
2488}
2489namespace OpenAI.Files {
2490 public class FileDeletionResult : IJsonModel<FileDeletionResult>, IPersistableModel<FileDeletionResult> {
2491 public bool Deleted { get; }
2492 public string FileId { get; }
2493 [Experimental("OPENAI001")]
2494 public static explicit operator FileDeletionResult(ClientResult result);
2495 }
2496 public enum FilePurpose {
2497 Assistants = 0,
2498 AssistantsOutput = 1,
2499 Batch = 2,
2500 BatchOutput = 3,
2501 FineTune = 4,
2502 FineTuneResults = 5,
2503 Vision = 6,
2504 UserData = 7,
2505 Evaluations = 8
2506 }
2507 [Obsolete("This struct is obsolete. If this is a fine-tuning training file, it may take some time to process after it has been uploaded. While the file is processing, you can still create a fine-tuning job but it will not start until the file processing has completed.")]
2508 public enum FileStatus {
2509 Uploaded = 0,
2510 Processed = 1,
2511 Error = 2
2512 }
2513 public readonly partial struct FileUploadPurpose : IEquatable<FileUploadPurpose> {
2514 public FileUploadPurpose(string value);
2515 public static FileUploadPurpose Assistants { get; }
2516 public static FileUploadPurpose Batch { get; }
2517 [Experimental("OPENAI001")]
2518 public static FileUploadPurpose Evaluations { get; }
2519 public static FileUploadPurpose FineTune { get; }
2520 [Experimental("OPENAI001")]
2521 public static FileUploadPurpose UserData { get; }
2522 public static FileUploadPurpose Vision { get; }
2523 public readonly bool Equals(FileUploadPurpose other);
2524 [EditorBrowsable(EditorBrowsableState.Never)]
2525 public override readonly bool Equals(object obj);
2526 [EditorBrowsable(EditorBrowsableState.Never)]
2527 public override readonly int GetHashCode();
2528 public static bool operator ==(FileUploadPurpose left, FileUploadPurpose right);
2529 public static implicit operator FileUploadPurpose(string value);
2530 public static implicit operator FileUploadPurpose?(string value);
2531 public static bool operator !=(FileUploadPurpose left, FileUploadPurpose right);
2532 public override readonly string ToString();
2533 }
2534 public class OpenAIFile : IJsonModel<OpenAIFile>, IPersistableModel<OpenAIFile> {
2535 public DateTimeOffset CreatedAt { get; }
2536 [Experimental("OPENAI001")]
2537 public DateTimeOffset? ExpiresAt { get; }
2538 public string Filename { get; }
2539 public string Id { get; }
2540 public FilePurpose Purpose { get; }
2541 [EditorBrowsable(EditorBrowsableState.Never)]
2542 public int? SizeInBytes { get; }
2543 [Experimental("OPENAI001")]
2544 public long? SizeInBytesLong { get; }
2545 [Obsolete("This property is obsolete. If this is a fine-tuning training file, it may take some time to process after it has been uploaded. While the file is processing, you can still create a fine-tuning job but it will not start until the file processing has completed.")]
2546 public FileStatus Status { get; }
2547 [Obsolete("This property is obsolete. For details on why a fine-tuning training file failed validation, see the `error` field on the fine-tuning job.")]
2548 public string StatusDetails { get; }
2549 [Experimental("OPENAI001")]
2550 public static explicit operator OpenAIFile(ClientResult result);
2551 }
2552 public class OpenAIFileClient {
2553 protected OpenAIFileClient();
2554 [Experimental("SCME0002")]
2555 public OpenAIFileClient(OpenAIFileClientSettings settings);
2556 public OpenAIFileClient(ApiKeyCredential credential, OpenAIClientOptions options);
2557 public OpenAIFileClient(ApiKeyCredential credential);
2558 [Experimental("OPENAI001")]
2559 public OpenAIFileClient(AuthenticationPolicy authenticationPolicy, OpenAIClientOptions options);
2560 [Experimental("OPENAI001")]
2561 public OpenAIFileClient(AuthenticationPolicy authenticationPolicy);
2562 protected internal OpenAIFileClient(ClientPipeline pipeline, OpenAIClientOptions options);
2563 public OpenAIFileClient(string apiKey);
2564 [Experimental("OPENAI001")]
2565 public Uri Endpoint { get; }
2566 public ClientPipeline Pipeline { get; }
2567 [Experimental("OPENAI001")]
2568 public virtual ClientResult AddUploadPart(string uploadId, BinaryContent content, string contentType, RequestOptions options = null);
2569 [Experimental("OPENAI001")]
2570 public virtual Task<ClientResult> AddUploadPartAsync(string uploadId, BinaryContent content, string contentType, RequestOptions options = null);
2571 [Experimental("OPENAI001")]
2572 public virtual ClientResult CancelUpload(string uploadId, RequestOptions options = null);
2573 [Experimental("OPENAI001")]
2574 public virtual Task<ClientResult> CancelUploadAsync(string uploadId, RequestOptions options = null);
2575 [Experimental("OPENAI001")]
2576 public virtual ClientResult CompleteUpload(string uploadId, BinaryContent content, RequestOptions options = null);
2577 [Experimental("OPENAI001")]
2578 public virtual Task<ClientResult> CompleteUploadAsync(string uploadId, BinaryContent content, RequestOptions options = null);
2579 [Experimental("OPENAI001")]
2580 public virtual ClientResult CreateUpload(BinaryContent content, RequestOptions options = null);
2581 [Experimental("OPENAI001")]
2582 public virtual Task<ClientResult> CreateUploadAsync(BinaryContent content, RequestOptions options = null);
2583 public virtual ClientResult DeleteFile(string fileId, RequestOptions options);
2584 public virtual ClientResult<FileDeletionResult> DeleteFile(string fileId, CancellationToken cancellationToken = default);
2585 public virtual Task<ClientResult> DeleteFileAsync(string fileId, RequestOptions options);
2586 public virtual Task<ClientResult<FileDeletionResult>> DeleteFileAsync(string fileId, CancellationToken cancellationToken = default);
2587 public virtual ClientResult DownloadFile(string fileId, RequestOptions options);
2588 public virtual ClientResult<BinaryData> DownloadFile(string fileId, CancellationToken cancellationToken = default);
2589 public virtual Task<ClientResult> DownloadFileAsync(string fileId, RequestOptions options);
2590 public virtual Task<ClientResult<BinaryData>> DownloadFileAsync(string fileId, CancellationToken cancellationToken = default);
2591 public virtual ClientResult GetFile(string fileId, RequestOptions options);
2592 public virtual ClientResult<OpenAIFile> GetFile(string fileId, CancellationToken cancellationToken = default);
2593 public virtual Task<ClientResult> GetFileAsync(string fileId, RequestOptions options);
2594 public virtual Task<ClientResult<OpenAIFile>> GetFileAsync(string fileId, CancellationToken cancellationToken = default);
2595 public virtual ClientResult<OpenAIFileCollection> GetFiles(FilePurpose purpose, CancellationToken cancellationToken = default);
2596 public virtual ClientResult GetFiles(string purpose, RequestOptions options);
2597 [Experimental("OPENAI001")]
2598 public virtual ClientResult GetFiles(string purpose, int? limit, string order, string after, RequestOptions options);
2599 public virtual ClientResult<OpenAIFileCollection> GetFiles(CancellationToken cancellationToken = default);
2600 public virtual Task<ClientResult<OpenAIFileCollection>> GetFilesAsync(FilePurpose purpose, CancellationToken cancellationToken = default);
2601 public virtual Task<ClientResult> GetFilesAsync(string purpose, RequestOptions options);
2602 [Experimental("OPENAI001")]
2603 public virtual Task<ClientResult> GetFilesAsync(string purpose, int? limit, string order, string after, RequestOptions options);
2604 public virtual Task<ClientResult<OpenAIFileCollection>> GetFilesAsync(CancellationToken cancellationToken = default);
2605 public virtual ClientResult<OpenAIFile> UploadFile(BinaryData file, string filename, FileUploadPurpose purpose);
2606 public virtual ClientResult UploadFile(BinaryContent content, string contentType, RequestOptions options = null);
2607 public virtual ClientResult<OpenAIFile> UploadFile(Stream file, string filename, FileUploadPurpose purpose, CancellationToken cancellationToken = default);
2608 public virtual ClientResult<OpenAIFile> UploadFile(string filePath, FileUploadPurpose purpose);
2609 public virtual Task<ClientResult<OpenAIFile>> UploadFileAsync(BinaryData file, string filename, FileUploadPurpose purpose);
2610 public virtual Task<ClientResult> UploadFileAsync(BinaryContent content, string contentType, RequestOptions options = null);
2611 public virtual Task<ClientResult<OpenAIFile>> UploadFileAsync(Stream file, string filename, FileUploadPurpose purpose, CancellationToken cancellationToken = default);
2612 public virtual Task<ClientResult<OpenAIFile>> UploadFileAsync(string filePath, FileUploadPurpose purpose);
2613 }
2614 [Experimental("SCME0002")]
2615 public sealed class OpenAIFileClientSettings : ClientSettings {
2616 public OpenAIClientOptions Options { get; set; }
2617 protected override void BindCore(Microsoft.Extensions.Configuration.IConfigurationSection section);
2618 }
2619 public class OpenAIFileCollection : ObjectModel.ReadOnlyCollection<OpenAIFile>, IJsonModel<OpenAIFileCollection>, IPersistableModel<OpenAIFileCollection> {
2620 [Experimental("OPENAI001")]
2621 public static explicit operator OpenAIFileCollection(ClientResult result);
2622 }
2623 public static class OpenAIFilesModelFactory {
2624 public static FileDeletionResult FileDeletionResult(string fileId = null, bool deleted = false);
2625 public static OpenAIFileCollection OpenAIFileCollection(IEnumerable<OpenAIFile> items = null);
2626 [Experimental("OPENAI001")]
2627 public static OpenAIFile OpenAIFileInfo(string id = null, int? sizeInBytes = null, DateTimeOffset createdAt = default, string filename = null, FilePurpose purpose = FilePurpose.Assistants, FileStatus status = FileStatus.Uploaded, string statusDetails = null, DateTimeOffset? expiresAt = null, long? sizeInBytesLong = null);
2628 [EditorBrowsable(EditorBrowsableState.Never)]
2629 public static OpenAIFile OpenAIFileInfo(string id, int? sizeInBytes, DateTimeOffset createdAt, string filename, FilePurpose purpose, FileStatus status, string statusDetails);
2630 }
2631}
2632namespace OpenAI.FineTuning {
2633 [Experimental("OPENAI001")]
2634 public class FineTuningCheckpoint : IJsonModel<FineTuningCheckpoint>, IPersistableModel<FineTuningCheckpoint> {
2635 public DateTimeOffset CreatedAt { get; }
2636 public string Id { get; }
2637 public string JobId { get; }
2638 public FineTuningCheckpointMetrics Metrics { get; }
2639 public string ModelId { get; }
2640 public int StepNumber { get; }
2641 public override string ToString();
2642 }
2643 [Experimental("OPENAI001")]
2644 public class FineTuningCheckpointMetrics : IJsonModel<FineTuningCheckpointMetrics>, IPersistableModel<FineTuningCheckpointMetrics> {
2645 public float? FullValidLoss { get; }
2646 public float? FullValidMeanTokenAccuracy { get; }
2647 public int StepNumber { get; }
2648 public float? TrainLoss { get; }
2649 public float? TrainMeanTokenAccuracy { get; }
2650 public float? ValidLoss { get; }
2651 public float? ValidMeanTokenAccuracy { get; }
2652 }
2653 [Experimental("OPENAI001")]
2654 public class FineTuningClient {
2655 protected FineTuningClient();
2656 [Experimental("SCME0002")]
2657 public FineTuningClient(FineTuningClientSettings settings);
2658 public FineTuningClient(ApiKeyCredential credential, OpenAIClientOptions options);
2659 public FineTuningClient(ApiKeyCredential credential);
2660 public FineTuningClient(AuthenticationPolicy authenticationPolicy, OpenAIClientOptions options);
2661 public FineTuningClient(AuthenticationPolicy authenticationPolicy);
2662 protected internal FineTuningClient(ClientPipeline pipeline, OpenAIClientOptions options);
2663 protected internal FineTuningClient(ClientPipeline pipeline, Uri endpoint);
2664 public FineTuningClient(string apiKey);
2665 [Experimental("OPENAI001")]
2666 public Uri Endpoint { get; }
2667 public ClientPipeline Pipeline { get; }
2668 public virtual ClientResult CreateFineTuningCheckpointPermission(string fineTunedModelCheckpoint, BinaryContent content, RequestOptions options = null);
2669 public virtual Task<ClientResult> CreateFineTuningCheckpointPermissionAsync(string fineTunedModelCheckpoint, BinaryContent content, RequestOptions options = null);
2670 public virtual ClientResult DeleteFineTuningCheckpointPermission(string fineTunedModelCheckpoint, string permissionId, RequestOptions options);
2671 public virtual Task<ClientResult> DeleteFineTuningCheckpointPermissionAsync(string fineTunedModelCheckpoint, string permissionId, RequestOptions options);
2672 public virtual FineTuningJob FineTune(BinaryContent content, bool waitUntilCompleted, RequestOptions options);
2673 public virtual FineTuningJob FineTune(string baseModel, string trainingFileId, bool waitUntilCompleted, FineTuningOptions options = null, CancellationToken cancellationToken = default);
2674 public virtual Task<FineTuningJob> FineTuneAsync(BinaryContent content, bool waitUntilCompleted, RequestOptions options);
2675 public virtual Task<FineTuningJob> FineTuneAsync(string baseModel, string trainingFileId, bool waitUntilCompleted, FineTuningOptions options = null, CancellationToken cancellationToken = default);
2676 public virtual ClientResult GetFineTuningCheckpointPermissions(string fineTunedModelCheckpoint, string after, int? limit, string order, string projectId, RequestOptions options);
2677 public virtual Task<ClientResult> GetFineTuningCheckpointPermissionsAsync(string fineTunedModelCheckpoint, string after, int? limit, string order, string projectId, RequestOptions options);
2678 public virtual FineTuningJob GetJob(string jobId, CancellationToken cancellationToken = default);
2679 public virtual Task<FineTuningJob> GetJobAsync(string jobId, CancellationToken cancellationToken = default);
2680 public virtual CollectionResult<FineTuningJob> GetJobs(FineTuningJobCollectionOptions options = null, CancellationToken cancellationToken = default);
2681 public virtual AsyncCollectionResult<FineTuningJob> GetJobsAsync(FineTuningJobCollectionOptions options = null, CancellationToken cancellationToken = default);
2682 public virtual ClientResult PauseFineTuningJob(string fineTuningJobId, RequestOptions options);
2683 public virtual Task<ClientResult> PauseFineTuningJobAsync(string fineTuningJobId, RequestOptions options);
2684 public virtual ClientResult ResumeFineTuningJob(string fineTuningJobId, RequestOptions options);
2685 public virtual Task<ClientResult> ResumeFineTuningJobAsync(string fineTuningJobId, RequestOptions options);
2686 }
2687 [Experimental("SCME0002")]
2688 public sealed class FineTuningClientSettings : ClientSettings {
2689 public OpenAIClientOptions Options { get; set; }
2690 protected override void BindCore(Microsoft.Extensions.Configuration.IConfigurationSection section);
2691 }
2692 [Experimental("OPENAI001")]
2693 public class FineTuningError : IJsonModel<FineTuningError>, IPersistableModel<FineTuningError> {
2694 public string Code { get; }
2695 public string InvalidParameter { get; }
2696 public string Message { get; }
2697 }
2698 [Experimental("OPENAI001")]
2699 public class FineTuningEvent : IJsonModel<FineTuningEvent>, IPersistableModel<FineTuningEvent> {
2700 public string Level;
2701 public DateTimeOffset CreatedAt { get; }
2702 public BinaryData Data { get; }
2703 public string Id { get; }
2704 public FineTuningJobEventKind? Kind { get; }
2705 public string Message { get; }
2706 }
2707 [Experimental("OPENAI001")]
2708 public readonly partial struct FineTuningHyperparameters : IJsonModel<FineTuningHyperparameters>, IPersistableModel<FineTuningHyperparameters>, IJsonModel<object>, IPersistableModel<object> {
2709 public int BatchSize { get; }
2710 public int EpochCount { get; }
2711 public float LearningRateMultiplier { get; }
2712 }
2713 [Experimental("OPENAI001")]
2714 public class FineTuningIntegration : IJsonModel<FineTuningIntegration>, IPersistableModel<FineTuningIntegration> {
2715 }
2716 [Experimental("OPENAI001")]
2717 public class FineTuningJob : OperationResult {
2718 public string? Value;
2719 public string BaseModel { get; }
2720 public int BillableTrainedTokenCount { get; }
2721 public DateTimeOffset? EstimatedFinishAt { get; }
2722 [Obsolete("This property is deprecated. Use the MethodHyperparameters property instead.")]
2723 public FineTuningHyperparameters Hyperparameters { get; }
2724 public IReadOnlyList<FineTuningIntegration> Integrations { get; }
2725 public string JobId { get; }
2726 public IDictionary<string, string> Metadata { get; }
2727 public MethodHyperparameters? MethodHyperparameters { get; }
2728 public override ContinuationToken? RehydrationToken { get; protected set; }
2729 public IReadOnlyList<string> ResultFileIds { get; }
2730 public int? Seed { get; }
2731 public FineTuningStatus Status { get; }
2732 public string TrainingFileId { get; }
2733 public FineTuningTrainingMethod? TrainingMethod { get; }
2734 public string? UserProvidedSuffix { get; }
2735 public string ValidationFileId { get; }
2736 public virtual ClientResult Cancel(RequestOptions options);
2737 public virtual ClientResult CancelAndUpdate(CancellationToken cancellationToken = default);
2738 public virtual Task<ClientResult> CancelAndUpdateAsync(CancellationToken cancellationToken = default);
2739 public virtual Task<ClientResult> CancelAsync(RequestOptions options);
2740 public virtual CollectionResult<FineTuningCheckpoint> GetCheckpoints(GetCheckpointsOptions? options = null, CancellationToken cancellationToken = default);
2741 public virtual CollectionResult GetCheckpoints(string? after, int? limit, RequestOptions? options);
2742 public virtual AsyncCollectionResult<FineTuningCheckpoint> GetCheckpointsAsync(GetCheckpointsOptions? options = null, CancellationToken cancellationToken = default);
2743 public virtual AsyncCollectionResult GetCheckpointsAsync(string? after, int? limit, RequestOptions? options);
2744 public virtual CollectionResult<FineTuningEvent> GetEvents(GetEventsOptions options, CancellationToken cancellationToken = default);
2745 public virtual CollectionResult GetEvents(string? after, int? limit, RequestOptions options);
2746 public virtual AsyncCollectionResult<FineTuningEvent> GetEventsAsync(GetEventsOptions options, CancellationToken cancellationToken = default);
2747 public virtual AsyncCollectionResult GetEventsAsync(string? after, int? limit, RequestOptions options);
2748 public static FineTuningJob Rehydrate(FineTuningClient client, ContinuationToken rehydrationToken, RequestOptions options);
2749 public static FineTuningJob Rehydrate(FineTuningClient client, ContinuationToken rehydrationToken, CancellationToken cancellationToken = default);
2750 public static FineTuningJob Rehydrate(FineTuningClient client, string JobId, RequestOptions options);
2751 public static FineTuningJob Rehydrate(FineTuningClient client, string JobId, CancellationToken cancellationToken = default);
2752 public static Task<FineTuningJob> RehydrateAsync(FineTuningClient client, ContinuationToken rehydrationToken, RequestOptions options);
2753 public static Task<FineTuningJob> RehydrateAsync(FineTuningClient client, ContinuationToken rehydrationToken, CancellationToken cancellationToken = default);
2754 public static Task<FineTuningJob> RehydrateAsync(FineTuningClient client, string JobId, RequestOptions options);
2755 public static Task<FineTuningJob> RehydrateAsync(FineTuningClient client, string JobId, CancellationToken cancellationToken = default);
2756 public override ClientResult UpdateStatus(RequestOptions? options);
2757 public ClientResult UpdateStatus(CancellationToken cancellationToken = default);
2758 public override ValueTask<ClientResult> UpdateStatusAsync(RequestOptions? options);
2759 public ValueTask<ClientResult> UpdateStatusAsync(CancellationToken cancellationToken = default);
2760 public override void WaitForCompletion(CancellationToken cancellationToken = default);
2761 public override ValueTask WaitForCompletionAsync(CancellationToken cancellationToken = default);
2762 }
2763 [Experimental("OPENAI001")]
2764 public class FineTuningJobCollectionOptions {
2765 public string AfterJobId { get; set; }
2766 public int? PageSize { get; set; }
2767 }
2768 [Experimental("OPENAI001")]
2769 public readonly partial struct FineTuningJobEventKind : IEquatable<FineTuningJobEventKind> {
2770 public FineTuningJobEventKind(string value);
2771 public static FineTuningJobEventKind Message { get; }
2772 public static FineTuningJobEventKind Metrics { get; }
2773 public readonly bool Equals(FineTuningJobEventKind other);
2774 [EditorBrowsable(EditorBrowsableState.Never)]
2775 public override readonly bool Equals(object obj);
2776 [EditorBrowsable(EditorBrowsableState.Never)]
2777 public override readonly int GetHashCode();
2778 public static bool operator ==(FineTuningJobEventKind left, FineTuningJobEventKind right);
2779 public static implicit operator FineTuningJobEventKind(string value);
2780 public static implicit operator FineTuningJobEventKind?(string value);
2781 public static bool operator !=(FineTuningJobEventKind left, FineTuningJobEventKind right);
2782 public override readonly string ToString();
2783 }
2784 [Experimental("OPENAI001")]
2785 public class FineTuningOptions : IJsonModel<FineTuningOptions>, IPersistableModel<FineTuningOptions> {
2786 public IList<FineTuningIntegration> Integrations { get; }
2787 public IDictionary<string, string> Metadata { get; }
2788 public int? Seed { get; set; }
2789 public string Suffix { get; set; }
2790 public FineTuningTrainingMethod TrainingMethod { get; set; }
2791 public string ValidationFile { get; set; }
2792 }
2793 [Experimental("OPENAI001")]
2794 public readonly partial struct FineTuningStatus : IEquatable<string>, IEquatable<FineTuningStatus> {
2795 public FineTuningStatus(string value);
2796 public static FineTuningStatus Cancelled { get; }
2797 public static FineTuningStatus Failed { get; }
2798 public bool InProgress { get; }
2799 public static FineTuningStatus Queued { get; }
2800 public static FineTuningStatus Running { get; }
2801 public static FineTuningStatus Succeeded { get; }
2802 public static FineTuningStatus ValidatingFiles { get; }
2803 public readonly bool Equals(FineTuningStatus other);
2804 [EditorBrowsable(EditorBrowsableState.Never)]
2805 public override readonly bool Equals(object obj);
2806 public readonly bool Equals(string other);
2807 [EditorBrowsable(EditorBrowsableState.Never)]
2808 public override readonly int GetHashCode();
2809 public static bool operator ==(FineTuningStatus left, FineTuningStatus right);
2810 public static implicit operator FineTuningStatus(string value);
2811 public static implicit operator FineTuningStatus?(string value);
2812 public static bool operator !=(FineTuningStatus left, FineTuningStatus right);
2813 public override readonly string ToString();
2814 }
2815 [Experimental("OPENAI001")]
2816 public class FineTuningTrainingMethod : IJsonModel<FineTuningTrainingMethod>, IPersistableModel<FineTuningTrainingMethod> {
2817 public static FineTuningTrainingMethod CreateDirectPreferenceOptimization(HyperparameterBatchSize batchSize = null, HyperparameterEpochCount epochCount = null, HyperparameterLearningRate learningRate = null, HyperparameterBetaFactor betaFactor = null);
2818 public static FineTuningTrainingMethod CreateSupervised(HyperparameterBatchSize batchSize = null, HyperparameterEpochCount epochCount = null, HyperparameterLearningRate learningRate = null);
2819 }
2820 [Experimental("OPENAI001")]
2821 public class GetCheckpointsOptions {
2822 public string AfterCheckpointId { get; set; }
2823 public int? PageSize { get; set; }
2824 }
2825 [Experimental("OPENAI001")]
2826 public class GetEventsOptions {
2827 public string AfterEventId { get; set; }
2828 public int? PageSize { get; set; }
2829 }
2830 [Experimental("OPENAI001")]
2831 public class HyperparameterBatchSize : IEquatable<int>, IEquatable<string>, IJsonModel<HyperparameterBatchSize>, IPersistableModel<HyperparameterBatchSize> {
2832 public HyperparameterBatchSize(int batchSize);
2833 public static HyperparameterBatchSize CreateAuto();
2834 public static HyperparameterBatchSize CreateSize(int batchSize);
2835 [EditorBrowsable(EditorBrowsableState.Never)]
2836 public bool Equals(int other);
2837 [EditorBrowsable(EditorBrowsableState.Never)]
2838 public override bool Equals(object other);
2839 [EditorBrowsable(EditorBrowsableState.Never)]
2840 public bool Equals(string other);
2841 [EditorBrowsable(EditorBrowsableState.Never)]
2842 public override int GetHashCode();
2843 [EditorBrowsable(EditorBrowsableState.Never)]
2844 public static bool operator ==(HyperparameterBatchSize first, HyperparameterBatchSize second);
2845 public static implicit operator HyperparameterBatchSize(int batchSize);
2846 [EditorBrowsable(EditorBrowsableState.Never)]
2847 public static bool operator !=(HyperparameterBatchSize first, HyperparameterBatchSize second);
2848 }
2849 [Experimental("OPENAI001")]
2850 public class HyperparameterBetaFactor : IEquatable<int>, IEquatable<string>, IJsonModel<HyperparameterBetaFactor>, IPersistableModel<HyperparameterBetaFactor> {
2851 public HyperparameterBetaFactor(int beta);
2852 public static HyperparameterBetaFactor CreateAuto();
2853 public static HyperparameterBetaFactor CreateBeta(int beta);
2854 [EditorBrowsable(EditorBrowsableState.Never)]
2855 public bool Equals(int other);
2856 [EditorBrowsable(EditorBrowsableState.Never)]
2857 public override bool Equals(object other);
2858 [EditorBrowsable(EditorBrowsableState.Never)]
2859 public bool Equals(string other);
2860 [EditorBrowsable(EditorBrowsableState.Never)]
2861 public override int GetHashCode();
2862 [EditorBrowsable(EditorBrowsableState.Never)]
2863 public static bool operator ==(HyperparameterBetaFactor first, HyperparameterBetaFactor second);
2864 public static implicit operator HyperparameterBetaFactor(int beta);
2865 [EditorBrowsable(EditorBrowsableState.Never)]
2866 public static bool operator !=(HyperparameterBetaFactor first, HyperparameterBetaFactor second);
2867 }
2868 [Experimental("OPENAI001")]
2869 public class HyperparameterEpochCount : IEquatable<int>, IEquatable<string>, IJsonModel<HyperparameterEpochCount>, IPersistableModel<HyperparameterEpochCount> {
2870 public HyperparameterEpochCount(int epochCount);
2871 public static HyperparameterEpochCount CreateAuto();
2872 public static HyperparameterEpochCount CreateEpochCount(int epochCount);
2873 [EditorBrowsable(EditorBrowsableState.Never)]
2874 public bool Equals(int other);
2875 [EditorBrowsable(EditorBrowsableState.Never)]
2876 public override bool Equals(object other);
2877 [EditorBrowsable(EditorBrowsableState.Never)]
2878 public bool Equals(string other);
2879 [EditorBrowsable(EditorBrowsableState.Never)]
2880 public override int GetHashCode();
2881 [EditorBrowsable(EditorBrowsableState.Never)]
2882 public static bool operator ==(HyperparameterEpochCount first, HyperparameterEpochCount second);
2883 public static implicit operator HyperparameterEpochCount(int epochCount);
2884 [EditorBrowsable(EditorBrowsableState.Never)]
2885 public static bool operator !=(HyperparameterEpochCount first, HyperparameterEpochCount second);
2886 }
2887 [Experimental("OPENAI001")]
2888 public class HyperparameterLearningRate : IEquatable<double>, IEquatable<int>, IEquatable<string>, IJsonModel<HyperparameterLearningRate>, IPersistableModel<HyperparameterLearningRate> {
2889 public HyperparameterLearningRate(double learningRateMultiplier);
2890 public static HyperparameterLearningRate CreateAuto();
2891 public static HyperparameterLearningRate CreateMultiplier(double learningRateMultiplier);
2892 [EditorBrowsable(EditorBrowsableState.Never)]
2893 public bool Equals(double other);
2894 [EditorBrowsable(EditorBrowsableState.Never)]
2895 public bool Equals(int other);
2896 [EditorBrowsable(EditorBrowsableState.Never)]
2897 public override bool Equals(object other);
2898 [EditorBrowsable(EditorBrowsableState.Never)]
2899 public bool Equals(string other);
2900 [EditorBrowsable(EditorBrowsableState.Never)]
2901 public override int GetHashCode();
2902 [EditorBrowsable(EditorBrowsableState.Never)]
2903 public static bool operator ==(HyperparameterLearningRate first, HyperparameterLearningRate second);
2904 public static implicit operator HyperparameterLearningRate(double learningRateMultiplier);
2905 [EditorBrowsable(EditorBrowsableState.Never)]
2906 public static bool operator !=(HyperparameterLearningRate first, HyperparameterLearningRate second);
2907 }
2908 [Experimental("OPENAI001")]
2909 public class HyperparametersForDPO : MethodHyperparameters, IJsonModel<HyperparametersForDPO>, IPersistableModel<HyperparametersForDPO> {
2910 public int BatchSize { get; }
2911 public float Beta { get; }
2912 public int EpochCount { get; }
2913 public float LearningRateMultiplier { get; }
2914 }
2915 [Experimental("OPENAI001")]
2916 public class HyperparametersForSupervised : MethodHyperparameters, IJsonModel<HyperparametersForSupervised>, IPersistableModel<HyperparametersForSupervised> {
2917 public int BatchSize { get; }
2918 public int EpochCount { get; }
2919 public float LearningRateMultiplier { get; }
2920 }
2921 [Experimental("OPENAI001")]
2922 public class MethodHyperparameters {
2923 }
2924 [Experimental("OPENAI001")]
2925 public class WeightsAndBiasesIntegration : FineTuningIntegration, IJsonModel<WeightsAndBiasesIntegration>, IPersistableModel<WeightsAndBiasesIntegration> {
2926 public WeightsAndBiasesIntegration(string projectName);
2927 public string DisplayName { get; set; }
2928 public string EntityName { get; set; }
2929 public string ProjectName { get; set; }
2930 public IList<string> Tags { get; }
2931 }
2932}
2933namespace OpenAI.Graders {
2934 [Experimental("OPENAI001")]
2935 public class FineTuneReinforcementHyperparameters : IJsonModel<FineTuneReinforcementHyperparameters>, IPersistableModel<FineTuneReinforcementHyperparameters> {
2936 public BinaryData BatchSize { get; set; }
2937 public BinaryData ComputeMultiplier { get; set; }
2938 public BinaryData EvalInterval { get; set; }
2939 public BinaryData EvalSamples { get; set; }
2940 public BinaryData LearningRateMultiplier { get; set; }
2941 public BinaryData NEpochs { get; set; }
2942 }
2943 [Experimental("OPENAI001")]
2944 [PersistableModelProxy(typeof(UnknownGrader))]
2945 public class Grader : IJsonModel<Grader>, IPersistableModel<Grader> {
2946 }
2947 [Experimental("OPENAI001")]
2948 public class GraderClient {
2949 protected GraderClient();
2950 [Experimental("SCME0002")]
2951 public GraderClient(GraderClientSettings settings);
2952 public GraderClient(ApiKeyCredential credential, OpenAIClientOptions options);
2953 public GraderClient(ApiKeyCredential credential);
2954 public GraderClient(AuthenticationPolicy authenticationPolicy, OpenAIClientOptions options);
2955 public GraderClient(AuthenticationPolicy authenticationPolicy);
2956 protected internal GraderClient(ClientPipeline pipeline, OpenAIClientOptions options);
2957 public GraderClient(string apiKey);
2958 [Experimental("OPENAI001")]
2959 public Uri Endpoint { get; }
2960 public ClientPipeline Pipeline { get; }
2961 public virtual ClientResult RunGrader(BinaryContent content, RequestOptions options = null);
2962 public virtual Task<ClientResult> RunGraderAsync(BinaryContent content, RequestOptions options = null);
2963 public virtual ClientResult ValidateGrader(BinaryContent content, RequestOptions options = null);
2964 public virtual Task<ClientResult> ValidateGraderAsync(BinaryContent content, RequestOptions options = null);
2965 }
2966 [Experimental("SCME0002")]
2967 public sealed class GraderClientSettings : ClientSettings {
2968 public OpenAIClientOptions Options { get; set; }
2969 protected override void BindCore(Microsoft.Extensions.Configuration.IConfigurationSection section);
2970 }
2971 [Experimental("OPENAI001")]
2972 public class GraderLabelModel : Grader, IJsonModel<GraderLabelModel>, IPersistableModel<GraderLabelModel> {
2973 public IList<string> Labels { get; }
2974 public string Model { get; set; }
2975 public string Name { get; set; }
2976 public IList<string> PassingLabels { get; }
2977 }
2978 [Experimental("OPENAI001")]
2979 public class GraderMulti : Grader, IJsonModel<GraderMulti>, IPersistableModel<GraderMulti> {
2980 public GraderMulti(string name, BinaryData graders, string calculateOutput);
2981 public string CalculateOutput { get; set; }
2982 public BinaryData Graders { get; set; }
2983 public string Name { get; set; }
2984 }
2985 [Experimental("OPENAI001")]
2986 public class GraderPython : Grader, IJsonModel<GraderPython>, IPersistableModel<GraderPython> {
2987 public GraderPython(string name, string source);
2988 public string ImageTag { get; set; }
2989 public string Name { get; set; }
2990 public string Source { get; set; }
2991 }
2992 [Experimental("OPENAI001")]
2993 public class GraderScoreModel : Grader, IJsonModel<GraderScoreModel>, IPersistableModel<GraderScoreModel> {
2994 public string Model { get; set; }
2995 public string Name { get; set; }
2996 public IList<float> Range { get; }
2997 public BinaryData SamplingParams { get; set; }
2998 }
2999 [Experimental("OPENAI001")]
3000 public class GraderStringCheck : Grader, IJsonModel<GraderStringCheck>, IPersistableModel<GraderStringCheck> {
3001 public GraderStringCheck(string name, string input, string reference, GraderStringCheckOperation operation);
3002 public string Input { get; set; }
3003 public string Name { get; set; }
3004 public GraderStringCheckOperation Operation { get; set; }
3005 public string Reference { get; set; }
3006 }
3007 [Experimental("OPENAI001")]
3008 public readonly partial struct GraderStringCheckOperation : IEquatable<GraderStringCheckOperation> {
3009 public GraderStringCheckOperation(string value);
3010 public static GraderStringCheckOperation Eq { get; }
3011 public static GraderStringCheckOperation Ilike { get; }
3012 public static GraderStringCheckOperation Like { get; }
3013 public static GraderStringCheckOperation Ne { get; }
3014 public readonly bool Equals(GraderStringCheckOperation other);
3015 [EditorBrowsable(EditorBrowsableState.Never)]
3016 public override readonly bool Equals(object obj);
3017 [EditorBrowsable(EditorBrowsableState.Never)]
3018 public override readonly int GetHashCode();
3019 public static bool operator ==(GraderStringCheckOperation left, GraderStringCheckOperation right);
3020 public static implicit operator GraderStringCheckOperation(string value);
3021 public static implicit operator GraderStringCheckOperation?(string value);
3022 public static bool operator !=(GraderStringCheckOperation left, GraderStringCheckOperation right);
3023 public override readonly string ToString();
3024 }
3025 [Experimental("OPENAI001")]
3026 public class GraderTextSimilarity : Grader, IJsonModel<GraderTextSimilarity>, IPersistableModel<GraderTextSimilarity> {
3027 public GraderTextSimilarity(string name, string input, string reference, GraderTextSimilarityEvaluationMetric evaluationMetric);
3028 public GraderTextSimilarityEvaluationMetric EvaluationMetric { get; set; }
3029 public string Input { get; set; }
3030 public string Name { get; set; }
3031 public string Reference { get; set; }
3032 }
3033 [Experimental("OPENAI001")]
3034 public readonly partial struct GraderTextSimilarityEvaluationMetric : IEquatable<GraderTextSimilarityEvaluationMetric> {
3035 public GraderTextSimilarityEvaluationMetric(string value);
3036 public static GraderTextSimilarityEvaluationMetric Bleu { get; }
3037 public static GraderTextSimilarityEvaluationMetric FuzzyMatch { get; }
3038 public static GraderTextSimilarityEvaluationMetric Gleu { get; }
3039 public static GraderTextSimilarityEvaluationMetric Meteor { get; }
3040 public static GraderTextSimilarityEvaluationMetric Rouge1 { get; }
3041 public static GraderTextSimilarityEvaluationMetric Rouge2 { get; }
3042 public static GraderTextSimilarityEvaluationMetric Rouge3 { get; }
3043 public static GraderTextSimilarityEvaluationMetric Rouge4 { get; }
3044 public static GraderTextSimilarityEvaluationMetric Rouge5 { get; }
3045 public static GraderTextSimilarityEvaluationMetric RougeL { get; }
3046 public readonly bool Equals(GraderTextSimilarityEvaluationMetric other);
3047 [EditorBrowsable(EditorBrowsableState.Never)]
3048 public override readonly bool Equals(object obj);
3049 [EditorBrowsable(EditorBrowsableState.Never)]
3050 public override readonly int GetHashCode();
3051 public static bool operator ==(GraderTextSimilarityEvaluationMetric left, GraderTextSimilarityEvaluationMetric right);
3052 public static implicit operator GraderTextSimilarityEvaluationMetric(string value);
3053 public static implicit operator GraderTextSimilarityEvaluationMetric?(string value);
3054 public static bool operator !=(GraderTextSimilarityEvaluationMetric left, GraderTextSimilarityEvaluationMetric right);
3055 public override readonly string ToString();
3056 }
3057 [Experimental("OPENAI001")]
3058 public readonly partial struct GraderType : IEquatable<GraderType> {
3059 public GraderType(string value);
3060 public static GraderType LabelModel { get; }
3061 public static GraderType Multi { get; }
3062 public static GraderType Python { get; }
3063 public static GraderType ScoreModel { get; }
3064 public static GraderType StringCheck { get; }
3065 public static GraderType TextSimilarity { get; }
3066 public readonly bool Equals(GraderType other);
3067 [EditorBrowsable(EditorBrowsableState.Never)]
3068 public override readonly bool Equals(object obj);
3069 [EditorBrowsable(EditorBrowsableState.Never)]
3070 public override readonly int GetHashCode();
3071 public static bool operator ==(GraderType left, GraderType right);
3072 public static implicit operator GraderType(string value);
3073 public static implicit operator GraderType?(string value);
3074 public static bool operator !=(GraderType left, GraderType right);
3075 public override readonly string ToString();
3076 }
3077 [Experimental("OPENAI001")]
3078 public class RunGraderRequest : IJsonModel<RunGraderRequest>, IPersistableModel<RunGraderRequest> {
3079 public BinaryData Grader { get; }
3080 public BinaryData Item { get; }
3081 public string ModelSample { get; }
3082 }
3083 [Experimental("OPENAI001")]
3084 public class RunGraderResponse : IJsonModel<RunGraderResponse>, IPersistableModel<RunGraderResponse> {
3085 public RunGraderResponseMetadata Metadata { get; }
3086 public BinaryData ModelGraderTokenUsagePerModel { get; }
3087 public float Reward { get; }
3088 public BinaryData SubRewards { get; }
3089 public static explicit operator RunGraderResponse(ClientResult result);
3090 }
3091 [Experimental("OPENAI001")]
3092 public class RunGraderResponseMetadata : IJsonModel<RunGraderResponseMetadata>, IPersistableModel<RunGraderResponseMetadata> {
3093 public RunGraderResponseMetadataErrors Errors { get; }
3094 public float ExecutionTime { get; }
3095 public string Kind { get; }
3096 public string Name { get; }
3097 public string SampledModelName { get; }
3098 public BinaryData Scores { get; }
3099 public int? TokenUsage { get; }
3100 }
3101 [Experimental("OPENAI001")]
3102 public class RunGraderResponseMetadataErrors : IJsonModel<RunGraderResponseMetadataErrors>, IPersistableModel<RunGraderResponseMetadataErrors> {
3103 public bool FormulaParseError { get; }
3104 public bool InvalidVariableError { get; }
3105 public bool ModelGraderParseError { get; }
3106 public bool ModelGraderRefusalError { get; }
3107 public bool ModelGraderServerError { get; }
3108 public string ModelGraderServerErrorDetails { get; }
3109 public bool OtherError { get; }
3110 public bool PythonGraderRuntimeError { get; }
3111 public string PythonGraderRuntimeErrorDetails { get; }
3112 public bool PythonGraderServerError { get; }
3113 public string PythonGraderServerErrorType { get; }
3114 public bool SampleParseError { get; }
3115 public bool TruncatedObservationError { get; }
3116 public bool UnresponsiveRewardError { get; }
3117 }
3118 [Experimental("OPENAI001")]
3119 public class UnknownGrader : Grader, IJsonModel<Grader>, IPersistableModel<Grader> {
3120 }
3121 [Experimental("OPENAI001")]
3122 public class ValidateGraderRequest : IJsonModel<ValidateGraderRequest>, IPersistableModel<ValidateGraderRequest> {
3123 public BinaryData Grader { get; }
3124 }
3125 [Experimental("OPENAI001")]
3126 public class ValidateGraderResponse : IJsonModel<ValidateGraderResponse>, IPersistableModel<ValidateGraderResponse> {
3127 public BinaryData Grader { get; }
3128 public static explicit operator ValidateGraderResponse(ClientResult result);
3129 }
3130}
3131namespace OpenAI.Images {
3132 public class GeneratedImage : IJsonModel<GeneratedImage>, IPersistableModel<GeneratedImage> {
3133 public BinaryData ImageBytes { get; }
3134 public Uri ImageUri { get; }
3135 public string RevisedPrompt { get; }
3136 }
3137 [Experimental("OPENAI001")]
3138 public readonly partial struct GeneratedImageBackground : IEquatable<GeneratedImageBackground> {
3139 public GeneratedImageBackground(string value);
3140 public static GeneratedImageBackground Auto { get; }
3141 public static GeneratedImageBackground Opaque { get; }
3142 public static GeneratedImageBackground Transparent { get; }
3143 public readonly bool Equals(GeneratedImageBackground other);
3144 [EditorBrowsable(EditorBrowsableState.Never)]
3145 public override readonly bool Equals(object obj);
3146 [EditorBrowsable(EditorBrowsableState.Never)]
3147 public override readonly int GetHashCode();
3148 public static bool operator ==(GeneratedImageBackground left, GeneratedImageBackground right);
3149 public static implicit operator GeneratedImageBackground(string value);
3150 public static implicit operator GeneratedImageBackground?(string value);
3151 public static bool operator !=(GeneratedImageBackground left, GeneratedImageBackground right);
3152 public override readonly string ToString();
3153 }
3154 public class GeneratedImageCollection : ObjectModel.ReadOnlyCollection<GeneratedImage>, IJsonModel<GeneratedImageCollection>, IPersistableModel<GeneratedImageCollection> {
3155 [Experimental("OPENAI001")]
3156 public GeneratedImageBackground? Background { get; }
3157 public DateTimeOffset CreatedAt { get; }
3158 [Experimental("OPENAI001")]
3159 public GeneratedImageFileFormat? OutputFileFormat { get; }
3160 [Experimental("OPENAI001")]
3161 public GeneratedImageQuality? Quality { get; }
3162 [Experimental("OPENAI001")]
3163 public GeneratedImageSize? Size { get; }
3164 [Experimental("OPENAI001")]
3165 public ImageTokenUsage Usage { get; }
3166 [Experimental("OPENAI001")]
3167 public static explicit operator GeneratedImageCollection(ClientResult result);
3168 }
3169 [Experimental("OPENAI001")]
3170 public readonly partial struct GeneratedImageFileFormat : IEquatable<GeneratedImageFileFormat> {
3171 public GeneratedImageFileFormat(string value);
3172 public static GeneratedImageFileFormat Jpeg { get; }
3173 public static GeneratedImageFileFormat Png { get; }
3174 public static GeneratedImageFileFormat Webp { get; }
3175 public readonly bool Equals(GeneratedImageFileFormat other);
3176 [EditorBrowsable(EditorBrowsableState.Never)]
3177 public override readonly bool Equals(object obj);
3178 [EditorBrowsable(EditorBrowsableState.Never)]
3179 public override readonly int GetHashCode();
3180 public static bool operator ==(GeneratedImageFileFormat left, GeneratedImageFileFormat right);
3181 public static implicit operator GeneratedImageFileFormat(string value);
3182 public static implicit operator GeneratedImageFileFormat?(string value);
3183 public static bool operator !=(GeneratedImageFileFormat left, GeneratedImageFileFormat right);
3184 public override readonly string ToString();
3185 }
3186 public readonly partial struct GeneratedImageFormat : IEquatable<GeneratedImageFormat> {
3187 public GeneratedImageFormat(string value);
3188 public static GeneratedImageFormat Bytes { get; }
3189 public static GeneratedImageFormat Uri { get; }
3190 public readonly bool Equals(GeneratedImageFormat other);
3191 [EditorBrowsable(EditorBrowsableState.Never)]
3192 public override readonly bool Equals(object obj);
3193 [EditorBrowsable(EditorBrowsableState.Never)]
3194 public override readonly int GetHashCode();
3195 public static bool operator ==(GeneratedImageFormat left, GeneratedImageFormat right);
3196 public static implicit operator GeneratedImageFormat(string value);
3197 public static implicit operator GeneratedImageFormat?(string value);
3198 public static bool operator !=(GeneratedImageFormat left, GeneratedImageFormat right);
3199 public override readonly string ToString();
3200 }
3201 [Experimental("OPENAI001")]
3202 public readonly partial struct GeneratedImageModerationLevel : IEquatable<GeneratedImageModerationLevel> {
3203 public GeneratedImageModerationLevel(string value);
3204 public static GeneratedImageModerationLevel Auto { get; }
3205 public static GeneratedImageModerationLevel Low { get; }
3206 public readonly bool Equals(GeneratedImageModerationLevel other);
3207 [EditorBrowsable(EditorBrowsableState.Never)]
3208 public override readonly bool Equals(object obj);
3209 [EditorBrowsable(EditorBrowsableState.Never)]
3210 public override readonly int GetHashCode();
3211 public static bool operator ==(GeneratedImageModerationLevel left, GeneratedImageModerationLevel right);
3212 public static implicit operator GeneratedImageModerationLevel(string value);
3213 public static implicit operator GeneratedImageModerationLevel?(string value);
3214 public static bool operator !=(GeneratedImageModerationLevel left, GeneratedImageModerationLevel right);
3215 public override readonly string ToString();
3216 }
3217 public readonly partial struct GeneratedImageQuality : IEquatable<GeneratedImageQuality> {
3218 public GeneratedImageQuality(string value);
3219 [Experimental("OPENAI001")]
3220 public static GeneratedImageQuality Auto { get; }
3221 public static GeneratedImageQuality High { get; }
3222 [Experimental("OPENAI001")]
3223 public static GeneratedImageQuality HighQuality { get; }
3224 [Experimental("OPENAI001")]
3225 public static GeneratedImageQuality LowQuality { get; }
3226 [Experimental("OPENAI001")]
3227 public static GeneratedImageQuality MediumQuality { get; }
3228 public static GeneratedImageQuality Standard { get; }
3229 public readonly bool Equals(GeneratedImageQuality other);
3230 [EditorBrowsable(EditorBrowsableState.Never)]
3231 public override readonly bool Equals(object obj);
3232 [EditorBrowsable(EditorBrowsableState.Never)]
3233 public override readonly int GetHashCode();
3234 public static bool operator ==(GeneratedImageQuality left, GeneratedImageQuality right);
3235 public static implicit operator GeneratedImageQuality(string value);
3236 public static implicit operator GeneratedImageQuality?(string value);
3237 public static bool operator !=(GeneratedImageQuality left, GeneratedImageQuality right);
3238 public override readonly string ToString();
3239 }
3240 public readonly partial struct GeneratedImageSize : IEquatable<GeneratedImageSize> {
3241 public static readonly GeneratedImageSize W1024xH1024;
3242 [Experimental("OPENAI001")]
3243 public static readonly GeneratedImageSize W1024xH1536;
3244 public static readonly GeneratedImageSize W1024xH1792;
3245 [Experimental("OPENAI001")]
3246 public static readonly GeneratedImageSize W1536xH1024;
3247 public static readonly GeneratedImageSize W1792xH1024;
3248 public static readonly GeneratedImageSize W256xH256;
3249 public static readonly GeneratedImageSize W512xH512;
3250 public GeneratedImageSize(int width, int height);
3251 [Experimental("OPENAI001")]
3252 public static GeneratedImageSize Auto { get; }
3253 public readonly bool Equals(GeneratedImageSize other);
3254 [EditorBrowsable(EditorBrowsableState.Never)]
3255 public override readonly bool Equals(object obj);
3256 [EditorBrowsable(EditorBrowsableState.Never)]
3257 public override readonly int GetHashCode();
3258 public static bool operator ==(GeneratedImageSize left, GeneratedImageSize right);
3259 public static bool operator !=(GeneratedImageSize left, GeneratedImageSize right);
3260 public override readonly string ToString();
3261 }
3262 public readonly partial struct GeneratedImageStyle : IEquatable<GeneratedImageStyle> {
3263 public GeneratedImageStyle(string value);
3264 public static GeneratedImageStyle Natural { get; }
3265 public static GeneratedImageStyle Vivid { get; }
3266 public readonly bool Equals(GeneratedImageStyle other);
3267 [EditorBrowsable(EditorBrowsableState.Never)]
3268 public override readonly bool Equals(object obj);
3269 [EditorBrowsable(EditorBrowsableState.Never)]
3270 public override readonly int GetHashCode();
3271 public static bool operator ==(GeneratedImageStyle left, GeneratedImageStyle right);
3272 public static implicit operator GeneratedImageStyle(string value);
3273 public static implicit operator GeneratedImageStyle?(string value);
3274 public static bool operator !=(GeneratedImageStyle left, GeneratedImageStyle right);
3275 public override readonly string ToString();
3276 }
3277 public class ImageClient {
3278 protected ImageClient();
3279 [Experimental("SCME0002")]
3280 public ImageClient(ImageClientSettings settings);
3281 protected internal ImageClient(ClientPipeline pipeline, string model, OpenAIClientOptions options);
3282 public ImageClient(string model, ApiKeyCredential credential, OpenAIClientOptions options);
3283 public ImageClient(string model, ApiKeyCredential credential);
3284 [Experimental("OPENAI001")]
3285 public ImageClient(string model, AuthenticationPolicy authenticationPolicy, OpenAIClientOptions options);
3286 [Experimental("OPENAI001")]
3287 public ImageClient(string model, AuthenticationPolicy authenticationPolicy);
3288 public ImageClient(string model, string apiKey);
3289 [Experimental("OPENAI001")]
3290 public Uri Endpoint { get; }
3291 [Experimental("OPENAI001")]
3292 public string Model { get; }
3293 public ClientPipeline Pipeline { get; }
3294 public virtual ClientResult<GeneratedImage> GenerateImage(string prompt, ImageGenerationOptions options = null, CancellationToken cancellationToken = default);
3295 public virtual Task<ClientResult<GeneratedImage>> GenerateImageAsync(string prompt, ImageGenerationOptions options = null, CancellationToken cancellationToken = default);
3296 public virtual ClientResult<GeneratedImage> GenerateImageEdit(Stream image, string imageFilename, string prompt, ImageEditOptions options = null, CancellationToken cancellationToken = default);
3297 public virtual ClientResult<GeneratedImage> GenerateImageEdit(Stream image, string imageFilename, string prompt, Stream mask, string maskFilename, ImageEditOptions options = null, CancellationToken cancellationToken = default);
3298 public virtual ClientResult<GeneratedImage> GenerateImageEdit(string imageFilePath, string prompt, ImageEditOptions options = null);
3299 public virtual ClientResult<GeneratedImage> GenerateImageEdit(string imageFilePath, string prompt, string maskFilePath, ImageEditOptions options = null);
3300 public virtual Task<ClientResult<GeneratedImage>> GenerateImageEditAsync(Stream image, string imageFilename, string prompt, ImageEditOptions options = null, CancellationToken cancellationToken = default);
3301 public virtual Task<ClientResult<GeneratedImage>> GenerateImageEditAsync(Stream image, string imageFilename, string prompt, Stream mask, string maskFilename, ImageEditOptions options = null, CancellationToken cancellationToken = default);
3302 public virtual Task<ClientResult<GeneratedImage>> GenerateImageEditAsync(string imageFilePath, string prompt, ImageEditOptions options = null);
3303 public virtual Task<ClientResult<GeneratedImage>> GenerateImageEditAsync(string imageFilePath, string prompt, string maskFilePath, ImageEditOptions options = null);
3304 public virtual ClientResult GenerateImageEdits(BinaryContent content, string contentType, RequestOptions options = null);
3305 public virtual ClientResult<GeneratedImageCollection> GenerateImageEdits(Stream image, string imageFilename, string prompt, int imageCount, ImageEditOptions options = null, CancellationToken cancellationToken = default);
3306 public virtual ClientResult<GeneratedImageCollection> GenerateImageEdits(Stream image, string imageFilename, string prompt, Stream mask, string maskFilename, int imageCount, ImageEditOptions options = null, CancellationToken cancellationToken = default);
3307 public virtual ClientResult<GeneratedImageCollection> GenerateImageEdits(string imageFilePath, string prompt, int imageCount, ImageEditOptions options = null);
3308 public virtual ClientResult<GeneratedImageCollection> GenerateImageEdits(string imageFilePath, string prompt, string maskFilePath, int imageCount, ImageEditOptions options = null);
3309 public virtual Task<ClientResult> GenerateImageEditsAsync(BinaryContent content, string contentType, RequestOptions options = null);
3310 public virtual Task<ClientResult<GeneratedImageCollection>> GenerateImageEditsAsync(Stream image, string imageFilename, string prompt, int imageCount, ImageEditOptions options = null, CancellationToken cancellationToken = default);
3311 public virtual Task<ClientResult<GeneratedImageCollection>> GenerateImageEditsAsync(Stream image, string imageFilename, string prompt, Stream mask, string maskFilename, int imageCount, ImageEditOptions options = null, CancellationToken cancellationToken = default);
3312 public virtual Task<ClientResult<GeneratedImageCollection>> GenerateImageEditsAsync(string imageFilePath, string prompt, int imageCount, ImageEditOptions options = null);
3313 public virtual Task<ClientResult<GeneratedImageCollection>> GenerateImageEditsAsync(string imageFilePath, string prompt, string maskFilePath, int imageCount, ImageEditOptions options = null);
3314 public virtual ClientResult GenerateImages(BinaryContent content, RequestOptions options = null);
3315 public virtual ClientResult<GeneratedImageCollection> GenerateImages(string prompt, int imageCount, ImageGenerationOptions options = null, CancellationToken cancellationToken = default);
3316 public virtual Task<ClientResult> GenerateImagesAsync(BinaryContent content, RequestOptions options = null);
3317 public virtual Task<ClientResult<GeneratedImageCollection>> GenerateImagesAsync(string prompt, int imageCount, ImageGenerationOptions options = null, CancellationToken cancellationToken = default);
3318 public virtual ClientResult<GeneratedImage> GenerateImageVariation(Stream image, string imageFilename, ImageVariationOptions options = null, CancellationToken cancellationToken = default);
3319 public virtual ClientResult<GeneratedImage> GenerateImageVariation(string imageFilePath, ImageVariationOptions options = null);
3320 public virtual Task<ClientResult<GeneratedImage>> GenerateImageVariationAsync(Stream image, string imageFilename, ImageVariationOptions options = null, CancellationToken cancellationToken = default);
3321 public virtual Task<ClientResult<GeneratedImage>> GenerateImageVariationAsync(string imageFilePath, ImageVariationOptions options = null);
3322 public virtual ClientResult GenerateImageVariations(BinaryContent content, string contentType, RequestOptions options = null);
3323 public virtual ClientResult<GeneratedImageCollection> GenerateImageVariations(Stream image, string imageFilename, int imageCount, ImageVariationOptions options = null, CancellationToken cancellationToken = default);
3324 public virtual ClientResult<GeneratedImageCollection> GenerateImageVariations(string imageFilePath, int imageCount, ImageVariationOptions options = null);
3325 public virtual Task<ClientResult> GenerateImageVariationsAsync(BinaryContent content, string contentType, RequestOptions options = null);
3326 public virtual Task<ClientResult<GeneratedImageCollection>> GenerateImageVariationsAsync(Stream image, string imageFilename, int imageCount, ImageVariationOptions options = null, CancellationToken cancellationToken = default);
3327 public virtual Task<ClientResult<GeneratedImageCollection>> GenerateImageVariationsAsync(string imageFilePath, int imageCount, ImageVariationOptions options = null);
3328 }
3329 [Experimental("SCME0002")]
3330 public sealed class ImageClientSettings : ClientSettings {
3331 public string Model { get; set; }
3332 public OpenAIClientOptions Options { get; set; }
3333 protected override void BindCore(Microsoft.Extensions.Configuration.IConfigurationSection section);
3334 }
3335 public class ImageEditOptions : IJsonModel<ImageEditOptions>, IPersistableModel<ImageEditOptions> {
3336 [Experimental("OPENAI001")]
3337 public GeneratedImageBackground? Background { get; set; }
3338 public string EndUserId { get; set; }
3339 [Experimental("OPENAI001")]
3340 public ImageInputFidelity? InputFidelity { get; set; }
3341 [Experimental("OPENAI001")]
3342 public int? OutputCompressionFactor { get; set; }
3343 [Experimental("OPENAI001")]
3344 public GeneratedImageFileFormat? OutputFileFormat { get; set; }
3345 [Experimental("OPENAI001")]
3346 public GeneratedImageQuality? Quality { get; set; }
3347 public GeneratedImageFormat? ResponseFormat { get; set; }
3348 public GeneratedImageSize? Size { get; set; }
3349 }
3350 public class ImageGenerationOptions : IJsonModel<ImageGenerationOptions>, IPersistableModel<ImageGenerationOptions> {
3351 [Experimental("OPENAI001")]
3352 public GeneratedImageBackground? Background { get; set; }
3353 public string EndUserId { get; set; }
3354 [Experimental("OPENAI001")]
3355 public GeneratedImageModerationLevel? ModerationLevel { get; set; }
3356 [Experimental("OPENAI001")]
3357 public int? OutputCompressionFactor { get; set; }
3358 [Experimental("OPENAI001")]
3359 public GeneratedImageFileFormat? OutputFileFormat { get; set; }
3360 public GeneratedImageQuality? Quality { get; set; }
3361 public GeneratedImageFormat? ResponseFormat { get; set; }
3362 public GeneratedImageSize? Size { get; set; }
3363 public GeneratedImageStyle? Style { get; set; }
3364 }
3365 [Experimental("OPENAI001")]
3366 public readonly partial struct ImageInputFidelity : IEquatable<ImageInputFidelity> {
3367 public ImageInputFidelity(string value);
3368 public static ImageInputFidelity High { get; }
3369 public static ImageInputFidelity Low { get; }
3370 public readonly bool Equals(ImageInputFidelity other);
3371 [EditorBrowsable(EditorBrowsableState.Never)]
3372 public override readonly bool Equals(object obj);
3373 [EditorBrowsable(EditorBrowsableState.Never)]
3374 public override readonly int GetHashCode();
3375 public static bool operator ==(ImageInputFidelity left, ImageInputFidelity right);
3376 public static implicit operator ImageInputFidelity(string value);
3377 public static implicit operator ImageInputFidelity?(string value);
3378 public static bool operator !=(ImageInputFidelity left, ImageInputFidelity right);
3379 public override readonly string ToString();
3380 }
3381 [Experimental("OPENAI001")]
3382 public class ImageInputTokenUsageDetails : IJsonModel<ImageInputTokenUsageDetails>, IPersistableModel<ImageInputTokenUsageDetails> {
3383 public long ImageTokenCount { get; }
3384 public long TextTokenCount { get; }
3385 }
3386 [Experimental("OPENAI001")]
3387 public class ImageOutputTokenUsageDetails : IJsonModel<ImageOutputTokenUsageDetails>, IPersistableModel<ImageOutputTokenUsageDetails> {
3388 public long ImageTokenCount { get; }
3389 public long TextTokenCount { get; }
3390 }
3391 [Experimental("OPENAI001")]
3392 public class ImageTokenUsage : IJsonModel<ImageTokenUsage>, IPersistableModel<ImageTokenUsage> {
3393 public long InputTokenCount { get; }
3394 public ImageInputTokenUsageDetails InputTokenDetails { get; }
3395 public long OutputTokenCount { get; }
3396 public ImageOutputTokenUsageDetails OutputTokenDetails { get; }
3397 public long TotalTokenCount { get; }
3398 }
3399 public class ImageVariationOptions : IJsonModel<ImageVariationOptions>, IPersistableModel<ImageVariationOptions> {
3400 public string EndUserId { get; set; }
3401 public GeneratedImageFormat? ResponseFormat { get; set; }
3402 public GeneratedImageSize? Size { get; set; }
3403 }
3404 public static class OpenAIImagesModelFactory {
3405 public static GeneratedImage GeneratedImage(BinaryData imageBytes = null, Uri imageUri = null, string revisedPrompt = null);
3406 [Experimental("OPENAI001")]
3407 public static GeneratedImageCollection GeneratedImageCollection(DateTimeOffset createdAt = default, IEnumerable<GeneratedImage> items = null, GeneratedImageBackground? background = null, GeneratedImageFileFormat? outputFileFormat = null, GeneratedImageSize? size = null, GeneratedImageQuality? quality = null, ImageTokenUsage usage = null);
3408 [EditorBrowsable(EditorBrowsableState.Never)]
3409 public static GeneratedImageCollection GeneratedImageCollection(DateTimeOffset createdAt, IEnumerable<GeneratedImage> items);
3410 [Experimental("OPENAI001")]
3411 public static ImageInputTokenUsageDetails ImageInputTokenUsageDetails(long textTokenCount = 0, long imageTokenCount = 0);
3412 [Experimental("OPENAI001")]
3413 public static ImageTokenUsage ImageTokenUsage(long inputTokenCount = 0, long outputTokenCount = 0, long totalTokenCount = 0, ImageInputTokenUsageDetails inputTokenDetails = null, ImageOutputTokenUsageDetails outputTokenDetails = null);
3414 }
3415}
3416namespace OpenAI.Models {
3417 public class ModelDeletionResult : IJsonModel<ModelDeletionResult>, IPersistableModel<ModelDeletionResult> {
3418 public bool Deleted { get; }
3419 public string ModelId { get; }
3420 [Experimental("OPENAI001")]
3421 public static explicit operator ModelDeletionResult(ClientResult result);
3422 }
3423 public class OpenAIModel : IJsonModel<OpenAIModel>, IPersistableModel<OpenAIModel> {
3424 public DateTimeOffset CreatedAt { get; }
3425 public string Id { get; }
3426 public string OwnedBy { get; }
3427 [Experimental("OPENAI001")]
3428 public static explicit operator OpenAIModel(ClientResult result);
3429 }
3430 public class OpenAIModelClient {
3431 protected OpenAIModelClient();
3432 [Experimental("SCME0002")]
3433 public OpenAIModelClient(OpenAIModelClientSettings settings);
3434 public OpenAIModelClient(ApiKeyCredential credential, OpenAIClientOptions options);
3435 public OpenAIModelClient(ApiKeyCredential credential);
3436 [Experimental("OPENAI001")]
3437 public OpenAIModelClient(AuthenticationPolicy authenticationPolicy, OpenAIClientOptions options);
3438 [Experimental("OPENAI001")]
3439 public OpenAIModelClient(AuthenticationPolicy authenticationPolicy);
3440 protected internal OpenAIModelClient(ClientPipeline pipeline, OpenAIClientOptions options);
3441 public OpenAIModelClient(string apiKey);
3442 [Experimental("OPENAI001")]
3443 public Uri Endpoint { get; }
3444 public ClientPipeline Pipeline { get; }
3445 public virtual ClientResult DeleteModel(string model, RequestOptions options);
3446 public virtual ClientResult<ModelDeletionResult> DeleteModel(string model, CancellationToken cancellationToken = default);
3447 public virtual Task<ClientResult> DeleteModelAsync(string model, RequestOptions options);
3448 public virtual Task<ClientResult<ModelDeletionResult>> DeleteModelAsync(string model, CancellationToken cancellationToken = default);
3449 public virtual ClientResult GetModel(string model, RequestOptions options);
3450 public virtual ClientResult<OpenAIModel> GetModel(string model, CancellationToken cancellationToken = default);
3451 public virtual Task<ClientResult> GetModelAsync(string model, RequestOptions options);
3452 public virtual Task<ClientResult<OpenAIModel>> GetModelAsync(string model, CancellationToken cancellationToken = default);
3453 public virtual ClientResult GetModels(RequestOptions options);
3454 public virtual ClientResult<OpenAIModelCollection> GetModels(CancellationToken cancellationToken = default);
3455 public virtual Task<ClientResult> GetModelsAsync(RequestOptions options);
3456 public virtual Task<ClientResult<OpenAIModelCollection>> GetModelsAsync(CancellationToken cancellationToken = default);
3457 }
3458 [Experimental("SCME0002")]
3459 public sealed class OpenAIModelClientSettings : ClientSettings {
3460 public OpenAIClientOptions Options { get; set; }
3461 protected override void BindCore(Microsoft.Extensions.Configuration.IConfigurationSection section);
3462 }
3463 public class OpenAIModelCollection : ObjectModel.ReadOnlyCollection<OpenAIModel>, IJsonModel<OpenAIModelCollection>, IPersistableModel<OpenAIModelCollection> {
3464 [Experimental("OPENAI001")]
3465 public static explicit operator OpenAIModelCollection(ClientResult result);
3466 }
3467 public static class OpenAIModelsModelFactory {
3468 public static ModelDeletionResult ModelDeletionResult(string modelId = null, bool deleted = false);
3469 public static OpenAIModel OpenAIModel(string id = null, DateTimeOffset createdAt = default, string ownedBy = null);
3470 public static OpenAIModelCollection OpenAIModelCollection(IEnumerable<OpenAIModel> items = null);
3471 }
3472}
3473namespace OpenAI.Moderations {
3474 [Experimental("OPENAI001")]
3475 [Flags]
3476 public enum ModerationApplicableInputKinds {
3477 None = 0,
3478 Other = 1,
3479 Text = 2,
3480 Image = 4
3481 }
3482 public class ModerationCategory {
3483 [Experimental("OPENAI001")]
3484 public ModerationApplicableInputKinds ApplicableInputKinds { get; }
3485 public bool Flagged { get; }
3486 public float Score { get; }
3487 }
3488 public class ModerationClient {
3489 protected ModerationClient();
3490 [Experimental("SCME0002")]
3491 public ModerationClient(ModerationClientSettings settings);
3492 protected internal ModerationClient(ClientPipeline pipeline, string model, OpenAIClientOptions options);
3493 public ModerationClient(string model, ApiKeyCredential credential, OpenAIClientOptions options);
3494 public ModerationClient(string model, ApiKeyCredential credential);
3495 [Experimental("OPENAI001")]
3496 public ModerationClient(string model, AuthenticationPolicy authenticationPolicy, OpenAIClientOptions options);
3497 [Experimental("OPENAI001")]
3498 public ModerationClient(string model, AuthenticationPolicy authenticationPolicy);
3499 public ModerationClient(string model, string apiKey);
3500 [Experimental("OPENAI001")]
3501 public Uri Endpoint { get; }
3502 [Experimental("OPENAI001")]
3503 public string Model { get; }
3504 public ClientPipeline Pipeline { get; }
3505 [Experimental("OPENAI001")]
3506 public virtual ClientResult ClassifyInputs(BinaryContent content, RequestOptions options = null);
3507 [Experimental("OPENAI001")]
3508 public virtual ClientResult<ModerationResult> ClassifyInputs(IEnumerable<ModerationInputPart> inputParts, CancellationToken cancellationToken = default);
3509 [Experimental("OPENAI001")]
3510 public virtual Task<ClientResult> ClassifyInputsAsync(BinaryContent content, RequestOptions options = null);
3511 [Experimental("OPENAI001")]
3512 public virtual Task<ClientResult<ModerationResult>> ClassifyInputsAsync(IEnumerable<ModerationInputPart> inputParts, CancellationToken cancellationToken = default);
3513 public virtual ClientResult ClassifyText(BinaryContent content, RequestOptions options = null);
3514 public virtual ClientResult<ModerationResultCollection> ClassifyText(IEnumerable<string> inputs, CancellationToken cancellationToken = default);
3515 public virtual ClientResult<ModerationResult> ClassifyText(string input, CancellationToken cancellationToken = default);
3516 public virtual Task<ClientResult> ClassifyTextAsync(BinaryContent content, RequestOptions options = null);
3517 public virtual Task<ClientResult<ModerationResultCollection>> ClassifyTextAsync(IEnumerable<string> inputs, CancellationToken cancellationToken = default);
3518 public virtual Task<ClientResult<ModerationResult>> ClassifyTextAsync(string input, CancellationToken cancellationToken = default);
3519 }
3520 [Experimental("SCME0002")]
3521 public sealed class ModerationClientSettings : ClientSettings {
3522 public string Model { get; set; }
3523 public OpenAIClientOptions Options { get; set; }
3524 protected override void BindCore(Microsoft.Extensions.Configuration.IConfigurationSection section);
3525 }
3526 [Experimental("OPENAI001")]
3527 public class ModerationInputPart : IJsonModel<ModerationInputPart>, IPersistableModel<ModerationInputPart> {
3528 public Uri ImageUri { get; }
3529 public ModerationInputPartKind Kind { get; }
3530 public string Text { get; }
3531 public static ModerationInputPart CreateImagePart(Uri imageUri);
3532 public static ModerationInputPart CreateTextPart(string text);
3533 }
3534 [Experimental("OPENAI001")]
3535 public enum ModerationInputPartKind {
3536 Text = 0,
3537 Image = 1
3538 }
3539 public class ModerationResult : IJsonModel<ModerationResult>, IPersistableModel<ModerationResult> {
3540 public bool Flagged { get; }
3541 public ModerationCategory Harassment { get; }
3542 public ModerationCategory HarassmentThreatening { get; }
3543 public ModerationCategory Hate { get; }
3544 public ModerationCategory HateThreatening { get; }
3545 public ModerationCategory Illicit { get; }
3546 public ModerationCategory IllicitViolent { get; }
3547 public ModerationCategory SelfHarm { get; }
3548 public ModerationCategory SelfHarmInstructions { get; }
3549 public ModerationCategory SelfHarmIntent { get; }
3550 public ModerationCategory Sexual { get; }
3551 public ModerationCategory SexualMinors { get; }
3552 public ModerationCategory Violence { get; }
3553 public ModerationCategory ViolenceGraphic { get; }
3554 }
3555 public class ModerationResultCollection : ObjectModel.ReadOnlyCollection<ModerationResult>, IJsonModel<ModerationResultCollection>, IPersistableModel<ModerationResultCollection> {
3556 public string Id { get; }
3557 public string Model { get; }
3558 [Experimental("OPENAI001")]
3559 public static explicit operator ModerationResultCollection(ClientResult result);
3560 }
3561 public static class OpenAIModerationsModelFactory {
3562 public static ModerationCategory ModerationCategory(bool flagged = false, float score = 0);
3563 [Experimental("OPENAI001")]
3564 public static ModerationResult ModerationResult(bool flagged = false, ModerationCategory hate = null, ModerationCategory hateThreatening = null, ModerationCategory harassment = null, ModerationCategory harassmentThreatening = null, ModerationCategory selfHarm = null, ModerationCategory selfHarmIntent = null, ModerationCategory selfHarmInstructions = null, ModerationCategory sexual = null, ModerationCategory sexualMinors = null, ModerationCategory violence = null, ModerationCategory violenceGraphic = null, ModerationCategory illicit = null, ModerationCategory illicitViolent = null);
3565 [EditorBrowsable(EditorBrowsableState.Never)]
3566 public static ModerationResult ModerationResult(bool flagged, ModerationCategory hate, ModerationCategory hateThreatening, ModerationCategory harassment, ModerationCategory harassmentThreatening, ModerationCategory selfHarm, ModerationCategory selfHarmIntent, ModerationCategory selfHarmInstructions, ModerationCategory sexual, ModerationCategory sexualMinors, ModerationCategory violence, ModerationCategory violenceGraphic);
3567 public static ModerationResultCollection ModerationResultCollection(string id = null, string model = null, IEnumerable<ModerationResult> items = null);
3568 }
3569}
3570namespace OpenAI.Realtime {
3571 [Experimental("OPENAI002")]
3572 public class CreateClientSecretOptions : IJsonModel<CreateClientSecretOptions>, IPersistableModel<CreateClientSecretOptions> {
3573 public RealtimeClientSecretExpirationPolicy ExpirationPolicy { get; set; }
3574 [Serialization.JsonIgnore]
3575 [EditorBrowsable(EditorBrowsableState.Never)]
3576 [Experimental("SCME0001")]
3577 public ref JsonPatch Patch { get; }
3578 public RealtimeSessionOptions SessionOptions { get; set; }
3579 public static implicit operator BinaryContent(CreateClientSecretOptions createClientSecretOptions);
3580 }
3581 [Experimental("OPENAI002")]
3582 public class CreateClientSecretResult : IJsonModel<CreateClientSecretResult>, IPersistableModel<CreateClientSecretResult> {
3583 public DateTimeOffset ExpiresAt { get; }
3584 [Serialization.JsonIgnore]
3585 [EditorBrowsable(EditorBrowsableState.Never)]
3586 [Experimental("SCME0001")]
3587 public ref JsonPatch Patch { get; }
3588 public RealtimeSession Session { get; }
3589 public string Value { get; }
3590 public static explicit operator CreateClientSecretResult(ClientResult result);
3591 }
3592 [Experimental("OPENAI002")]
3593 public class RealtimeAudioFormat : IJsonModel<RealtimeAudioFormat>, IPersistableModel<RealtimeAudioFormat> {
3594 [Serialization.JsonIgnore]
3595 [EditorBrowsable(EditorBrowsableState.Never)]
3596 [Experimental("SCME0001")]
3597 public ref JsonPatch Patch { get; }
3598 }
3599 [Experimental("OPENAI002")]
3600 public class RealtimeAudioTranscriptionOptions : IJsonModel<RealtimeAudioTranscriptionOptions>, IPersistableModel<RealtimeAudioTranscriptionOptions> {
3601 public string Language { get; set; }
3602 public string Model { get; set; }
3603 [Serialization.JsonIgnore]
3604 [EditorBrowsable(EditorBrowsableState.Never)]
3605 [Experimental("SCME0001")]
3606 public ref JsonPatch Patch { get; }
3607 public string Prompt { get; set; }
3608 }
3609 [Experimental("OPENAI002")]
3610 public class RealtimeClient {
3611 protected RealtimeClient();
3612 [Experimental("SCME0002")]
3613 public RealtimeClient(RealtimeClientSettings settings);
3614 public RealtimeClient(ApiKeyCredential credential, RealtimeClientOptions options);
3615 public RealtimeClient(ApiKeyCredential credential);
3616 [Experimental("OPENAI001")]
3617 public RealtimeClient(AuthenticationPolicy authenticationPolicy, RealtimeClientOptions options);
3618 [Experimental("OPENAI001")]
3619 public RealtimeClient(AuthenticationPolicy authenticationPolicy);
3620 protected internal RealtimeClient(ClientPipeline pipeline, RealtimeClientOptions options);
3621 public RealtimeClient(string apiKey);
3622 [Experimental("OPENAI001")]
3623 public Uri Endpoint { get; }
3624 public ClientPipeline Pipeline { get; }
3625 public event EventHandler<BinaryData> OnReceivingCommand {
3626 add;
3627 remove;
3628 }
3629 public event EventHandler<BinaryData> OnSendingCommand {
3630 add;
3631 remove;
3632 }
3633 public virtual ClientResult<CreateClientSecretResult> CreateRealtimeClientSecret(CreateClientSecretOptions options, CancellationToken cancellationToken = default);
3634 public virtual ClientResult CreateRealtimeClientSecret(BinaryContent content, RequestOptions options = null);
3635 public virtual Task<ClientResult<CreateClientSecretResult>> CreateRealtimeClientSecretAsync(CreateClientSecretOptions options, CancellationToken cancellationToken = default);
3636 public virtual Task<ClientResult> CreateRealtimeClientSecretAsync(BinaryContent content, RequestOptions options = null);
3637 public virtual RealtimeSessionClient StartConversationSession(string model, RealtimeSessionClientOptions options = null, CancellationToken cancellationToken = default);
3638 public virtual Task<RealtimeSessionClient> StartConversationSessionAsync(string model, RealtimeSessionClientOptions options = null, CancellationToken cancellationToken = default);
3639 public virtual RealtimeSessionClient StartSession(string model, string intent, RealtimeSessionClientOptions options = null, CancellationToken cancellationToken = default);
3640 public virtual Task<RealtimeSessionClient> StartSessionAsync(string model, string intent, RealtimeSessionClientOptions options = null, CancellationToken cancellationToken = default);
3641 public virtual RealtimeSessionClient StartTranscriptionSession(RealtimeSessionClientOptions options = null, CancellationToken cancellationToken = default);
3642 public virtual Task<RealtimeSessionClient> StartTranscriptionSessionAsync(RealtimeSessionClientOptions options = null, CancellationToken cancellationToken = default);
3643 }
3644 [Experimental("OPENAI002")]
3645 public class RealtimeClientCommand : IJsonModel<RealtimeClientCommand>, IPersistableModel<RealtimeClientCommand> {
3646 [Serialization.JsonIgnore]
3647 [EditorBrowsable(EditorBrowsableState.Never)]
3648 [Experimental("SCME0001")]
3649 public ref JsonPatch Patch { get; }
3650 }
3651 [Experimental("OPENAI002")]
3652 public class RealtimeClientCommandConversationItemCreate : RealtimeClientCommand, IJsonModel<RealtimeClientCommandConversationItemCreate>, IPersistableModel<RealtimeClientCommandConversationItemCreate> {
3653 public RealtimeClientCommandConversationItemCreate(RealtimeItem item);
3654 public string EventId { get; set; }
3655 public RealtimeItem Item { get; }
3656 public string PreviousItemId { get; set; }
3657 }
3658 [Experimental("OPENAI002")]
3659 public class RealtimeClientCommandConversationItemDelete : RealtimeClientCommand, IJsonModel<RealtimeClientCommandConversationItemDelete>, IPersistableModel<RealtimeClientCommandConversationItemDelete> {
3660 public RealtimeClientCommandConversationItemDelete(string itemId);
3661 public string EventId { get; set; }
3662 public string ItemId { get; }
3663 }
3664 [Experimental("OPENAI002")]
3665 public class RealtimeClientCommandConversationItemRetrieve : RealtimeClientCommand, IJsonModel<RealtimeClientCommandConversationItemRetrieve>, IPersistableModel<RealtimeClientCommandConversationItemRetrieve> {
3666 public RealtimeClientCommandConversationItemRetrieve(string itemId);
3667 public string EventId { get; set; }
3668 public string ItemId { get; }
3669 }
3670 [Experimental("OPENAI002")]
3671 public class RealtimeClientCommandConversationItemTruncate : RealtimeClientCommand, IJsonModel<RealtimeClientCommandConversationItemTruncate>, IPersistableModel<RealtimeClientCommandConversationItemTruncate> {
3672 public RealtimeClientCommandConversationItemTruncate(string itemId, int contentIndex, TimeSpan audioEndTime);
3673 public TimeSpan AudioEndTime { get; }
3674 public int ContentIndex { get; }
3675 public string EventId { get; set; }
3676 public string ItemId { get; }
3677 }
3678 [Experimental("OPENAI002")]
3679 public class RealtimeClientCommandInputAudioBufferAppend : RealtimeClientCommand, IJsonModel<RealtimeClientCommandInputAudioBufferAppend>, IPersistableModel<RealtimeClientCommandInputAudioBufferAppend> {
3680 public RealtimeClientCommandInputAudioBufferAppend(BinaryData audioBytes);
3681 public BinaryData AudioBytes { get; }
3682 public string EventId { get; set; }
3683 }
3684 [Experimental("OPENAI002")]
3685 public class RealtimeClientCommandInputAudioBufferClear : RealtimeClientCommand, IJsonModel<RealtimeClientCommandInputAudioBufferClear>, IPersistableModel<RealtimeClientCommandInputAudioBufferClear> {
3686 public RealtimeClientCommandInputAudioBufferClear();
3687 public string EventId { get; set; }
3688 }
3689 [Experimental("OPENAI002")]
3690 public class RealtimeClientCommandInputAudioBufferCommit : RealtimeClientCommand, IJsonModel<RealtimeClientCommandInputAudioBufferCommit>, IPersistableModel<RealtimeClientCommandInputAudioBufferCommit> {
3691 public RealtimeClientCommandInputAudioBufferCommit();
3692 public string EventId { get; set; }
3693 }
3694 [Experimental("OPENAI002")]
3695 public class RealtimeClientCommandOutputAudioBufferClear : RealtimeClientCommand, IJsonModel<RealtimeClientCommandOutputAudioBufferClear>, IPersistableModel<RealtimeClientCommandOutputAudioBufferClear> {
3696 public RealtimeClientCommandOutputAudioBufferClear();
3697 public string EventId { get; set; }
3698 }
3699 [Experimental("OPENAI002")]
3700 public class RealtimeClientCommandResponseCancel : RealtimeClientCommand, IJsonModel<RealtimeClientCommandResponseCancel>, IPersistableModel<RealtimeClientCommandResponseCancel> {
3701 public RealtimeClientCommandResponseCancel();
3702 public string EventId { get; set; }
3703 public string ResponseId { get; set; }
3704 }
3705 [Experimental("OPENAI002")]
3706 public class RealtimeClientCommandResponseCreate : RealtimeClientCommand, IJsonModel<RealtimeClientCommandResponseCreate>, IPersistableModel<RealtimeClientCommandResponseCreate> {
3707 public RealtimeClientCommandResponseCreate();
3708 public string EventId { get; set; }
3709 public RealtimeResponseOptions ResponseOptions { get; set; }
3710 }
3711 [Experimental("OPENAI002")]
3712 public class RealtimeClientCommandSessionUpdate : RealtimeClientCommand, IJsonModel<RealtimeClientCommandSessionUpdate>, IPersistableModel<RealtimeClientCommandSessionUpdate> {
3713 public RealtimeClientCommandSessionUpdate(RealtimeSessionOptions sessionOptions);
3714 public string EventId { get; set; }
3715 public RealtimeSessionOptions SessionOptions { get; }
3716 }
3717 public class RealtimeClientOptions : ClientPipelineOptions {
3718 public Uri Endpoint { get; set; }
3719 public string OrganizationId { get; set; }
3720 public string ProjectId { get; set; }
3721 public string UserAgentApplicationId { get; set; }
3722 }
3723 [Experimental("OPENAI002")]
3724 public class RealtimeClientSecret : IJsonModel<RealtimeClientSecret>, IPersistableModel<RealtimeClientSecret> {
3725 public DateTimeOffset ExpiresAt { get; }
3726 [Serialization.JsonIgnore]
3727 [EditorBrowsable(EditorBrowsableState.Never)]
3728 [Experimental("SCME0001")]
3729 public ref JsonPatch Patch { get; }
3730 public string Value { get; }
3731 }
3732 [Experimental("OPENAI002")]
3733 public readonly partial struct RealtimeClientSecretExpirationAnchor : IEquatable<RealtimeClientSecretExpirationAnchor> {
3734 public RealtimeClientSecretExpirationAnchor(string value);
3735 public static RealtimeClientSecretExpirationAnchor CreatedAt { get; }
3736 public readonly bool Equals(RealtimeClientSecretExpirationAnchor other);
3737 [EditorBrowsable(EditorBrowsableState.Never)]
3738 public override readonly bool Equals(object obj);
3739 [EditorBrowsable(EditorBrowsableState.Never)]
3740 public override readonly int GetHashCode();
3741 public static bool operator ==(RealtimeClientSecretExpirationAnchor left, RealtimeClientSecretExpirationAnchor right);
3742 public static implicit operator RealtimeClientSecretExpirationAnchor(string value);
3743 public static implicit operator RealtimeClientSecretExpirationAnchor?(string value);
3744 public static bool operator !=(RealtimeClientSecretExpirationAnchor left, RealtimeClientSecretExpirationAnchor right);
3745 public override readonly string ToString();
3746 }
3747 [Experimental("OPENAI002")]
3748 public class RealtimeClientSecretExpirationPolicy : IJsonModel<RealtimeClientSecretExpirationPolicy>, IPersistableModel<RealtimeClientSecretExpirationPolicy> {
3749 public RealtimeClientSecretExpirationAnchor? Anchor { get; set; }
3750 [Serialization.JsonIgnore]
3751 [EditorBrowsable(EditorBrowsableState.Never)]
3752 [Experimental("SCME0001")]
3753 public ref JsonPatch Patch { get; }
3754 public int? Seconds { get; set; }
3755 }
3756 [Experimental("SCME0002")]
3757 public sealed class RealtimeClientSettings : ClientSettings {
3758 public OpenAIClientOptions Options { get; set; }
3759 protected override void BindCore(Microsoft.Extensions.Configuration.IConfigurationSection section);
3760 }
3761 [Experimental("OPENAI002")]
3762 public class RealtimeConversation : IJsonModel<RealtimeConversation>, IPersistableModel<RealtimeConversation> {
3763 public string Id { get; }
3764 [Serialization.JsonIgnore]
3765 [EditorBrowsable(EditorBrowsableState.Never)]
3766 [Experimental("SCME0001")]
3767 public ref JsonPatch Patch { get; }
3768 }
3769 [Experimental("OPENAI002")]
3770 public class RealtimeConversationSession : RealtimeSession, IJsonModel<RealtimeConversationSession>, IPersistableModel<RealtimeConversationSession> {
3771 public RealtimeConversationSessionAudioOptions AudioOptions { get; set; }
3772 public RealtimeClientSecret ClientSecret { get; }
3773 public IList<RealtimeIncludedProperty> IncludedProperties { get; }
3774 public string Instructions { get; }
3775 public RealtimeMaxOutputTokenCount MaxOutputTokenCount { get; set; }
3776 public string Model { get; set; }
3777 public IList<RealtimeOutputModality> OutputModalities { get; }
3778 public RealtimeToolChoice ToolChoice { get; set; }
3779 public IList<RealtimeTool> Tools { get; }
3780 public RealtimeTracing Tracing { get; set; }
3781 public RealtimeTruncation Truncation { get; set; }
3782 }
3783 [Experimental("OPENAI002")]
3784 public class RealtimeConversationSessionAudioOptions : IJsonModel<RealtimeConversationSessionAudioOptions>, IPersistableModel<RealtimeConversationSessionAudioOptions> {
3785 public RealtimeConversationSessionInputAudioOptions InputAudioOptions { get; set; }
3786 public RealtimeConversationSessionOutputAudioOptions OutputAudioOptions { get; set; }
3787 [Serialization.JsonIgnore]
3788 [EditorBrowsable(EditorBrowsableState.Never)]
3789 [Experimental("SCME0001")]
3790 public ref JsonPatch Patch { get; }
3791 }
3792 [Experimental("OPENAI002")]
3793 public class RealtimeConversationSessionInputAudioOptions : IJsonModel<RealtimeConversationSessionInputAudioOptions>, IPersistableModel<RealtimeConversationSessionInputAudioOptions> {
3794 public RealtimeAudioFormat AudioFormat { get; set; }
3795 public RealtimeAudioTranscriptionOptions AudioTranscriptionOptions { get; set; }
3796 public RealtimeNoiseReduction NoiseReduction { get; set; }
3797 [Serialization.JsonIgnore]
3798 [EditorBrowsable(EditorBrowsableState.Never)]
3799 [Experimental("SCME0001")]
3800 public ref JsonPatch Patch { get; }
3801 public RealtimeTurnDetection TurnDetection { get; set; }
3802 public void DisableTurnDetection();
3803 }
3804 [Experimental("OPENAI002")]
3805 public class RealtimeConversationSessionOptions : RealtimeSessionOptions, IJsonModel<RealtimeConversationSessionOptions>, IPersistableModel<RealtimeConversationSessionOptions> {
3806 public RealtimeConversationSessionOptions();
3807 public RealtimeConversationSessionAudioOptions AudioOptions { get; set; }
3808 public IList<RealtimeIncludedProperty> IncludedProperties { get; }
3809 public string Instructions { get; set; }
3810 public RealtimeMaxOutputTokenCount MaxOutputTokenCount { get; set; }
3811 public string Model { get; set; }
3812 public IList<RealtimeOutputModality> OutputModalities { get; }
3813 public RealtimeToolChoice ToolChoice { get; set; }
3814 public IList<RealtimeTool> Tools { get; }
3815 public RealtimeTracing Tracing { get; set; }
3816 public RealtimeTruncation Truncation { get; set; }
3817 }
3818 [Experimental("OPENAI002")]
3819 public class RealtimeConversationSessionOutputAudioOptions : IJsonModel<RealtimeConversationSessionOutputAudioOptions>, IPersistableModel<RealtimeConversationSessionOutputAudioOptions> {
3820 public RealtimeAudioFormat AudioFormat { get; set; }
3821 [Serialization.JsonIgnore]
3822 [EditorBrowsable(EditorBrowsableState.Never)]
3823 [Experimental("SCME0001")]
3824 public ref JsonPatch Patch { get; }
3825 public float? Speed { get; set; }
3826 public RealtimeVoice? Voice { get; set; }
3827 }
3828 [Experimental("OPENAI002")]
3829 public class RealtimeCustomFunctionToolChoice : RealtimeCustomToolChoice, IJsonModel<RealtimeCustomFunctionToolChoice>, IPersistableModel<RealtimeCustomFunctionToolChoice> {
3830 public RealtimeCustomFunctionToolChoice(string functionName);
3831 public string FunctionName { get; set; }
3832 }
3833 [Experimental("OPENAI002")]
3834 public class RealtimeCustomMcpToolCallApprovalPolicy : IJsonModel<RealtimeCustomMcpToolCallApprovalPolicy>, IPersistableModel<RealtimeCustomMcpToolCallApprovalPolicy> {
3835 [Serialization.JsonIgnore]
3836 [EditorBrowsable(EditorBrowsableState.Never)]
3837 [Experimental("SCME0001")]
3838 public ref JsonPatch Patch { get; }
3839 public RealtimeMcpToolFilter ToolsAlwaysRequiringApproval { get; set; }
3840 public RealtimeMcpToolFilter ToolsNeverRequiringApproval { get; set; }
3841 }
3842 [Experimental("OPENAI002")]
3843 public class RealtimeCustomMcpToolChoice : RealtimeCustomToolChoice, IJsonModel<RealtimeCustomMcpToolChoice>, IPersistableModel<RealtimeCustomMcpToolChoice> {
3844 public RealtimeCustomMcpToolChoice(string serverLabel);
3845 public string McpToolName { get; set; }
3846 public string ServerLabel { get; set; }
3847 }
3848 [Experimental("OPENAI002")]
3849 public class RealtimeCustomRetentionRatioTruncation : RealtimeCustomTruncation, IJsonModel<RealtimeCustomRetentionRatioTruncation>, IPersistableModel<RealtimeCustomRetentionRatioTruncation> {
3850 public RealtimeCustomRetentionRatioTruncation(float retentionRatio);
3851 public float RetentionRatio { get; set; }
3852 public RealtimeRetentionRatioTokenLimitDetails TokenLimitDetails { get; set; }
3853 }
3854 [Experimental("OPENAI002")]
3855 public class RealtimeCustomToolChoice : IJsonModel<RealtimeCustomToolChoice>, IPersistableModel<RealtimeCustomToolChoice> {
3856 [Serialization.JsonIgnore]
3857 [EditorBrowsable(EditorBrowsableState.Never)]
3858 [Experimental("SCME0001")]
3859 public ref JsonPatch Patch { get; }
3860 }
3861 [Experimental("OPENAI002")]
3862 public class RealtimeCustomTracing : IJsonModel<RealtimeCustomTracing>, IPersistableModel<RealtimeCustomTracing> {
3863 public string GroupId { get; set; }
3864 public IDictionary<string, BinaryData> Metadata { get; }
3865 [Serialization.JsonIgnore]
3866 [EditorBrowsable(EditorBrowsableState.Never)]
3867 [Experimental("SCME0001")]
3868 public ref JsonPatch Patch { get; }
3869 public string WorkflowName { get; set; }
3870 }
3871 [Experimental("OPENAI002")]
3872 public class RealtimeCustomTruncation : IJsonModel<RealtimeCustomTruncation>, IPersistableModel<RealtimeCustomTruncation> {
3873 [Serialization.JsonIgnore]
3874 [EditorBrowsable(EditorBrowsableState.Never)]
3875 [Experimental("SCME0001")]
3876 public ref JsonPatch Patch { get; }
3877 }
3878 [Experimental("OPENAI002")]
3879 public readonly partial struct RealtimeDefaultMaxOutputTokenCount : IEquatable<RealtimeDefaultMaxOutputTokenCount> {
3880 public RealtimeDefaultMaxOutputTokenCount(string value);
3881 public static RealtimeDefaultMaxOutputTokenCount Infinity { get; }
3882 public readonly bool Equals(RealtimeDefaultMaxOutputTokenCount other);
3883 [EditorBrowsable(EditorBrowsableState.Never)]
3884 public override readonly bool Equals(object obj);
3885 [EditorBrowsable(EditorBrowsableState.Never)]
3886 public override readonly int GetHashCode();
3887 public static bool operator ==(RealtimeDefaultMaxOutputTokenCount left, RealtimeDefaultMaxOutputTokenCount right);
3888 public static implicit operator RealtimeDefaultMaxOutputTokenCount(string value);
3889 public static implicit operator RealtimeDefaultMaxOutputTokenCount?(string value);
3890 public static bool operator !=(RealtimeDefaultMaxOutputTokenCount left, RealtimeDefaultMaxOutputTokenCount right);
3891 public override readonly string ToString();
3892 }
3893 [Experimental("OPENAI002")]
3894 public readonly partial struct RealtimeDefaultMcpToolCallApprovalPolicy : IEquatable<RealtimeDefaultMcpToolCallApprovalPolicy> {
3895 public RealtimeDefaultMcpToolCallApprovalPolicy(string value);
3896 public static RealtimeDefaultMcpToolCallApprovalPolicy AlwaysRequireApproval { get; }
3897 public static RealtimeDefaultMcpToolCallApprovalPolicy NeverRequireApproval { get; }
3898 public readonly bool Equals(RealtimeDefaultMcpToolCallApprovalPolicy other);
3899 [EditorBrowsable(EditorBrowsableState.Never)]
3900 public override readonly bool Equals(object obj);
3901 [EditorBrowsable(EditorBrowsableState.Never)]
3902 public override readonly int GetHashCode();
3903 public static bool operator ==(RealtimeDefaultMcpToolCallApprovalPolicy left, RealtimeDefaultMcpToolCallApprovalPolicy right);
3904 public static implicit operator RealtimeDefaultMcpToolCallApprovalPolicy(string value);
3905 public static implicit operator RealtimeDefaultMcpToolCallApprovalPolicy?(string value);
3906 public static bool operator !=(RealtimeDefaultMcpToolCallApprovalPolicy left, RealtimeDefaultMcpToolCallApprovalPolicy right);
3907 public override readonly string ToString();
3908 }
3909 [Experimental("OPENAI002")]
3910 public readonly partial struct RealtimeDefaultToolChoice : IEquatable<RealtimeDefaultToolChoice> {
3911 public RealtimeDefaultToolChoice(string value);
3912 public static RealtimeDefaultToolChoice Auto { get; }
3913 public static RealtimeDefaultToolChoice None { get; }
3914 public static RealtimeDefaultToolChoice Required { get; }
3915 public readonly bool Equals(RealtimeDefaultToolChoice other);
3916 [EditorBrowsable(EditorBrowsableState.Never)]
3917 public override readonly bool Equals(object obj);
3918 [EditorBrowsable(EditorBrowsableState.Never)]
3919 public override readonly int GetHashCode();
3920 public static bool operator ==(RealtimeDefaultToolChoice left, RealtimeDefaultToolChoice right);
3921 public static implicit operator RealtimeDefaultToolChoice(string value);
3922 public static implicit operator RealtimeDefaultToolChoice?(string value);
3923 public static bool operator !=(RealtimeDefaultToolChoice left, RealtimeDefaultToolChoice right);
3924 public override readonly string ToString();
3925 }
3926 [Experimental("OPENAI002")]
3927 public readonly partial struct RealtimeDefaultTracing : IEquatable<RealtimeDefaultTracing> {
3928 public RealtimeDefaultTracing(string value);
3929 public static RealtimeDefaultTracing Auto { get; }
3930 public readonly bool Equals(RealtimeDefaultTracing other);
3931 [EditorBrowsable(EditorBrowsableState.Never)]
3932 public override readonly bool Equals(object obj);
3933 [EditorBrowsable(EditorBrowsableState.Never)]
3934 public override readonly int GetHashCode();
3935 public static bool operator ==(RealtimeDefaultTracing left, RealtimeDefaultTracing right);
3936 public static implicit operator RealtimeDefaultTracing(string value);
3937 public static implicit operator RealtimeDefaultTracing?(string value);
3938 public static bool operator !=(RealtimeDefaultTracing left, RealtimeDefaultTracing right);
3939 public override readonly string ToString();
3940 }
3941 [Experimental("OPENAI002")]
3942 public readonly partial struct RealtimeDefaultTruncation : IEquatable<RealtimeDefaultTruncation> {
3943 public RealtimeDefaultTruncation(string value);
3944 public static RealtimeDefaultTruncation Auto { get; }
3945 public static RealtimeDefaultTruncation Disabled { get; }
3946 public readonly bool Equals(RealtimeDefaultTruncation other);
3947 [EditorBrowsable(EditorBrowsableState.Never)]
3948 public override readonly bool Equals(object obj);
3949 [EditorBrowsable(EditorBrowsableState.Never)]
3950 public override readonly int GetHashCode();
3951 public static bool operator ==(RealtimeDefaultTruncation left, RealtimeDefaultTruncation right);
3952 public static implicit operator RealtimeDefaultTruncation(string value);
3953 public static implicit operator RealtimeDefaultTruncation?(string value);
3954 public static bool operator !=(RealtimeDefaultTruncation left, RealtimeDefaultTruncation right);
3955 public override readonly string ToString();
3956 }
3957 [Experimental("OPENAI002")]
3958 public class RealtimeError : IJsonModel<RealtimeError>, IPersistableModel<RealtimeError> {
3959 public string Code { get; set; }
3960 public string EventId { get; set; }
3961 public string Kind { get; set; }
3962 public string Message { get; set; }
3963 public string ParameterName { get; }
3964 [Serialization.JsonIgnore]
3965 [EditorBrowsable(EditorBrowsableState.Never)]
3966 [Experimental("SCME0001")]
3967 public ref JsonPatch Patch { get; }
3968 }
3969 [Experimental("OPENAI002")]
3970 public class RealtimeFunctionCallItem : RealtimeItem, IJsonModel<RealtimeFunctionCallItem>, IPersistableModel<RealtimeFunctionCallItem> {
3971 public RealtimeFunctionCallItem(string callId, string functionName, BinaryData functionArguments);
3972 public string CallId { get; set; }
3973 public BinaryData FunctionArguments { get; set; }
3974 public string FunctionName { get; set; }
3975 public string Id { get; set; }
3976 public RealtimeFunctionCallStatus? Status { get; set; }
3977 }
3978 [Experimental("OPENAI002")]
3979 public class RealtimeFunctionCallOutputItem : RealtimeItem, IJsonModel<RealtimeFunctionCallOutputItem>, IPersistableModel<RealtimeFunctionCallOutputItem> {
3980 public RealtimeFunctionCallOutputItem(string callId, string functionOutput);
3981 public string CallId { get; set; }
3982 public string FunctionOutput { get; set; }
3983 public string Id { get; set; }
3984 public RealtimeFunctionCallOutputStatus? Status { get; set; }
3985 }
3986 [Experimental("OPENAI002")]
3987 public readonly partial struct RealtimeFunctionCallOutputStatus : IEquatable<RealtimeFunctionCallOutputStatus> {
3988 public RealtimeFunctionCallOutputStatus(string value);
3989 public static RealtimeFunctionCallOutputStatus Completed { get; }
3990 public static RealtimeFunctionCallOutputStatus Incomplete { get; }
3991 public static RealtimeFunctionCallOutputStatus InProgress { get; }
3992 public readonly bool Equals(RealtimeFunctionCallOutputStatus other);
3993 [EditorBrowsable(EditorBrowsableState.Never)]
3994 public override readonly bool Equals(object obj);
3995 [EditorBrowsable(EditorBrowsableState.Never)]
3996 public override readonly int GetHashCode();
3997 public static bool operator ==(RealtimeFunctionCallOutputStatus left, RealtimeFunctionCallOutputStatus right);
3998 public static implicit operator RealtimeFunctionCallOutputStatus(string value);
3999 public static implicit operator RealtimeFunctionCallOutputStatus?(string value);
4000 public static bool operator !=(RealtimeFunctionCallOutputStatus left, RealtimeFunctionCallOutputStatus right);
4001 public override readonly string ToString();
4002 }
4003 [Experimental("OPENAI002")]
4004 public readonly partial struct RealtimeFunctionCallStatus : IEquatable<RealtimeFunctionCallStatus> {
4005 public RealtimeFunctionCallStatus(string value);
4006 public static RealtimeFunctionCallStatus Completed { get; }
4007 public static RealtimeFunctionCallStatus Incomplete { get; }
4008 public static RealtimeFunctionCallStatus InProgress { get; }
4009 public readonly bool Equals(RealtimeFunctionCallStatus other);
4010 [EditorBrowsable(EditorBrowsableState.Never)]
4011 public override readonly bool Equals(object obj);
4012 [EditorBrowsable(EditorBrowsableState.Never)]
4013 public override readonly int GetHashCode();
4014 public static bool operator ==(RealtimeFunctionCallStatus left, RealtimeFunctionCallStatus right);
4015 public static implicit operator RealtimeFunctionCallStatus(string value);
4016 public static implicit operator RealtimeFunctionCallStatus?(string value);
4017 public static bool operator !=(RealtimeFunctionCallStatus left, RealtimeFunctionCallStatus right);
4018 public override readonly string ToString();
4019 }
4020 [Experimental("OPENAI002")]
4021 public class RealtimeFunctionTool : RealtimeTool, IJsonModel<RealtimeFunctionTool>, IPersistableModel<RealtimeFunctionTool> {
4022 public RealtimeFunctionTool(string functionName);
4023 public string FunctionDescription { get; set; }
4024 public string FunctionName { get; }
4025 public BinaryData FunctionParameters { get; set; }
4026 }
4027 [Experimental("OPENAI002")]
4028 public readonly partial struct RealtimeImageDetailLevel : IEquatable<RealtimeImageDetailLevel> {
4029 public RealtimeImageDetailLevel(string value);
4030 public static RealtimeImageDetailLevel Auto { get; }
4031 public static RealtimeImageDetailLevel High { get; }
4032 public static RealtimeImageDetailLevel Low { get; }
4033 public readonly bool Equals(RealtimeImageDetailLevel other);
4034 [EditorBrowsable(EditorBrowsableState.Never)]
4035 public override readonly bool Equals(object obj);
4036 [EditorBrowsable(EditorBrowsableState.Never)]
4037 public override readonly int GetHashCode();
4038 public static bool operator ==(RealtimeImageDetailLevel left, RealtimeImageDetailLevel right);
4039 public static implicit operator RealtimeImageDetailLevel(string value);
4040 public static implicit operator RealtimeImageDetailLevel?(string value);
4041 public static bool operator !=(RealtimeImageDetailLevel left, RealtimeImageDetailLevel right);
4042 public override readonly string ToString();
4043 }
4044 [Experimental("OPENAI002")]
4045 public readonly partial struct RealtimeIncludedProperty : IEquatable<RealtimeIncludedProperty> {
4046 public RealtimeIncludedProperty(string value);
4047 public static RealtimeIncludedProperty ItemInputAudioTranscriptionLogProbabilities { get; }
4048 public readonly bool Equals(RealtimeIncludedProperty other);
4049 [EditorBrowsable(EditorBrowsableState.Never)]
4050 public override readonly bool Equals(object obj);
4051 [EditorBrowsable(EditorBrowsableState.Never)]
4052 public override readonly int GetHashCode();
4053 public static bool operator ==(RealtimeIncludedProperty left, RealtimeIncludedProperty right);
4054 public static implicit operator RealtimeIncludedProperty(string value);
4055 public static implicit operator RealtimeIncludedProperty?(string value);
4056 public static bool operator !=(RealtimeIncludedProperty left, RealtimeIncludedProperty right);
4057 public override readonly string ToString();
4058 }
4059 [Experimental("OPENAI002")]
4060 public class RealtimeInputAudioMessageContentPart : RealtimeMessageContentPart, IJsonModel<RealtimeInputAudioMessageContentPart>, IPersistableModel<RealtimeInputAudioMessageContentPart> {
4061 public RealtimeInputAudioMessageContentPart(BinaryData audioBytes);
4062 public BinaryData AudioBytes { get; set; }
4063 public string Transcript { get; set; }
4064 }
4065 [Experimental("OPENAI002")]
4066 public class RealtimeInputImageMessageContentPart : RealtimeMessageContentPart, IJsonModel<RealtimeInputImageMessageContentPart>, IPersistableModel<RealtimeInputImageMessageContentPart> {
4067 public RealtimeInputImageMessageContentPart(Uri imageUri);
4068 public RealtimeImageDetailLevel? Detail { get; set; }
4069 public Uri ImageUri { get; set; }
4070 }
4071 [Experimental("OPENAI002")]
4072 public class RealtimeInputTextMessageContentPart : RealtimeMessageContentPart, IJsonModel<RealtimeInputTextMessageContentPart>, IPersistableModel<RealtimeInputTextMessageContentPart> {
4073 public RealtimeInputTextMessageContentPart(string text);
4074 public string Text { get; set; }
4075 }
4076 [Experimental("OPENAI002")]
4077 public class RealtimeItem : IJsonModel<RealtimeItem>, IPersistableModel<RealtimeItem> {
4078 [Serialization.JsonIgnore]
4079 [EditorBrowsable(EditorBrowsableState.Never)]
4080 [Experimental("SCME0001")]
4081 public ref JsonPatch Patch { get; }
4082 public static RealtimeMessageItem CreateAssistantMessageItem(IEnumerable<RealtimeMessageContentPart> contentParts);
4083 public static RealtimeMessageItem CreateAssistantMessageItem(string outputTextContent);
4084 public static RealtimeFunctionCallItem CreateFunctionCallItem(string callId, string functionName, BinaryData functionArguments);
4085 public static RealtimeFunctionCallOutputItem CreateFunctionCallOutputItem(string callId, string functionOutput);
4086 public static RealtimeMcpToolCallApprovalRequestItem CreateMcpApprovalRequestItem(string id, string serverLabel, string name, BinaryData arguments);
4087 public static RealtimeMcpToolCallApprovalResponseItem CreateMcpApprovalResponseItem(string approvalRequestId, bool approved);
4088 public static RealtimeMcpToolCallItem CreateMcpToolCallItem(string serverLabel, string name, BinaryData arguments);
4089 public static RealtimeMcpToolDefinitionListItem CreateMcpToolDefinitionListItem(string serverLabel, IEnumerable<RealtimeMcpToolDefinition> toolDefinitions);
4090 public static RealtimeMessageItem CreateSystemMessageItem(IEnumerable<RealtimeMessageContentPart> contentParts);
4091 public static RealtimeMessageItem CreateSystemMessageItem(string inputTextContent);
4092 public static RealtimeMessageItem CreateUserMessageItem(IEnumerable<RealtimeMessageContentPart> contentParts);
4093 public static RealtimeMessageItem CreateUserMessageItem(string inputTextContent);
4094 }
4095 [Experimental("OPENAI002")]
4096 public class RealtimeLogProbabilityDetails : IJsonModel<RealtimeLogProbabilityDetails>, IPersistableModel<RealtimeLogProbabilityDetails> {
4097 public float LogProbability { get; }
4098 [Serialization.JsonIgnore]
4099 [EditorBrowsable(EditorBrowsableState.Never)]
4100 [Experimental("SCME0001")]
4101 public ref JsonPatch Patch { get; }
4102 public string Token { get; }
4103 public ReadOnlyMemory<byte> Utf8Bytes { get; }
4104 }
4105 [Experimental("OPENAI002")]
4106 public class RealtimeMaxOutputTokenCount : IJsonModel<RealtimeMaxOutputTokenCount>, IPersistableModel<RealtimeMaxOutputTokenCount> {
4107 public RealtimeMaxOutputTokenCount(RealtimeDefaultMaxOutputTokenCount defaultMaxOutputTokenCount);
4108 public RealtimeMaxOutputTokenCount(int customMaxOutputTokenCount);
4109 public int? CustomMaxOutputTokenCount { get; }
4110 public RealtimeDefaultMaxOutputTokenCount? DefaultMaxOutputTokenCount { get; }
4111 [Serialization.JsonIgnore]
4112 [EditorBrowsable(EditorBrowsableState.Never)]
4113 [Experimental("SCME0001")]
4114 public ref JsonPatch Patch { get; }
4115 public static implicit operator RealtimeMaxOutputTokenCount(RealtimeDefaultMaxOutputTokenCount defaultMaxOutputTokenCount);
4116 public static implicit operator RealtimeMaxOutputTokenCount(int customMaxOutputTokenCount);
4117 }
4118 [Experimental("OPENAI002")]
4119 public class RealtimeMcpTool : RealtimeTool, IJsonModel<RealtimeMcpTool>, IPersistableModel<RealtimeMcpTool> {
4120 public RealtimeMcpTool(string serverLabel, RealtimeMcpToolConnectorId connectorId);
4121 public RealtimeMcpTool(string serverLabel, Uri serverUri);
4122 public RealtimeMcpToolFilter AllowedTools { get; set; }
4123 public string AuthorizationToken { get; set; }
4124 public RealtimeMcpToolConnectorId? ConnectorId { get; set; }
4125 public IDictionary<string, string> Headers { get; set; }
4126 public string ServerDescription { get; set; }
4127 public string ServerLabel { get; set; }
4128 public Uri ServerUri { get; set; }
4129 public RealtimeMcpToolCallApprovalPolicy ToolCallApprovalPolicy { get; set; }
4130 }
4131 [Experimental("OPENAI002")]
4132 public class RealtimeMcpToolCallApprovalPolicy : IJsonModel<RealtimeMcpToolCallApprovalPolicy>, IPersistableModel<RealtimeMcpToolCallApprovalPolicy> {
4133 public RealtimeMcpToolCallApprovalPolicy(RealtimeCustomMcpToolCallApprovalPolicy customPolicy);
4134 public RealtimeMcpToolCallApprovalPolicy(RealtimeDefaultMcpToolCallApprovalPolicy defaultPolicy);
4135 public RealtimeCustomMcpToolCallApprovalPolicy CustomPolicy { get; }
4136 public RealtimeDefaultMcpToolCallApprovalPolicy? DefaultPolicy { get; }
4137 [Serialization.JsonIgnore]
4138 [EditorBrowsable(EditorBrowsableState.Never)]
4139 [Experimental("SCME0001")]
4140 public ref JsonPatch Patch { get; }
4141 public static implicit operator RealtimeMcpToolCallApprovalPolicy(RealtimeCustomMcpToolCallApprovalPolicy customPolicy);
4142 public static implicit operator RealtimeMcpToolCallApprovalPolicy(RealtimeDefaultMcpToolCallApprovalPolicy defaultPolicy);
4143 }
4144 [Experimental("OPENAI002")]
4145 public class RealtimeMcpToolCallApprovalRequestItem : RealtimeItem, IJsonModel<RealtimeMcpToolCallApprovalRequestItem>, IPersistableModel<RealtimeMcpToolCallApprovalRequestItem> {
4146 public RealtimeMcpToolCallApprovalRequestItem(string id, string serverLabel, string toolName, BinaryData toolArguments);
4147 public string Id { get; set; }
4148 public string ServerLabel { get; set; }
4149 public BinaryData ToolArguments { get; set; }
4150 public string ToolName { get; set; }
4151 }
4152 [Experimental("OPENAI002")]
4153 public class RealtimeMcpToolCallApprovalResponseItem : RealtimeItem, IJsonModel<RealtimeMcpToolCallApprovalResponseItem>, IPersistableModel<RealtimeMcpToolCallApprovalResponseItem> {
4154 public RealtimeMcpToolCallApprovalResponseItem(string approvalRequestId, bool approved);
4155 public string ApprovalRequestId { get; set; }
4156 public bool Approved { get; set; }
4157 public string Id { get; set; }
4158 public string Reason { get; set; }
4159 }
4160 [Experimental("OPENAI002")]
4161 public class RealtimeMcpToolCallItem : RealtimeItem, IJsonModel<RealtimeMcpToolCallItem>, IPersistableModel<RealtimeMcpToolCallItem> {
4162 public RealtimeMcpToolCallItem(string serverLabel, string toolName, BinaryData toolArguments);
4163 public string ApprovalRequestId { get; set; }
4164 public RealtimeError Error { get; set; }
4165 public string Id { get; set; }
4166 public string ServerLabel { get; set; }
4167 public BinaryData ToolArguments { get; set; }
4168 public string ToolName { get; set; }
4169 public string ToolOutput { get; set; }
4170 }
4171 [Experimental("OPENAI002")]
4172 public readonly partial struct RealtimeMcpToolConnectorId : IEquatable<RealtimeMcpToolConnectorId> {
4173 public RealtimeMcpToolConnectorId(string value);
4174 public static RealtimeMcpToolConnectorId Dropbox { get; }
4175 public static RealtimeMcpToolConnectorId Gmail { get; }
4176 public static RealtimeMcpToolConnectorId GoogleCalendar { get; }
4177 public static RealtimeMcpToolConnectorId GoogleDrive { get; }
4178 public static RealtimeMcpToolConnectorId MicrosoftTeams { get; }
4179 public static RealtimeMcpToolConnectorId OutlookCalendar { get; }
4180 public static RealtimeMcpToolConnectorId OutlookEmail { get; }
4181 public static RealtimeMcpToolConnectorId SharePoint { get; }
4182 public readonly bool Equals(RealtimeMcpToolConnectorId other);
4183 [EditorBrowsable(EditorBrowsableState.Never)]
4184 public override readonly bool Equals(object obj);
4185 [EditorBrowsable(EditorBrowsableState.Never)]
4186 public override readonly int GetHashCode();
4187 public static bool operator ==(RealtimeMcpToolConnectorId left, RealtimeMcpToolConnectorId right);
4188 public static implicit operator RealtimeMcpToolConnectorId(string value);
4189 public static implicit operator RealtimeMcpToolConnectorId?(string value);
4190 public static bool operator !=(RealtimeMcpToolConnectorId left, RealtimeMcpToolConnectorId right);
4191 public override readonly string ToString();
4192 }
4193 [Experimental("OPENAI002")]
4194 public class RealtimeMcpToolDefinition : IJsonModel<RealtimeMcpToolDefinition>, IPersistableModel<RealtimeMcpToolDefinition> {
4195 public RealtimeMcpToolDefinition(string name, BinaryData inputSchema);
4196 public BinaryData Annotations { get; set; }
4197 public string Description { get; set; }
4198 public BinaryData InputSchema { get; set; }
4199 public string Name { get; set; }
4200 [Serialization.JsonIgnore]
4201 [EditorBrowsable(EditorBrowsableState.Never)]
4202 [Experimental("SCME0001")]
4203 public ref JsonPatch Patch { get; }
4204 }
4205 [Experimental("OPENAI002")]
4206 public class RealtimeMcpToolDefinitionListItem : RealtimeItem, IJsonModel<RealtimeMcpToolDefinitionListItem>, IPersistableModel<RealtimeMcpToolDefinitionListItem> {
4207 public RealtimeMcpToolDefinitionListItem(string serverLabel, IEnumerable<RealtimeMcpToolDefinition> toolDefinitions);
4208 public string Id { get; set; }
4209 public string ServerLabel { get; set; }
4210 public IList<RealtimeMcpToolDefinition> ToolDefinitions { get; }
4211 }
4212 [Experimental("OPENAI002")]
4213 public class RealtimeMcpToolFilter : IJsonModel<RealtimeMcpToolFilter>, IPersistableModel<RealtimeMcpToolFilter> {
4214 public bool? IsReadOnly { get; set; }
4215 [Serialization.JsonIgnore]
4216 [EditorBrowsable(EditorBrowsableState.Never)]
4217 [Experimental("SCME0001")]
4218 public ref JsonPatch Patch { get; }
4219 public IList<string> ToolNames { get; }
4220 }
4221 [Experimental("OPENAI002")]
4222 public class RealtimeMessageContentPart : IJsonModel<RealtimeMessageContentPart>, IPersistableModel<RealtimeMessageContentPart> {
4223 [Serialization.JsonIgnore]
4224 [EditorBrowsable(EditorBrowsableState.Never)]
4225 [Experimental("SCME0001")]
4226 public ref JsonPatch Patch { get; }
4227 }
4228 [Experimental("OPENAI002")]
4229 public class RealtimeMessageItem : RealtimeItem, IJsonModel<RealtimeMessageItem>, IPersistableModel<RealtimeMessageItem> {
4230 public RealtimeMessageItem(RealtimeMessageRole role, IEnumerable<RealtimeMessageContentPart> content);
4231 public IList<RealtimeMessageContentPart> Content { get; }
4232 public string Id { get; set; }
4233 public RealtimeMessageRole Role { get; set; }
4234 public RealtimeMessageStatus? Status { get; set; }
4235 }
4236 [Experimental("OPENAI002")]
4237 public readonly partial struct RealtimeMessageRole : IEquatable<RealtimeMessageRole> {
4238 public RealtimeMessageRole(string value);
4239 public static RealtimeMessageRole Assistant { get; }
4240 public static RealtimeMessageRole System { get; }
4241 public static RealtimeMessageRole User { get; }
4242 public readonly bool Equals(RealtimeMessageRole other);
4243 [EditorBrowsable(global::EditorBrowsableState.Never)]
4244 public override readonly bool Equals(object obj);
4245 [EditorBrowsable(global::EditorBrowsableState.Never)]
4246 public override readonly int GetHashCode();
4247 public static bool operator ==(RealtimeMessageRole left, RealtimeMessageRole right);
4248 public static implicit operator RealtimeMessageRole(string value);
4249 public static implicit operator RealtimeMessageRole?(string value);
4250 public static bool operator !=(RealtimeMessageRole left, RealtimeMessageRole right);
4251 public override readonly string ToString();
4252 }
4253 [Experimental("OPENAI002")]
4254 public readonly partial struct RealtimeMessageStatus : IEquatable<RealtimeMessageStatus> {
4255 public RealtimeMessageStatus(string value);
4256 public static RealtimeMessageStatus Completed { get; }
4257 public static RealtimeMessageStatus Incomplete { get; }
4258 public static RealtimeMessageStatus InProgress { get; }
4259 public readonly bool Equals(RealtimeMessageStatus other);
4260 [EditorBrowsable(EditorBrowsableState.Never)]
4261 public override readonly bool Equals(object obj);
4262 [EditorBrowsable(EditorBrowsableState.Never)]
4263 public override readonly int GetHashCode();
4264 public static bool operator ==(RealtimeMessageStatus left, RealtimeMessageStatus right);
4265 public static implicit operator RealtimeMessageStatus(string value);
4266 public static implicit operator RealtimeMessageStatus?(string value);
4267 public static bool operator !=(RealtimeMessageStatus left, RealtimeMessageStatus right);
4268 public override readonly string ToString();
4269 }
4270 [Experimental("OPENAI002")]
4271 public class RealtimeNoiseReduction : IJsonModel<RealtimeNoiseReduction>, IPersistableModel<RealtimeNoiseReduction> {
4272 public RealtimeNoiseReduction(RealtimeNoiseReductionKind kind);
4273 public RealtimeNoiseReductionKind Kind { get; set; }
4274 [Serialization.JsonIgnore]
4275 [EditorBrowsable(EditorBrowsableState.Never)]
4276 [Experimental("SCME0001")]
4277 public ref JsonPatch Patch { get; }
4278 }
4279 [Experimental("OPENAI002")]
4280 public readonly partial struct RealtimeNoiseReductionKind : IEquatable<RealtimeNoiseReductionKind> {
4281 public RealtimeNoiseReductionKind(string value);
4282 public static RealtimeNoiseReductionKind FarField { get; }
4283 public static RealtimeNoiseReductionKind NearField { get; }
4284 public readonly bool Equals(RealtimeNoiseReductionKind other);
4285 [EditorBrowsable(EditorBrowsableState.Never)]
4286 public override readonly bool Equals(object obj);
4287 [EditorBrowsable(EditorBrowsableState.Never)]
4288 public override readonly int GetHashCode();
4289 public static bool operator ==(RealtimeNoiseReductionKind left, RealtimeNoiseReductionKind right);
4290 public static implicit operator RealtimeNoiseReductionKind(string value);
4291 public static implicit operator RealtimeNoiseReductionKind?(string value);
4292 public static bool operator !=(RealtimeNoiseReductionKind left, RealtimeNoiseReductionKind right);
4293 public override readonly string ToString();
4294 }
4295 [Experimental("OPENAI002")]
4296 public class RealtimeOutputAudioMessageContentPart : RealtimeMessageContentPart, IJsonModel<RealtimeOutputAudioMessageContentPart>, IPersistableModel<RealtimeOutputAudioMessageContentPart> {
4297 public RealtimeOutputAudioMessageContentPart(BinaryData audioBytes, string transcript);
4298 public BinaryData AudioBytes { get; set; }
4299 public string Transcript { get; set; }
4300 }
4301 [Experimental("OPENAI002")]
4302 public readonly partial struct RealtimeOutputModality : IEquatable<RealtimeOutputModality> {
4303 public RealtimeOutputModality(string value);
4304 public static RealtimeOutputModality Audio { get; }
4305 public static RealtimeOutputModality Text { get; }
4306 public readonly bool Equals(RealtimeOutputModality other);
4307 [EditorBrowsable(EditorBrowsableState.Never)]
4308 public override readonly bool Equals(object obj);
4309 [EditorBrowsable(EditorBrowsableState.Never)]
4310 public override readonly int GetHashCode();
4311 public static bool operator ==(RealtimeOutputModality left, RealtimeOutputModality right);
4312 public static implicit operator RealtimeOutputModality(string value);
4313 public static implicit operator RealtimeOutputModality?(string value);
4314 public static bool operator !=(RealtimeOutputModality left, RealtimeOutputModality right);
4315 public override readonly string ToString();
4316 }
4317 [Experimental("OPENAI002")]
4318 public class RealtimeOutputTextMessageContentPart : RealtimeMessageContentPart, IJsonModel<RealtimeOutputTextMessageContentPart>, IPersistableModel<RealtimeOutputTextMessageContentPart> {
4319 public RealtimeOutputTextMessageContentPart(string text);
4320 public string Text { get; set; }
4321 }
4322 [Experimental("OPENAI002")]
4323 public class RealtimePcmaAudioFormat : RealtimeAudioFormat, IJsonModel<RealtimePcmaAudioFormat>, IPersistableModel<RealtimePcmaAudioFormat> {
4324 public RealtimePcmaAudioFormat();
4325 }
4326 [Experimental("OPENAI002")]
4327 public class RealtimePcmAudioFormat : RealtimeAudioFormat, IJsonModel<RealtimePcmAudioFormat>, IPersistableModel<RealtimePcmAudioFormat> {
4328 public RealtimePcmAudioFormat();
4329 public int Rate { get; }
4330 }
4331 [Experimental("OPENAI002")]
4332 public class RealtimePcmuAudioFormat : RealtimeAudioFormat, IJsonModel<RealtimePcmuAudioFormat>, IPersistableModel<RealtimePcmuAudioFormat> {
4333 public RealtimePcmuAudioFormat();
4334 }
4335 [Experimental("OPENAI002")]
4336 public class RealtimeRateLimitDetails : IJsonModel<RealtimeRateLimitDetails>, IPersistableModel<RealtimeRateLimitDetails> {
4337 public int? Limit { get; }
4338 public RealtimeRateLimitName? Name { get; }
4339 [Serialization.JsonIgnore]
4340 [EditorBrowsable(EditorBrowsableState.Never)]
4341 [Experimental("SCME0001")]
4342 public ref JsonPatch Patch { get; }
4343 public int? RemainingCount { get; }
4344 public TimeSpan? TimeUntilReset { get; }
4345 }
4346 [Experimental("OPENAI002")]
4347 public readonly partial struct RealtimeRateLimitName : IEquatable<RealtimeRateLimitName> {
4348 public RealtimeRateLimitName(string value);
4349 public static RealtimeRateLimitName Requests { get; }
4350 public static RealtimeRateLimitName Tokens { get; }
4351 public readonly bool Equals(RealtimeRateLimitName other);
4352 [EditorBrowsable(EditorBrowsableState.Never)]
4353 public override readonly bool Equals(object obj);
4354 [EditorBrowsable(EditorBrowsableState.Never)]
4355 public override readonly int GetHashCode();
4356 public static bool operator ==(RealtimeRateLimitName left, RealtimeRateLimitName right);
4357 public static implicit operator RealtimeRateLimitName(string value);
4358 public static implicit operator RealtimeRateLimitName?(string value);
4359 public static bool operator !=(RealtimeRateLimitName left, RealtimeRateLimitName right);
4360 public override readonly string ToString();
4361 }
4362 [Experimental("OPENAI002")]
4363 public class RealtimeResponse : IJsonModel<RealtimeResponse>, IPersistableModel<RealtimeResponse> {
4364 public RealtimeResponseAudioOptions AudioOptions { get; }
4365 public string ConversationId { get; }
4366 public string Id { get; }
4367 public RealtimeMaxOutputTokenCount MaxOutputTokenCount { get; }
4368 public IDictionary<string, BinaryData> Metadata { get; }
4369 public IList<RealtimeItem> OutputItems { get; }
4370 public IList<RealtimeOutputModality> OutputModalities { get; }
4371 [Serialization.JsonIgnore]
4372 [EditorBrowsable(EditorBrowsableState.Never)]
4373 [Experimental("SCME0001")]
4374 public ref JsonPatch Patch { get; }
4375 public RealtimeResponseStatus? Status { get; }
4376 public RealtimeResponseStatusDetails StatusDetails { get; }
4377 public RealtimeResponseUsage Usage { get; }
4378 }
4379 [Experimental("OPENAI002")]
4380 public class RealtimeResponseAudioOptions : IJsonModel<RealtimeResponseAudioOptions>, IPersistableModel<RealtimeResponseAudioOptions> {
4381 public RealtimeResponseOutputAudioOptions OutputAudioOptions { get; }
4382 [Serialization.JsonIgnore]
4383 [EditorBrowsable(EditorBrowsableState.Never)]
4384 [Experimental("SCME0001")]
4385 public ref JsonPatch Patch { get; }
4386 }
4387 [Experimental("OPENAI002")]
4388 public class RealtimeResponseContentPart : IJsonModel<RealtimeResponseContentPart>, IPersistableModel<RealtimeResponseContentPart> {
4389 public BinaryData Audio { get; }
4390 public RealtimeResponseContentPartKind? Kind { get; }
4391 [Serialization.JsonIgnore]
4392 [EditorBrowsable(EditorBrowsableState.Never)]
4393 [Experimental("SCME0001")]
4394 public ref JsonPatch Patch { get; }
4395 public string Text { get; }
4396 public string Transcript { get; }
4397 }
4398 [Experimental("OPENAI002")]
4399 public readonly partial struct RealtimeResponseContentPartKind : IEquatable<RealtimeResponseContentPartKind> {
4400 public RealtimeResponseContentPartKind(string value);
4401 public static RealtimeResponseContentPartKind Audio { get; }
4402 public static RealtimeResponseContentPartKind Text { get; }
4403 public readonly bool Equals(RealtimeResponseContentPartKind other);
4404 [EditorBrowsable(EditorBrowsableState.Never)]
4405 public override readonly bool Equals(object obj);
4406 [EditorBrowsable(EditorBrowsableState.Never)]
4407 public override readonly int GetHashCode();
4408 public static bool operator ==(RealtimeResponseContentPartKind left, RealtimeResponseContentPartKind right);
4409 public static implicit operator RealtimeResponseContentPartKind(string value);
4410 public static implicit operator RealtimeResponseContentPartKind?(string value);
4411 public static bool operator !=(RealtimeResponseContentPartKind left, RealtimeResponseContentPartKind right);
4412 public override readonly string ToString();
4413 }
4414 [Experimental("OPENAI002")]
4415 public readonly partial struct RealtimeResponseDefaultConversationConfiguration : IEquatable<RealtimeResponseDefaultConversationConfiguration> {
4416 public RealtimeResponseDefaultConversationConfiguration(string value);
4417 public static RealtimeResponseDefaultConversationConfiguration Auto { get; }
4418 public static RealtimeResponseDefaultConversationConfiguration None { get; }
4419 public readonly bool Equals(RealtimeResponseDefaultConversationConfiguration other);
4420 [EditorBrowsable(EditorBrowsableState.Never)]
4421 public override readonly bool Equals(object obj);
4422 [EditorBrowsable(EditorBrowsableState.Never)]
4423 public override readonly int GetHashCode();
4424 public static bool operator ==(RealtimeResponseDefaultConversationConfiguration left, RealtimeResponseDefaultConversationConfiguration right);
4425 public static implicit operator RealtimeResponseDefaultConversationConfiguration(string value);
4426 public static implicit operator RealtimeResponseDefaultConversationConfiguration?(string value);
4427 public static bool operator !=(RealtimeResponseDefaultConversationConfiguration left, RealtimeResponseDefaultConversationConfiguration right);
4428 public override readonly string ToString();
4429 }
4430 [Experimental("OPENAI002")]
4431 public class RealtimeResponseInputCachedTokenUsageDetails : IJsonModel<RealtimeResponseInputCachedTokenUsageDetails>, IPersistableModel<RealtimeResponseInputCachedTokenUsageDetails> {
4432 public int? AudioTokenCount { get; }
4433 public int? ImageTokenCount { get; }
4434 [Serialization.JsonIgnore]
4435 [EditorBrowsable(EditorBrowsableState.Never)]
4436 [Experimental("SCME0001")]
4437 public ref JsonPatch Patch { get; }
4438 public int? TextTokenCount { get; }
4439 }
4440 [Experimental("OPENAI002")]
4441 public class RealtimeResponseInputTokenUsageDetails : IJsonModel<RealtimeResponseInputTokenUsageDetails>, IPersistableModel<RealtimeResponseInputTokenUsageDetails> {
4442 public int? AudioTokenCount { get; }
4443 public int? CachedTokenCount { get; }
4444 public RealtimeResponseInputCachedTokenUsageDetails CachedTokenDetails { get; }
4445 public int? ImageTokenCount { get; }
4446 [Serialization.JsonIgnore]
4447 [EditorBrowsable(EditorBrowsableState.Never)]
4448 [Experimental("SCME0001")]
4449 public ref JsonPatch Patch { get; }
4450 public int? TextTokenCount { get; }
4451 }
4452 [Experimental("OPENAI002")]
4453 public class RealtimeResponseOptions : IJsonModel<RealtimeResponseOptions>, IPersistableModel<RealtimeResponseOptions> {
4454 public RealtimeResponseAudioOptions AudioOptions { get; set; }
4455 public RealtimeResponseDefaultConversationConfiguration? DefaultConversationConfiguration { get; set; }
4456 public IList<RealtimeItem> InputItems { get; }
4457 public string Instructions { get; set; }
4458 public RealtimeMaxOutputTokenCount MaxOutputTokenCount { get; set; }
4459 public IDictionary<string, BinaryData> Metadata { get; set; }
4460 public IList<RealtimeOutputModality> OutputModalities { get; }
4461 [Serialization.JsonIgnore]
4462 [EditorBrowsable(EditorBrowsableState.Never)]
4463 [Experimental("SCME0001")]
4464 public ref JsonPatch Patch { get; }
4465 public RealtimeToolChoice ToolChoice { get; set; }
4466 public IList<RealtimeTool> Tools { get; }
4467 }
4468 [Experimental("OPENAI002")]
4469 public class RealtimeResponseOutputAudioOptions : IJsonModel<RealtimeResponseOutputAudioOptions>, IPersistableModel<RealtimeResponseOutputAudioOptions> {
4470 public RealtimeAudioFormat AudioFormat { get; set; }
4471 [Serialization.JsonIgnore]
4472 [EditorBrowsable(EditorBrowsableState.Never)]
4473 [Experimental("SCME0001")]
4474 public ref JsonPatch Patch { get; }
4475 public RealtimeVoice? Voice { get; set; }
4476 }
4477 [Experimental("OPENAI002")]
4478 public class RealtimeResponseOutputTokenUsageDetails : IJsonModel<RealtimeResponseOutputTokenUsageDetails>, IPersistableModel<RealtimeResponseOutputTokenUsageDetails> {
4479 public int? AudioTokenCount { get; }
4480 [Serialization.JsonIgnore]
4481 [EditorBrowsable(EditorBrowsableState.Never)]
4482 [Experimental("SCME0001")]
4483 public ref JsonPatch Patch { get; }
4484 public int? TextTokenCount { get; }
4485 }
4486 [Experimental("OPENAI002")]
4487 public readonly partial struct RealtimeResponseStatus : IEquatable<RealtimeResponseStatus> {
4488 public RealtimeResponseStatus(string value);
4489 public static RealtimeResponseStatus Cancelled { get; }
4490 public static RealtimeResponseStatus Completed { get; }
4491 public static RealtimeResponseStatus Failed { get; }
4492 public static RealtimeResponseStatus Incomplete { get; }
4493 public static RealtimeResponseStatus InProgress { get; }
4494 public readonly bool Equals(RealtimeResponseStatus other);
4495 [EditorBrowsable(EditorBrowsableState.Never)]
4496 public override readonly bool Equals(object obj);
4497 [EditorBrowsable(EditorBrowsableState.Never)]
4498 public override readonly int GetHashCode();
4499 public static bool operator ==(RealtimeResponseStatus left, RealtimeResponseStatus right);
4500 public static implicit operator RealtimeResponseStatus(string value);
4501 public static implicit operator RealtimeResponseStatus?(string value);
4502 public static bool operator !=(RealtimeResponseStatus left, RealtimeResponseStatus right);
4503 public override readonly string ToString();
4504 }
4505 [Experimental("OPENAI002")]
4506 public class RealtimeResponseStatusDetails : IJsonModel<RealtimeResponseStatusDetails>, IPersistableModel<RealtimeResponseStatusDetails> {
4507 public RealtimeError Error { get; }
4508 public RealtimeResponseStatusErrorKind? Kind { get; }
4509 [Serialization.JsonIgnore]
4510 [EditorBrowsable(EditorBrowsableState.Never)]
4511 [Experimental("SCME0001")]
4512 public ref JsonPatch Patch { get; }
4513 public RealtimeResponseStatusReason? Reason { get; }
4514 }
4515 [Experimental("OPENAI002")]
4516 public readonly partial struct RealtimeResponseStatusErrorKind : IEquatable<RealtimeResponseStatusErrorKind> {
4517 public RealtimeResponseStatusErrorKind(string value);
4518 public static RealtimeResponseStatusErrorKind Cancelled { get; }
4519 public static RealtimeResponseStatusErrorKind Completed { get; }
4520 public static RealtimeResponseStatusErrorKind Failed { get; }
4521 public static RealtimeResponseStatusErrorKind Incomplete { get; }
4522 public readonly bool Equals(RealtimeResponseStatusErrorKind other);
4523 [EditorBrowsable(EditorBrowsableState.Never)]
4524 public override readonly bool Equals(object obj);
4525 [EditorBrowsable(EditorBrowsableState.Never)]
4526 public override readonly int GetHashCode();
4527 public static bool operator ==(RealtimeResponseStatusErrorKind left, RealtimeResponseStatusErrorKind right);
4528 public static implicit operator RealtimeResponseStatusErrorKind(string value);
4529 public static implicit operator RealtimeResponseStatusErrorKind?(string value);
4530 public static bool operator !=(RealtimeResponseStatusErrorKind left, RealtimeResponseStatusErrorKind right);
4531 public override readonly string ToString();
4532 }
4533 [Experimental("OPENAI002")]
4534 public readonly partial struct RealtimeResponseStatusReason : IEquatable<RealtimeResponseStatusReason> {
4535 public RealtimeResponseStatusReason(string value);
4536 public static RealtimeResponseStatusReason ClientCancelled { get; }
4537 public static RealtimeResponseStatusReason ContentFilter { get; }
4538 public static RealtimeResponseStatusReason MaxOutputTokens { get; }
4539 public static RealtimeResponseStatusReason TurnDetected { get; }
4540 public readonly bool Equals(RealtimeResponseStatusReason other);
4541 [EditorBrowsable(EditorBrowsableState.Never)]
4542 public override readonly bool Equals(object obj);
4543 [EditorBrowsable(EditorBrowsableState.Never)]
4544 public override readonly int GetHashCode();
4545 public static bool operator ==(RealtimeResponseStatusReason left, RealtimeResponseStatusReason right);
4546 public static implicit operator RealtimeResponseStatusReason(string value);
4547 public static implicit operator RealtimeResponseStatusReason?(string value);
4548 public static bool operator !=(RealtimeResponseStatusReason left, RealtimeResponseStatusReason right);
4549 public override readonly string ToString();
4550 }
4551 [Experimental("OPENAI002")]
4552 public class RealtimeResponseUsage : IJsonModel<RealtimeResponseUsage>, IPersistableModel<RealtimeResponseUsage> {
4553 public int? InputTokenCount { get; }
4554 public RealtimeResponseInputTokenUsageDetails InputTokenDetails { get; }
4555 public int? OutputTokenCount { get; }
4556 public RealtimeResponseOutputTokenUsageDetails OutputTokenDetails { get; }
4557 [Serialization.JsonIgnore]
4558 [EditorBrowsable(EditorBrowsableState.Never)]
4559 [Experimental("SCME0001")]
4560 public ref JsonPatch Patch { get; }
4561 public int? TotalTokenCount { get; }
4562 }
4563 [Experimental("OPENAI002")]
4564 public class RealtimeRetentionRatioTokenLimitDetails : IJsonModel<RealtimeRetentionRatioTokenLimitDetails>, IPersistableModel<RealtimeRetentionRatioTokenLimitDetails> {
4565 public int? MaxPostInstructionsTokenCount { get; set; }
4566 [Serialization.JsonIgnore]
4567 [EditorBrowsable(EditorBrowsableState.Never)]
4568 [Experimental("SCME0001")]
4569 public ref JsonPatch Patch { get; }
4570 }
4571 [Experimental("OPENAI002")]
4572 public readonly partial struct RealtimeSemanticVadEagernessLevel : IEquatable<RealtimeSemanticVadEagernessLevel> {
4573 public RealtimeSemanticVadEagernessLevel(string value);
4574 public static RealtimeSemanticVadEagernessLevel Auto { get; }
4575 public static RealtimeSemanticVadEagernessLevel High { get; }
4576 public static RealtimeSemanticVadEagernessLevel Low { get; }
4577 public static RealtimeSemanticVadEagernessLevel Medium { get; }
4578 public readonly bool Equals(RealtimeSemanticVadEagernessLevel other);
4579 [EditorBrowsable(EditorBrowsableState.Never)]
4580 public override readonly bool Equals(object obj);
4581 [EditorBrowsable(EditorBrowsableState.Never)]
4582 public override readonly int GetHashCode();
4583 public static bool operator ==(RealtimeSemanticVadEagernessLevel left, RealtimeSemanticVadEagernessLevel right);
4584 public static implicit operator RealtimeSemanticVadEagernessLevel(string value);
4585 public static implicit operator RealtimeSemanticVadEagernessLevel?(string value);
4586 public static bool operator !=(RealtimeSemanticVadEagernessLevel left, RealtimeSemanticVadEagernessLevel right);
4587 public override readonly string ToString();
4588 }
4589 [Experimental("OPENAI002")]
4590 public class RealtimeSemanticVadTurnDetection : RealtimeTurnDetection, IJsonModel<RealtimeSemanticVadTurnDetection>, IPersistableModel<RealtimeSemanticVadTurnDetection> {
4591 public RealtimeSemanticVadTurnDetection();
4592 public bool? CreateResponseEnabled { get; set; }
4593 public RealtimeSemanticVadEagernessLevel? EagernessLevel { get; set; }
4594 public bool? InterruptResponseEnabled { get; set; }
4595 }
4596 [Experimental("OPENAI002")]
4597 public class RealtimeServerUpdate : IJsonModel<RealtimeServerUpdate>, IPersistableModel<RealtimeServerUpdate> {
4598 [Serialization.JsonIgnore]
4599 [EditorBrowsable(EditorBrowsableState.Never)]
4600 [Experimental("SCME0001")]
4601 public ref JsonPatch Patch { get; }
4602 }
4603 [Experimental("OPENAI002")]
4604 public class RealtimeServerUpdateConversationCreated : RealtimeServerUpdate, IJsonModel<RealtimeServerUpdateConversationCreated>, IPersistableModel<RealtimeServerUpdateConversationCreated> {
4605 public RealtimeConversation Conversation { get; }
4606 public string EventId { get; }
4607 }
4608 [Experimental("OPENAI002")]
4609 public class RealtimeServerUpdateConversationItemAdded : RealtimeServerUpdate, IJsonModel<RealtimeServerUpdateConversationItemAdded>, IPersistableModel<RealtimeServerUpdateConversationItemAdded> {
4610 public string EventId { get; }
4611 public RealtimeItem Item { get; }
4612 public string PreviousItemId { get; }
4613 }
4614 [Experimental("OPENAI002")]
4615 public class RealtimeServerUpdateConversationItemCreated : RealtimeServerUpdate, IJsonModel<RealtimeServerUpdateConversationItemCreated>, IPersistableModel<RealtimeServerUpdateConversationItemCreated> {
4616 public string EventId { get; }
4617 public RealtimeItem Item { get; }
4618 public string PreviousItemId { get; }
4619 }
4620 [Experimental("OPENAI002")]
4621 public class RealtimeServerUpdateConversationItemDeleted : RealtimeServerUpdate, IJsonModel<RealtimeServerUpdateConversationItemDeleted>, IPersistableModel<RealtimeServerUpdateConversationItemDeleted> {
4622 public string EventId { get; }
4623 public string ItemId { get; }
4624 }
4625 [Experimental("OPENAI002")]
4626 public class RealtimeServerUpdateConversationItemDone : RealtimeServerUpdate, IJsonModel<RealtimeServerUpdateConversationItemDone>, IPersistableModel<RealtimeServerUpdateConversationItemDone> {
4627 public string EventId { get; }
4628 public RealtimeItem Item { get; }
4629 public string PreviousItemId { get; }
4630 }
4631 [Experimental("OPENAI002")]
4632 public class RealtimeServerUpdateConversationItemInputAudioTranscriptionCompleted : RealtimeServerUpdate, IJsonModel<RealtimeServerUpdateConversationItemInputAudioTranscriptionCompleted>, IPersistableModel<RealtimeServerUpdateConversationItemInputAudioTranscriptionCompleted> {
4633 public int ContentIndex { get; }
4634 public string EventId { get; }
4635 public string ItemId { get; }
4636 public IList<RealtimeLogProbabilityDetails> Logprobs { get; }
4637 public string Transcript { get; }
4638 public RealtimeTranscriptionUsage Usage { get; }
4639 }
4640 [Experimental("OPENAI002")]
4641 public class RealtimeServerUpdateConversationItemInputAudioTranscriptionDelta : RealtimeServerUpdate, IJsonModel<RealtimeServerUpdateConversationItemInputAudioTranscriptionDelta>, IPersistableModel<RealtimeServerUpdateConversationItemInputAudioTranscriptionDelta> {
4642 public int? ContentIndex { get; }
4643 public string Delta { get; }
4644 public string EventId { get; }
4645 public string ItemId { get; }
4646 public IList<RealtimeLogProbabilityDetails> Logprobs { get; }
4647 }
4648 [Experimental("OPENAI002")]
4649 public class RealtimeServerUpdateConversationItemInputAudioTranscriptionFailed : RealtimeServerUpdate, IJsonModel<RealtimeServerUpdateConversationItemInputAudioTranscriptionFailed>, IPersistableModel<RealtimeServerUpdateConversationItemInputAudioTranscriptionFailed> {
4650 public int ContentIndex { get; }
4651 public RealtimeError Error { get; }
4652 public string EventId { get; }
4653 public string ItemId { get; }
4654 }
4655 [Experimental("OPENAI002")]
4656 public class RealtimeServerUpdateConversationItemInputAudioTranscriptionSegment : RealtimeServerUpdate, IJsonModel<RealtimeServerUpdateConversationItemInputAudioTranscriptionSegment>, IPersistableModel<RealtimeServerUpdateConversationItemInputAudioTranscriptionSegment> {
4657 public int ContentIndex { get; }
4658 public float End { get; }
4659 public string EventId { get; }
4660 public string Id { get; }
4661 public string ItemId { get; }
4662 public string Speaker { get; }
4663 public float Start { get; }
4664 public string Text { get; }
4665 }
4666 [Experimental("OPENAI002")]
4667 public class RealtimeServerUpdateConversationItemRetrieved : RealtimeServerUpdate, IJsonModel<RealtimeServerUpdateConversationItemRetrieved>, IPersistableModel<RealtimeServerUpdateConversationItemRetrieved> {
4668 public string EventId { get; }
4669 public RealtimeItem Item { get; }
4670 }
4671 [Experimental("OPENAI002")]
4672 public class RealtimeServerUpdateConversationItemTruncated : RealtimeServerUpdate, IJsonModel<RealtimeServerUpdateConversationItemTruncated>, IPersistableModel<RealtimeServerUpdateConversationItemTruncated> {
4673 public TimeSpan AudioEndTime { get; }
4674 public int ContentIndex { get; }
4675 public string EventId { get; }
4676 public string ItemId { get; }
4677 }
4678 [Experimental("OPENAI002")]
4679 public class RealtimeServerUpdateError : RealtimeServerUpdate, IJsonModel<RealtimeServerUpdateError>, IPersistableModel<RealtimeServerUpdateError> {
4680 public RealtimeError Error { get; }
4681 public string EventId { get; }
4682 }
4683 [Experimental("OPENAI002")]
4684 public class RealtimeServerUpdateInputAudioBufferCleared : RealtimeServerUpdate, IJsonModel<RealtimeServerUpdateInputAudioBufferCleared>, IPersistableModel<RealtimeServerUpdateInputAudioBufferCleared> {
4685 public string EventId { get; }
4686 }
4687 [Experimental("OPENAI002")]
4688 public class RealtimeServerUpdateInputAudioBufferCommitted : RealtimeServerUpdate, IJsonModel<RealtimeServerUpdateInputAudioBufferCommitted>, IPersistableModel<RealtimeServerUpdateInputAudioBufferCommitted> {
4689 public string EventId { get; }
4690 public string ItemId { get; }
4691 public string PreviousItemId { get; }
4692 }
4693 [Experimental("OPENAI002")]
4694 public class RealtimeServerUpdateInputAudioBufferDtmfEventReceived : RealtimeServerUpdate, IJsonModel<RealtimeServerUpdateInputAudioBufferDtmfEventReceived>, IPersistableModel<RealtimeServerUpdateInputAudioBufferDtmfEventReceived> {
4695 public string Event { get; }
4696 public DateTimeOffset ReceivedAt { get; }
4697 }
4698 [Experimental("OPENAI002")]
4699 public class RealtimeServerUpdateInputAudioBufferSpeechStarted : RealtimeServerUpdate, IJsonModel<RealtimeServerUpdateInputAudioBufferSpeechStarted>, IPersistableModel<RealtimeServerUpdateInputAudioBufferSpeechStarted> {
4700 public TimeSpan AudioStartTime { get; }
4701 public string EventId { get; }
4702 public string ItemId { get; }
4703 }
4704 [Experimental("OPENAI002")]
4705 public class RealtimeServerUpdateInputAudioBufferSpeechStopped : RealtimeServerUpdate, IJsonModel<RealtimeServerUpdateInputAudioBufferSpeechStopped>, IPersistableModel<RealtimeServerUpdateInputAudioBufferSpeechStopped> {
4706 public TimeSpan AudioEndTime { get; }
4707 public string EventId { get; }
4708 public string ItemId { get; }
4709 }
4710 [Experimental("OPENAI002")]
4711 public class RealtimeServerUpdateInputAudioBufferTimeoutTriggered : RealtimeServerUpdate, IJsonModel<RealtimeServerUpdateInputAudioBufferTimeoutTriggered>, IPersistableModel<RealtimeServerUpdateInputAudioBufferTimeoutTriggered> {
4712 public TimeSpan AudioEndTime { get; }
4713 public TimeSpan AudioStartTime { get; }
4714 public string EventId { get; }
4715 public string ItemId { get; }
4716 }
4717 [Experimental("OPENAI002")]
4718 public class RealtimeServerUpdateMcpListToolsCompleted : RealtimeServerUpdate, IJsonModel<RealtimeServerUpdateMcpListToolsCompleted>, IPersistableModel<RealtimeServerUpdateMcpListToolsCompleted> {
4719 public string EventId { get; }
4720 public string ItemId { get; }
4721 }
4722 [Experimental("OPENAI002")]
4723 public class RealtimeServerUpdateMcpListToolsFailed : RealtimeServerUpdate, IJsonModel<RealtimeServerUpdateMcpListToolsFailed>, IPersistableModel<RealtimeServerUpdateMcpListToolsFailed> {
4724 public string EventId { get; }
4725 public string ItemId { get; }
4726 }
4727 [Experimental("OPENAI002")]
4728 public class RealtimeServerUpdateMcpListToolsInProgress : RealtimeServerUpdate, IJsonModel<RealtimeServerUpdateMcpListToolsInProgress>, IPersistableModel<RealtimeServerUpdateMcpListToolsInProgress> {
4729 public string EventId { get; }
4730 public string ItemId { get; }
4731 }
4732 [Experimental("OPENAI002")]
4733 public class RealtimeServerUpdateOutputAudioBufferCleared : RealtimeServerUpdate, IJsonModel<RealtimeServerUpdateOutputAudioBufferCleared>, IPersistableModel<RealtimeServerUpdateOutputAudioBufferCleared> {
4734 public string EventId { get; }
4735 public string ResponseId { get; }
4736 }
4737 [Experimental("OPENAI002")]
4738 public class RealtimeServerUpdateOutputAudioBufferStarted : RealtimeServerUpdate, IJsonModel<RealtimeServerUpdateOutputAudioBufferStarted>, IPersistableModel<RealtimeServerUpdateOutputAudioBufferStarted> {
4739 public string EventId { get; }
4740 public string ResponseId { get; }
4741 }
4742 [Experimental("OPENAI002")]
4743 public class RealtimeServerUpdateOutputAudioBufferStopped : RealtimeServerUpdate, IJsonModel<RealtimeServerUpdateOutputAudioBufferStopped>, IPersistableModel<RealtimeServerUpdateOutputAudioBufferStopped> {
4744 public string EventId { get; }
4745 public string ResponseId { get; }
4746 }
4747 [Experimental("OPENAI002")]
4748 public class RealtimeServerUpdateRateLimitsUpdated : RealtimeServerUpdate, IJsonModel<RealtimeServerUpdateRateLimitsUpdated>, IPersistableModel<RealtimeServerUpdateRateLimitsUpdated> {
4749 public string EventId { get; }
4750 public IList<RealtimeRateLimitDetails> RateLimitDetails { get; }
4751 }
4752 [Experimental("OPENAI002")]
4753 public class RealtimeServerUpdateResponseContentPartAdded : RealtimeServerUpdate, IJsonModel<RealtimeServerUpdateResponseContentPartAdded>, IPersistableModel<RealtimeServerUpdateResponseContentPartAdded> {
4754 public int ContentIndex { get; }
4755 public string EventId { get; }
4756 public string ItemId { get; }
4757 public int OutputIndex { get; }
4758 public RealtimeResponseContentPart Part { get; }
4759 public string ResponseId { get; }
4760 }
4761 [Experimental("OPENAI002")]
4762 public class RealtimeServerUpdateResponseContentPartDone : RealtimeServerUpdate, IJsonModel<RealtimeServerUpdateResponseContentPartDone>, IPersistableModel<RealtimeServerUpdateResponseContentPartDone> {
4763 public int ContentIndex { get; }
4764 public string EventId { get; }
4765 public string ItemId { get; }
4766 public int OutputIndex { get; }
4767 public RealtimeResponseContentPart Part { get; }
4768 public string ResponseId { get; }
4769 }
4770 [Experimental("OPENAI002")]
4771 public class RealtimeServerUpdateResponseCreated : RealtimeServerUpdate, IJsonModel<RealtimeServerUpdateResponseCreated>, IPersistableModel<RealtimeServerUpdateResponseCreated> {
4772 public string EventId { get; }
4773 public RealtimeResponse Response { get; }
4774 }
4775 [Experimental("OPENAI002")]
4776 public class RealtimeServerUpdateResponseDone : RealtimeServerUpdate, IJsonModel<RealtimeServerUpdateResponseDone>, IPersistableModel<RealtimeServerUpdateResponseDone> {
4777 public string EventId { get; }
4778 public RealtimeResponse Response { get; }
4779 }
4780 [Experimental("OPENAI002")]
4781 public class RealtimeServerUpdateResponseFunctionCallArgumentsDelta : RealtimeServerUpdate, IJsonModel<RealtimeServerUpdateResponseFunctionCallArgumentsDelta>, IPersistableModel<RealtimeServerUpdateResponseFunctionCallArgumentsDelta> {
4782 public string CallId { get; }
4783 public BinaryData Delta { get; }
4784 public string EventId { get; }
4785 public string ItemId { get; }
4786 public int OutputIndex { get; }
4787 public string ResponseId { get; }
4788 }
4789 [Experimental("OPENAI002")]
4790 public class RealtimeServerUpdateResponseFunctionCallArgumentsDone : RealtimeServerUpdate, IJsonModel<RealtimeServerUpdateResponseFunctionCallArgumentsDone>, IPersistableModel<RealtimeServerUpdateResponseFunctionCallArgumentsDone> {
4791 public string CallId { get; }
4792 public string EventId { get; }
4793 public BinaryData FunctionArguments { get; }
4794 public string FunctionName { get; }
4795 public string ItemId { get; }
4796 public int OutputIndex { get; }
4797 public string ResponseId { get; }
4798 }
4799 [Experimental("OPENAI002")]
4800 public class RealtimeServerUpdateResponseMcpCallArgumentsDelta : RealtimeServerUpdate, IJsonModel<RealtimeServerUpdateResponseMcpCallArgumentsDelta>, IPersistableModel<RealtimeServerUpdateResponseMcpCallArgumentsDelta> {
4801 public BinaryData Delta { get; }
4802 public string EventId { get; }
4803 public string ItemId { get; }
4804 public string Obfuscation { get; }
4805 public int OutputIndex { get; }
4806 public string ResponseId { get; }
4807 }
4808 [Experimental("OPENAI002")]
4809 public class RealtimeServerUpdateResponseMcpCallArgumentsDone : RealtimeServerUpdate, IJsonModel<RealtimeServerUpdateResponseMcpCallArgumentsDone>, IPersistableModel<RealtimeServerUpdateResponseMcpCallArgumentsDone> {
4810 public string EventId { get; }
4811 public string ItemId { get; }
4812 public int OutputIndex { get; }
4813 public string ResponseId { get; }
4814 public BinaryData ToolArguments { get; }
4815 }
4816 [Experimental("OPENAI002")]
4817 public class RealtimeServerUpdateResponseMcpCallCompleted : RealtimeServerUpdate, IJsonModel<RealtimeServerUpdateResponseMcpCallCompleted>, IPersistableModel<RealtimeServerUpdateResponseMcpCallCompleted> {
4818 public string EventId { get; }
4819 public string ItemId { get; }
4820 public int OutputIndex { get; }
4821 }
4822 [Experimental("OPENAI002")]
4823 public class RealtimeServerUpdateResponseMcpCallFailed : RealtimeServerUpdate, IJsonModel<RealtimeServerUpdateResponseMcpCallFailed>, IPersistableModel<RealtimeServerUpdateResponseMcpCallFailed> {
4824 public string EventId { get; }
4825 public string ItemId { get; }
4826 public int OutputIndex { get; }
4827 }
4828 [Experimental("OPENAI002")]
4829 public class RealtimeServerUpdateResponseMcpCallInProgress : RealtimeServerUpdate, IJsonModel<RealtimeServerUpdateResponseMcpCallInProgress>, IPersistableModel<RealtimeServerUpdateResponseMcpCallInProgress> {
4830 public string EventId { get; }
4831 public string ItemId { get; }
4832 public int OutputIndex { get; }
4833 }
4834 [Experimental("OPENAI002")]
4835 public class RealtimeServerUpdateResponseOutputAudioDelta : RealtimeServerUpdate, IJsonModel<RealtimeServerUpdateResponseOutputAudioDelta>, IPersistableModel<RealtimeServerUpdateResponseOutputAudioDelta> {
4836 public int ContentIndex { get; }
4837 public BinaryData Delta { get; }
4838 public string EventId { get; }
4839 public string ItemId { get; }
4840 public int OutputIndex { get; }
4841 public string ResponseId { get; }
4842 }
4843 [Experimental("OPENAI002")]
4844 public class RealtimeServerUpdateResponseOutputAudioDone : RealtimeServerUpdate, IJsonModel<RealtimeServerUpdateResponseOutputAudioDone>, IPersistableModel<RealtimeServerUpdateResponseOutputAudioDone> {
4845 public int ContentIndex { get; }
4846 public string EventId { get; }
4847 public string ItemId { get; }
4848 public int OutputIndex { get; }
4849 public string ResponseId { get; }
4850 }
4851 [Experimental("OPENAI002")]
4852 public class RealtimeServerUpdateResponseOutputAudioTranscriptDelta : RealtimeServerUpdate, IJsonModel<RealtimeServerUpdateResponseOutputAudioTranscriptDelta>, IPersistableModel<RealtimeServerUpdateResponseOutputAudioTranscriptDelta> {
4853 public int ContentIndex { get; }
4854 public string Delta { get; }
4855 public string EventId { get; }
4856 public string ItemId { get; }
4857 public int OutputIndex { get; }
4858 public string ResponseId { get; }
4859 }
4860 [Experimental("OPENAI002")]
4861 public class RealtimeServerUpdateResponseOutputAudioTranscriptDone : RealtimeServerUpdate, IJsonModel<RealtimeServerUpdateResponseOutputAudioTranscriptDone>, IPersistableModel<RealtimeServerUpdateResponseOutputAudioTranscriptDone> {
4862 public int ContentIndex { get; }
4863 public string EventId { get; }
4864 public string ItemId { get; }
4865 public int OutputIndex { get; }
4866 public string ResponseId { get; }
4867 public string Transcript { get; }
4868 }
4869 [Experimental("OPENAI002")]
4870 public class RealtimeServerUpdateResponseOutputItemAdded : RealtimeServerUpdate, IJsonModel<RealtimeServerUpdateResponseOutputItemAdded>, IPersistableModel<RealtimeServerUpdateResponseOutputItemAdded> {
4871 public string EventId { get; }
4872 public RealtimeItem Item { get; }
4873 public int OutputIndex { get; }
4874 public string ResponseId { get; }
4875 }
4876 [Experimental("OPENAI002")]
4877 public class RealtimeServerUpdateResponseOutputItemDone : RealtimeServerUpdate, IJsonModel<RealtimeServerUpdateResponseOutputItemDone>, IPersistableModel<RealtimeServerUpdateResponseOutputItemDone> {
4878 public string EventId { get; }
4879 public RealtimeItem Item { get; }
4880 public int OutputIndex { get; }
4881 public string ResponseId { get; }
4882 }
4883 [Experimental("OPENAI002")]
4884 public class RealtimeServerUpdateResponseOutputTextDelta : RealtimeServerUpdate, IJsonModel<RealtimeServerUpdateResponseOutputTextDelta>, IPersistableModel<RealtimeServerUpdateResponseOutputTextDelta> {
4885 public int ContentIndex { get; }
4886 public string Delta { get; }
4887 public string EventId { get; }
4888 public string ItemId { get; }
4889 public int OutputIndex { get; }
4890 public string ResponseId { get; }
4891 }
4892 [Experimental("OPENAI002")]
4893 public class RealtimeServerUpdateResponseOutputTextDone : RealtimeServerUpdate, IJsonModel<RealtimeServerUpdateResponseOutputTextDone>, IPersistableModel<RealtimeServerUpdateResponseOutputTextDone> {
4894 public int ContentIndex { get; }
4895 public string EventId { get; }
4896 public string ItemId { get; }
4897 public int OutputIndex { get; }
4898 public string ResponseId { get; }
4899 public string Text { get; }
4900 }
4901 [Experimental("OPENAI002")]
4902 public class RealtimeServerUpdateSessionCreated : RealtimeServerUpdate, IJsonModel<RealtimeServerUpdateSessionCreated>, IPersistableModel<RealtimeServerUpdateSessionCreated> {
4903 public string EventId { get; }
4904 public RealtimeSession Session { get; }
4905 }
4906 [Experimental("OPENAI002")]
4907 public class RealtimeServerUpdateSessionUpdated : RealtimeServerUpdate, IJsonModel<RealtimeServerUpdateSessionUpdated>, IPersistableModel<RealtimeServerUpdateSessionUpdated> {
4908 public string EventId { get; }
4909 public RealtimeSession Session { get; }
4910 }
4911 [Experimental("OPENAI002")]
4912 public class RealtimeServerVadTurnDetection : RealtimeTurnDetection, IJsonModel<RealtimeServerVadTurnDetection>, IPersistableModel<RealtimeServerVadTurnDetection> {
4913 public RealtimeServerVadTurnDetection();
4914 public bool? CreateResponseEnabled { get; set; }
4915 public float? DetectionThreshold { get; set; }
4916 public TimeSpan? IdleTimeout { get; set; }
4917 public bool? InterruptResponseEnabled { get; set; }
4918 public TimeSpan? PrefixPadding { get; set; }
4919 public TimeSpan? SilenceDuration { get; set; }
4920 }
4921 [Experimental("OPENAI002")]
4922 public class RealtimeSession : IJsonModel<RealtimeSession>, IPersistableModel<RealtimeSession> {
4923 [Serialization.JsonIgnore]
4924 [EditorBrowsable(EditorBrowsableState.Never)]
4925 [Experimental("SCME0001")]
4926 public ref JsonPatch Patch { get; }
4927 }
4928 [Experimental("OPENAI002")]
4929 public class RealtimeSessionClient : IDisposable {
4930 protected internal RealtimeSessionClient(ApiKeyCredential credential, Uri endpoint, string model, string intent, RealtimeClient parentClient);
4931 public Net.WebSockets.WebSocket WebSocket { get; protected set; }
4932 public virtual void AddItem(RealtimeItem item, string previousItemId, CancellationToken cancellationToken = default);
4933 public virtual void AddItem(RealtimeItem item, CancellationToken cancellationToken = default);
4934 public virtual Task AddItemAsync(RealtimeItem item, string previousItemId, CancellationToken cancellationToken = default);
4935 public virtual Task AddItemAsync(RealtimeItem item, CancellationToken cancellationToken = default);
4936 public virtual void CancelResponse(CancellationToken cancellationToken = default);
4937 public virtual Task CancelResponseAsync(CancellationToken cancellationToken = default);
4938 public virtual void ClearInputAudio(CancellationToken cancellationToken = default);
4939 public virtual Task ClearInputAudioAsync(CancellationToken cancellationToken = default);
4940 public virtual void CommitPendingAudio(CancellationToken cancellationToken = default);
4941 public virtual Task CommitPendingAudioAsync(CancellationToken cancellationToken = default);
4942 public virtual void ConfigureConversationSession(RealtimeConversationSessionOptions sessionOptions, CancellationToken cancellationToken = default);
4943 public virtual Task ConfigureConversationSessionAsync(RealtimeConversationSessionOptions sessionOptions, CancellationToken cancellationToken = default);
4944 public virtual void ConfigureTranscriptionSession(RealtimeTranscriptionSessionOptions sessionOptions, CancellationToken cancellationToken = default);
4945 public virtual Task ConfigureTranscriptionSessionAsync(RealtimeTranscriptionSessionOptions sessionOptions, CancellationToken cancellationToken = default);
4946 protected internal virtual void Connect(string queryString = null, IDictionary<string, string> headers = null, CancellationToken cancellationToken = default);
4947 protected internal virtual Task ConnectAsync(string queryString = null, IDictionary<string, string> headers = null, CancellationToken cancellationToken = default);
4948 public virtual void DeleteItem(string itemId, CancellationToken cancellationToken = default);
4949 public virtual Task DeleteItemAsync(string itemId, CancellationToken cancellationToken = default);
4950 public void Dispose();
4951 public virtual IEnumerable<ClientResult> ReceiveUpdates(RequestOptions options);
4952 public virtual IEnumerable<RealtimeServerUpdate> ReceiveUpdates(CancellationToken cancellationToken = default);
4953 public virtual IAsyncEnumerable<ClientResult> ReceiveUpdatesAsync(RequestOptions options);
4954 public virtual IAsyncEnumerable<RealtimeServerUpdate> ReceiveUpdatesAsync(CancellationToken cancellationToken = default);
4955 public virtual void RequestItemRetrieval(string itemId, CancellationToken cancellationToken = default);
4956 public virtual Task RequestItemRetrievalAsync(string itemId, CancellationToken cancellationToken = default);
4957 public virtual void SendCommand(RealtimeClientCommand command, CancellationToken cancellationToken = default);
4958 public virtual void SendCommand(BinaryData data, RequestOptions options);
4959 public virtual Task SendCommandAsync(RealtimeClientCommand command, CancellationToken cancellationToken = default);
4960 public virtual Task SendCommandAsync(BinaryData data, RequestOptions options);
4961 public virtual void SendInputAudio(BinaryData audio, CancellationToken cancellationToken = default);
4962 public virtual void SendInputAudio(Stream audio, CancellationToken cancellationToken = default);
4963 public virtual Task SendInputAudioAsync(BinaryData audio, CancellationToken cancellationToken = default);
4964 public virtual Task SendInputAudioAsync(Stream audio, CancellationToken cancellationToken = default);
4965 public virtual void StartResponse(RealtimeResponseOptions responseOptions, CancellationToken cancellationToken = default);
4966 public virtual void StartResponse(CancellationToken cancellationToken = default);
4967 public virtual Task StartResponseAsync(RealtimeResponseOptions responseOptions, CancellationToken cancellationToken = default);
4968 public virtual Task StartResponseAsync(CancellationToken cancellationToken = default);
4969 public virtual void TruncateItem(string itemId, int contentPartIndex, TimeSpan audioDuration, CancellationToken cancellationToken = default);
4970 public virtual Task TruncateItemAsync(string itemId, int contentPartIndex, TimeSpan audioDuration, CancellationToken cancellationToken = default);
4971 }
4972 [Experimental("OPENAI002")]
4973 public class RealtimeSessionClientOptions {
4974 public string ClientSecret { get; set; }
4975 public IDictionary<string, string> Headers { get; }
4976 public string QueryString { get; set; }
4977 }
4978 [Experimental("OPENAI002")]
4979 public class RealtimeSessionOptions : IJsonModel<RealtimeSessionOptions>, IPersistableModel<RealtimeSessionOptions> {
4980 [Serialization.JsonIgnore]
4981 [EditorBrowsable(EditorBrowsableState.Never)]
4982 [Experimental("SCME0001")]
4983 public ref JsonPatch Patch { get; }
4984 }
4985 [Experimental("OPENAI002")]
4986 public class RealtimeTool : IJsonModel<RealtimeTool>, IPersistableModel<RealtimeTool> {
4987 [Serialization.JsonIgnore]
4988 [EditorBrowsable(EditorBrowsableState.Never)]
4989 [Experimental("SCME0001")]
4990 public ref JsonPatch Patch { get; }
4991 }
4992 [Experimental("OPENAI002")]
4993 public class RealtimeToolChoice : IJsonModel<RealtimeToolChoice>, IPersistableModel<RealtimeToolChoice> {
4994 public RealtimeToolChoice(RealtimeCustomToolChoice customToolChoice);
4995 public RealtimeToolChoice(RealtimeDefaultToolChoice defaultToolChoice);
4996 public RealtimeCustomToolChoice CustomToolChoice { get; }
4997 public RealtimeDefaultToolChoice? DefaultToolChoice { get; }
4998 [Serialization.JsonIgnore]
4999 [EditorBrowsable(EditorBrowsableState.Never)]
5000 [Experimental("SCME0001")]
5001 public ref JsonPatch Patch { get; }
5002 public static implicit operator RealtimeToolChoice(RealtimeCustomToolChoice customToolChoice);
5003 public static implicit operator RealtimeToolChoice(RealtimeDefaultToolChoice defaultToolChoice);
5004 }
5005 [Experimental("OPENAI002")]
5006 public class RealtimeTracing : IJsonModel<RealtimeTracing>, IPersistableModel<RealtimeTracing> {
5007 public RealtimeTracing(RealtimeCustomTracing customTracing);
5008 public RealtimeTracing(RealtimeDefaultTracing defaultTracing);
5009 public RealtimeCustomTracing CustomTracing { get; }
5010 public RealtimeDefaultTracing? DefaultTracing { get; }
5011 [Serialization.JsonIgnore]
5012 [EditorBrowsable(EditorBrowsableState.Never)]
5013 [Experimental("SCME0001")]
5014 public ref JsonPatch Patch { get; }
5015 public static implicit operator RealtimeTracing(RealtimeCustomTracing customTracing);
5016 public static implicit operator RealtimeTracing(RealtimeDefaultTracing defaultTracing);
5017 }
5018 [Experimental("OPENAI002")]
5019 public class RealtimeTranscriptionDurationUsage : RealtimeTranscriptionUsage, IJsonModel<RealtimeTranscriptionDurationUsage>, IPersistableModel<RealtimeTranscriptionDurationUsage> {
5020 public TimeSpan Duration { get; }
5021 }
5022 [Experimental("OPENAI002")]
5023 public class RealtimeTranscriptionInputTokenUsageDetails : IJsonModel<RealtimeTranscriptionInputTokenUsageDetails>, IPersistableModel<RealtimeTranscriptionInputTokenUsageDetails> {
5024 public int? AudioTokenCount { get; }
5025 [Serialization.JsonIgnore]
5026 [EditorBrowsable(EditorBrowsableState.Never)]
5027 [Experimental("SCME0001")]
5028 public ref JsonPatch Patch { get; }
5029 public int? TextTokenCount { get; }
5030 }
5031 [Experimental("OPENAI002")]
5032 public class RealtimeTranscriptionSession : RealtimeSession, IJsonModel<RealtimeTranscriptionSession>, IPersistableModel<RealtimeTranscriptionSession> {
5033 public RealtimeTranscriptionSessionAudioOptions AudioOptions { get; set; }
5034 public DateTimeOffset? ExpiresAt { get; }
5035 public string Id { get; }
5036 public IList<RealtimeIncludedProperty> IncludedProperties { get; }
5037 public string Object { get; }
5038 }
5039 [Experimental("OPENAI002")]
5040 public class RealtimeTranscriptionSessionAudioOptions : IJsonModel<RealtimeTranscriptionSessionAudioOptions>, IPersistableModel<RealtimeTranscriptionSessionAudioOptions> {
5041 public RealtimeTranscriptionSessionInputAudioOptions InputAudioOptions { get; set; }
5042 [Serialization.JsonIgnore]
5043 [EditorBrowsable(EditorBrowsableState.Never)]
5044 [Experimental("SCME0001")]
5045 public ref JsonPatch Patch { get; }
5046 }
5047 [Experimental("OPENAI002")]
5048 public class RealtimeTranscriptionSessionInputAudioOptions : IJsonModel<RealtimeTranscriptionSessionInputAudioOptions>, IPersistableModel<RealtimeTranscriptionSessionInputAudioOptions> {
5049 public RealtimeAudioFormat AudioFormat { get; set; }
5050 public RealtimeAudioTranscriptionOptions AudioTranscriptionOptions { get; set; }
5051 public RealtimeNoiseReduction NoiseReduction { get; set; }
5052 [Serialization.JsonIgnore]
5053 [EditorBrowsable(EditorBrowsableState.Never)]
5054 [Experimental("SCME0001")]
5055 public ref JsonPatch Patch { get; }
5056 public RealtimeTurnDetection TurnDetection { get; set; }
5057 public void DisableTurnDetection();
5058 }
5059 [Experimental("OPENAI002")]
5060 public class RealtimeTranscriptionSessionOptions : RealtimeSessionOptions, IJsonModel<RealtimeTranscriptionSessionOptions>, IPersistableModel<RealtimeTranscriptionSessionOptions> {
5061 public RealtimeTranscriptionSessionOptions();
5062 public RealtimeTranscriptionSessionAudioOptions AudioOptions { get; set; }
5063 public IList<RealtimeIncludedProperty> IncludedProperties { get; }
5064 }
5065 [Experimental("OPENAI002")]
5066 public class RealtimeTranscriptionTokenUsage : RealtimeTranscriptionUsage, IJsonModel<RealtimeTranscriptionTokenUsage>, IPersistableModel<RealtimeTranscriptionTokenUsage> {
5067 public int InputTokenCount { get; }
5068 public RealtimeTranscriptionInputTokenUsageDetails InputTokenDetails { get; }
5069 public int OutputTokenCount { get; }
5070 public int TotalTokenCount { get; }
5071 }
5072 [Experimental("OPENAI002")]
5073 public class RealtimeTranscriptionUsage : IJsonModel<RealtimeTranscriptionUsage>, IPersistableModel<RealtimeTranscriptionUsage> {
5074 [Serialization.JsonIgnore]
5075 [EditorBrowsable(EditorBrowsableState.Never)]
5076 [Experimental("SCME0001")]
5077 public ref JsonPatch Patch { get; }
5078 }
5079 [Experimental("OPENAI002")]
5080 public class RealtimeTruncation : IJsonModel<RealtimeTruncation>, IPersistableModel<RealtimeTruncation> {
5081 public RealtimeTruncation(RealtimeCustomTruncation customTruncation);
5082 public RealtimeTruncation(RealtimeDefaultTruncation defaultTruncation);
5083 public RealtimeCustomTruncation CustomTruncation { get; }
5084 public RealtimeDefaultTruncation? DefaultTruncation { get; }
5085 [Serialization.JsonIgnore]
5086 [EditorBrowsable(EditorBrowsableState.Never)]
5087 [Experimental("SCME0001")]
5088 public ref JsonPatch Patch { get; }
5089 public static implicit operator RealtimeTruncation(RealtimeCustomTruncation customTruncation);
5090 public static implicit operator RealtimeTruncation(RealtimeDefaultTruncation defaultTruncation);
5091 }
5092 [Experimental("OPENAI002")]
5093 public class RealtimeTurnDetection : IJsonModel<RealtimeTurnDetection>, IPersistableModel<RealtimeTurnDetection> {
5094 [Serialization.JsonIgnore]
5095 [EditorBrowsable(EditorBrowsableState.Never)]
5096 [Experimental("SCME0001")]
5097 public ref JsonPatch Patch { get; }
5098 }
5099 [Experimental("OPENAI002")]
5100 public readonly partial struct RealtimeVoice : IEquatable<RealtimeVoice> {
5101 public RealtimeVoice(string value);
5102 public static RealtimeVoice Alloy { get; }
5103 public static RealtimeVoice Ash { get; }
5104 public static RealtimeVoice Ballad { get; }
5105 public static RealtimeVoice Cedar { get; }
5106 public static RealtimeVoice Coral { get; }
5107 public static RealtimeVoice Echo { get; }
5108 public static RealtimeVoice Marin { get; }
5109 public static RealtimeVoice Sage { get; }
5110 public static RealtimeVoice Shimmer { get; }
5111 public static RealtimeVoice Verse { get; }
5112 public readonly bool Equals(RealtimeVoice other);
5113 [EditorBrowsable(EditorBrowsableState.Never)]
5114 public override readonly bool Equals(object obj);
5115 [EditorBrowsable(EditorBrowsableState.Never)]
5116 public override readonly int GetHashCode();
5117 public static bool operator ==(RealtimeVoice left, RealtimeVoice right);
5118 public static implicit operator RealtimeVoice(string value);
5119 public static implicit operator RealtimeVoice?(string value);
5120 public static bool operator !=(RealtimeVoice left, RealtimeVoice right);
5121 public override readonly string ToString();
5122 }
5123}
5124namespace OpenAI.Responses {
5125 [Experimental("OPENAI001")]
5126 public class ApplyPatchCallItem : ResponseItem, IJsonModel<ApplyPatchCallItem>, IPersistableModel<ApplyPatchCallItem> {
5127 public ApplyPatchCallItem(string callId, ApplyPatchOperation operation);
5128 public string CallId { get; set; }
5129 public string CreatedBy { get; set; }
5130 public ApplyPatchOperation Operation { get; set; }
5131 public ApplyPatchCallStatus? Status { get; set; }
5132 }
5133 [Experimental("OPENAI001")]
5134 public class ApplyPatchCallOutputItem : ResponseItem, IJsonModel<ApplyPatchCallOutputItem>, IPersistableModel<ApplyPatchCallOutputItem> {
5135 public ApplyPatchCallOutputItem(string callId, ApplyPatchCallOutputStatus status);
5136 public string CallId { get; set; }
5137 public string CreatedBy { get; set; }
5138 public string Output { get; set; }
5139 public ApplyPatchCallOutputStatus Status { get; set; }
5140 }
5141 [Experimental("OPENAI001")]
5142 public readonly partial struct ApplyPatchCallOutputStatus : IEquatable<ApplyPatchCallOutputStatus> {
5143 public ApplyPatchCallOutputStatus(string value);
5144 public static ApplyPatchCallOutputStatus Completed { get; }
5145 public static ApplyPatchCallOutputStatus Failed { get; }
5146 public readonly bool Equals(ApplyPatchCallOutputStatus other);
5147 [EditorBrowsable(EditorBrowsableState.Never)]
5148 public override readonly bool Equals(object obj);
5149 [EditorBrowsable(EditorBrowsableState.Never)]
5150 public override readonly int GetHashCode();
5151 public static bool operator ==(ApplyPatchCallOutputStatus left, ApplyPatchCallOutputStatus right);
5152 public static implicit operator ApplyPatchCallOutputStatus(string value);
5153 public static implicit operator ApplyPatchCallOutputStatus?(string value);
5154 public static bool operator !=(ApplyPatchCallOutputStatus left, ApplyPatchCallOutputStatus right);
5155 public override readonly string ToString();
5156 }
5157 [Experimental("OPENAI001")]
5158 public readonly partial struct ApplyPatchCallStatus : IEquatable<ApplyPatchCallStatus> {
5159 public ApplyPatchCallStatus(string value);
5160 public static ApplyPatchCallStatus Completed { get; }
5161 public static ApplyPatchCallStatus InProgress { get; }
5162 public readonly bool Equals(ApplyPatchCallStatus other);
5163 [EditorBrowsable(EditorBrowsableState.Never)]
5164 public override readonly bool Equals(object obj);
5165 [EditorBrowsable(EditorBrowsableState.Never)]
5166 public override readonly int GetHashCode();
5167 public static bool operator ==(ApplyPatchCallStatus left, ApplyPatchCallStatus right);
5168 public static implicit operator ApplyPatchCallStatus(string value);
5169 public static implicit operator ApplyPatchCallStatus?(string value);
5170 public static bool operator !=(ApplyPatchCallStatus left, ApplyPatchCallStatus right);
5171 public override readonly string ToString();
5172 }
5173 [Experimental("OPENAI001")]
5174 public class ApplyPatchCreateFileOperation : ApplyPatchOperation, IJsonModel<ApplyPatchCreateFileOperation>, IPersistableModel<ApplyPatchCreateFileOperation> {
5175 public ApplyPatchCreateFileOperation(string filePath, string diff);
5176 public string Diff { get; set; }
5177 public string FilePath { get; set; }
5178 }
5179 [Experimental("OPENAI001")]
5180 public class ApplyPatchDeleteFileOperation : ApplyPatchOperation, IJsonModel<ApplyPatchDeleteFileOperation>, IPersistableModel<ApplyPatchDeleteFileOperation> {
5181 public ApplyPatchDeleteFileOperation(string filePath);
5182 public string FilePath { get; set; }
5183 }
5184 [Experimental("OPENAI001")]
5185 public class ApplyPatchOperation : IJsonModel<ApplyPatchOperation>, IPersistableModel<ApplyPatchOperation> {
5186 [Serialization.JsonIgnore]
5187 [EditorBrowsable(EditorBrowsableState.Never)]
5188 [Experimental("SCME0001")]
5189 public ref JsonPatch Patch { get; }
5190 }
5191 [Experimental("OPENAI001")]
5192 public class ApplyPatchTool : ResponseTool, IJsonModel<ApplyPatchTool>, IPersistableModel<ApplyPatchTool> {
5193 public ApplyPatchTool();
5194 }
5195 [Experimental("OPENAI001")]
5196 public class ApplyPatchUpdateFileOperation : ApplyPatchOperation, IJsonModel<ApplyPatchUpdateFileOperation>, IPersistableModel<ApplyPatchUpdateFileOperation> {
5197 public ApplyPatchUpdateFileOperation(string filePath, string diff);
5198 public string Diff { get; set; }
5199 public string FilePath { get; set; }
5200 }
5201 [Experimental("OPENAI001")]
5202 public class AutomaticCodeInterpreterToolContainerConfiguration : CodeInterpreterToolContainerConfiguration, IJsonModel<AutomaticCodeInterpreterToolContainerConfiguration>, IPersistableModel<AutomaticCodeInterpreterToolContainerConfiguration> {
5203 public AutomaticCodeInterpreterToolContainerConfiguration();
5204 public IList<string> FileIds { get; }
5205 }
5206 [Experimental("OPENAI001")]
5207 public class CodeInterpreterCallImageOutput : CodeInterpreterCallOutput, IJsonModel<CodeInterpreterCallImageOutput>, IPersistableModel<CodeInterpreterCallImageOutput> {
5208 public CodeInterpreterCallImageOutput(Uri imageUri);
5209 public Uri ImageUri { get; set; }
5210 }
5211 [Experimental("OPENAI001")]
5212 public class CodeInterpreterCallLogsOutput : CodeInterpreterCallOutput, IJsonModel<CodeInterpreterCallLogsOutput>, IPersistableModel<CodeInterpreterCallLogsOutput> {
5213 public CodeInterpreterCallLogsOutput(string logs);
5214 public string Logs { get; set; }
5215 }
5216 [Experimental("OPENAI001")]
5217 public class CodeInterpreterCallOutput : IJsonModel<CodeInterpreterCallOutput>, IPersistableModel<CodeInterpreterCallOutput> {
5218 [Serialization.JsonIgnore]
5219 [EditorBrowsable(EditorBrowsableState.Never)]
5220 [Experimental("SCME0001")]
5221 public ref JsonPatch Patch { get; }
5222 }
5223 [Experimental("OPENAI001")]
5224 public class CodeInterpreterCallResponseItem : ResponseItem, IJsonModel<CodeInterpreterCallResponseItem>, IPersistableModel<CodeInterpreterCallResponseItem> {
5225 public CodeInterpreterCallResponseItem(string code);
5226 public string Code { get; set; }
5227 public string ContainerId { get; set; }
5228 public IList<CodeInterpreterCallOutput> Outputs { get; }
5229 public CodeInterpreterCallStatus? Status { get; set; }
5230 }
5231 [Experimental("OPENAI001")]
5232 public enum CodeInterpreterCallStatus {
5233 InProgress = 0,
5234 Interpreting = 1,
5235 Completed = 2,
5236 Incomplete = 3,
5237 Failed = 4
5238 }
5239 [Experimental("OPENAI001")]
5240 public class CodeInterpreterTool : ResponseTool, IJsonModel<CodeInterpreterTool>, IPersistableModel<CodeInterpreterTool> {
5241 public CodeInterpreterTool(CodeInterpreterToolContainer container);
5242 public CodeInterpreterToolContainer Container { get; }
5243 }
5244 [Experimental("OPENAI001")]
5245 public class CodeInterpreterToolContainer : IJsonModel<CodeInterpreterToolContainer>, IPersistableModel<CodeInterpreterToolContainer> {
5246 public CodeInterpreterToolContainer(CodeInterpreterToolContainerConfiguration containerConfiguration);
5247 public CodeInterpreterToolContainer(string containerId);
5248 public CodeInterpreterToolContainerConfiguration ContainerConfiguration { get; }
5249 public string ContainerId { get; }
5250 [Serialization.JsonIgnore]
5251 [EditorBrowsable(EditorBrowsableState.Never)]
5252 [Experimental("SCME0001")]
5253 public ref JsonPatch Patch { get; }
5254 }
5255 [Experimental("OPENAI001")]
5256 public class CodeInterpreterToolContainerConfiguration : IJsonModel<CodeInterpreterToolContainerConfiguration>, IPersistableModel<CodeInterpreterToolContainerConfiguration> {
5257 [Serialization.JsonIgnore]
5258 [EditorBrowsable(EditorBrowsableState.Never)]
5259 [Experimental("SCME0001")]
5260 public ref JsonPatch Patch { get; }
5261 public static AutomaticCodeInterpreterToolContainerConfiguration CreateAutomaticContainerConfiguration(IEnumerable<string> fileIds = null);
5262 }
5263 [Experimental("OPENAICUA001")]
5264 public class ComputerCallAction : IJsonModel<ComputerCallAction>, IPersistableModel<ComputerCallAction> {
5265 public Drawing.Point? ClickCoordinates { get; }
5266 public ComputerCallActionMouseButton? ClickMouseButton { get; }
5267 public Drawing.Point? DoubleClickCoordinates { get; }
5268 public IList<Drawing.Point> DragPath { get; }
5269 public IList<string> KeyPressKeyCodes { get; }
5270 public ComputerCallActionKind Kind { get; }
5271 public Drawing.Point? MoveCoordinates { get; }
5272 [Serialization.JsonIgnore]
5273 [EditorBrowsable(EditorBrowsableState.Never)]
5274 [Experimental("SCME0001")]
5275 public ref JsonPatch Patch { get; }
5276 public Drawing.Point? ScrollCoordinates { get; }
5277 public int? ScrollHorizontalOffset { get; }
5278 public int? ScrollVerticalOffset { get; }
5279 public string TypeText { get; }
5280 public static ComputerCallAction CreateClickAction(Drawing.Point clickCoordinates, ComputerCallActionMouseButton clickMouseButton);
5281 public static ComputerCallAction CreateDoubleClickAction(Drawing.Point doubleClickCoordinates, ComputerCallActionMouseButton doubleClickMouseButton);
5282 public static ComputerCallAction CreateDragAction(IList<Drawing.Point> dragPath);
5283 public static ComputerCallAction CreateKeyPressAction(IList<string> keyCodes);
5284 public static ComputerCallAction CreateMoveAction(Drawing.Point moveCoordinates);
5285 public static ComputerCallAction CreateScreenshotAction();
5286 public static ComputerCallAction CreateScrollAction(Drawing.Point scrollCoordinates, int horizontalOffset, int verticalOffset);
5287 public static ComputerCallAction CreateTypeAction(string typeText);
5288 public static ComputerCallAction CreateWaitAction();
5289 }
5290 [Experimental("OPENAICUA001")]
5291 public enum ComputerCallActionKind {
5292 Click = 0,
5293 DoubleClick = 1,
5294 Drag = 2,
5295 KeyPress = 3,
5296 Move = 4,
5297 Screenshot = 5,
5298 Scroll = 6,
5299 Type = 7,
5300 Wait = 8
5301 }
5302 [Experimental("OPENAICUA001")]
5303 public enum ComputerCallActionMouseButton {
5304 Left = 0,
5305 Right = 1,
5306 Wheel = 2,
5307 Back = 3,
5308 Forward = 4
5309 }
5310 [Experimental("OPENAICUA001")]
5311 public class ComputerCallOutput : IJsonModel<ComputerCallOutput>, IPersistableModel<ComputerCallOutput> {
5312 [Serialization.JsonIgnore]
5313 [EditorBrowsable(EditorBrowsableState.Never)]
5314 [Experimental("SCME0001")]
5315 public ref JsonPatch Patch { get; }
5316 public static ComputerCallOutput CreateScreenshotOutput(BinaryData screenshotImageBytes, string screenshotImageBytesMediaType);
5317 public static ComputerCallOutput CreateScreenshotOutput(string screenshotImageFileId);
5318 public static ComputerCallOutput CreateScreenshotOutput(Uri screenshotImageUri);
5319 }
5320 [Experimental("OPENAICUA001")]
5321 public class ComputerCallOutputResponseItem : ResponseItem, IJsonModel<ComputerCallOutputResponseItem>, IPersistableModel<ComputerCallOutputResponseItem> {
5322 public ComputerCallOutputResponseItem(string callId, ComputerCallOutput output);
5323 public IList<ComputerCallSafetyCheck> AcknowledgedSafetyChecks { get; }
5324 public string CallId { get; set; }
5325 public ComputerCallOutput Output { get; set; }
5326 public ComputerCallOutputStatus? Status { get; set; }
5327 }
5328 [Experimental("OPENAICUA001")]
5329 public enum ComputerCallOutputStatus {
5330 InProgress = 0,
5331 Completed = 1,
5332 Incomplete = 2
5333 }
5334 [Experimental("OPENAICUA001")]
5335 public class ComputerCallResponseItem : ResponseItem, IJsonModel<ComputerCallResponseItem>, IPersistableModel<ComputerCallResponseItem> {
5336 public ComputerCallResponseItem(string callId, ComputerCallAction action, IEnumerable<ComputerCallSafetyCheck> pendingSafetyChecks);
5337 public ComputerCallAction Action { get; set; }
5338 public string CallId { get; set; }
5339 public IList<ComputerCallSafetyCheck> PendingSafetyChecks { get; }
5340 public ComputerCallStatus? Status { get; set; }
5341 }
5342 [Experimental("OPENAICUA001")]
5343 public class ComputerCallSafetyCheck : IJsonModel<ComputerCallSafetyCheck>, IPersistableModel<ComputerCallSafetyCheck> {
5344 public ComputerCallSafetyCheck(string id, string code, string message);
5345 public string Code { get; set; }
5346 public string Id { get; set; }
5347 public string Message { get; set; }
5348 [Serialization.JsonIgnore]
5349 [EditorBrowsable(EditorBrowsableState.Never)]
5350 [Experimental("SCME0001")]
5351 public ref JsonPatch Patch { get; }
5352 }
5353 [Experimental("OPENAICUA001")]
5354 public enum ComputerCallStatus {
5355 InProgress = 0,
5356 Completed = 1,
5357 Incomplete = 2
5358 }
5359 [Experimental("OPENAI001")]
5360 public class ComputerTool : ResponseTool, IJsonModel<ComputerTool>, IPersistableModel<ComputerTool> {
5361 public ComputerTool(ComputerToolEnvironment environment, int displayWidth, int displayHeight);
5362 public int DisplayHeight { get; set; }
5363 public int DisplayWidth { get; set; }
5364 public ComputerToolEnvironment Environment { get; set; }
5365 }
5366 [Experimental("OPENAICUA001")]
5367 public readonly partial struct ComputerToolEnvironment : IEquatable<ComputerToolEnvironment> {
5368 public ComputerToolEnvironment(string value);
5369 public static ComputerToolEnvironment Browser { get; }
5370 public static ComputerToolEnvironment Linux { get; }
5371 public static ComputerToolEnvironment Mac { get; }
5372 public static ComputerToolEnvironment Ubuntu { get; }
5373 public static ComputerToolEnvironment Windows { get; }
5374 public readonly bool Equals(ComputerToolEnvironment other);
5375 [EditorBrowsable(EditorBrowsableState.Never)]
5376 public override readonly bool Equals(object obj);
5377 [EditorBrowsable(EditorBrowsableState.Never)]
5378 public override readonly int GetHashCode();
5379 public static bool operator ==(ComputerToolEnvironment left, ComputerToolEnvironment right);
5380 public static implicit operator ComputerToolEnvironment(string value);
5381 public static implicit operator ComputerToolEnvironment?(string value);
5382 public static bool operator !=(ComputerToolEnvironment left, ComputerToolEnvironment right);
5383 public override readonly string ToString();
5384 }
5385 [Experimental("OPENAI001")]
5386 public class ContainerFileCitationMessageAnnotation : ResponseMessageAnnotation, IJsonModel<ContainerFileCitationMessageAnnotation>, IPersistableModel<ContainerFileCitationMessageAnnotation> {
5387 public ContainerFileCitationMessageAnnotation(string containerId, string fileId, int startIndex, int endIndex, string filename);
5388 public string ContainerId { get; set; }
5389 public int EndIndex { get; set; }
5390 public string FileId { get; set; }
5391 public string Filename { get; set; }
5392 public int StartIndex { get; set; }
5393 }
5394 [Experimental("OPENAI001")]
5395 public class CreateResponseOptions : IJsonModel<CreateResponseOptions>, IPersistableModel<CreateResponseOptions> {
5396 public CreateResponseOptions();
5397 public CreateResponseOptions(string model, IEnumerable<ResponseItem> inputItems);
5398 public bool? BackgroundModeEnabled { get; set; }
5399 public ResponseConversationOptions ConversationOptions { get; set; }
5400 public string EndUserId { get; set; }
5401 public IList<IncludedResponseProperty> IncludedProperties { get; }
5402 public IList<ResponseItem> InputItems { get; }
5403 public string Instructions { get; set; }
5404 public int? MaxOutputTokenCount { get; set; }
5405 public int? MaxToolCallCount { get; set; }
5406 public IDictionary<string, string> Metadata { get; }
5407 public string Model { get; set; }
5408 public bool? ParallelToolCallsEnabled { get; set; }
5409 [Serialization.JsonIgnore]
5410 [EditorBrowsable(EditorBrowsableState.Never)]
5411 [Experimental("SCME0001")]
5412 public ref JsonPatch Patch { get; }
5413 public string PreviousResponseId { get; set; }
5414 public ResponseReasoningOptions ReasoningOptions { get; set; }
5415 public string SafetyIdentifier { get; set; }
5416 public ResponseServiceTier? ServiceTier { get; set; }
5417 public bool? StoredOutputEnabled { get; set; }
5418 public bool? StreamingEnabled { get; set; }
5419 public float? Temperature { get; set; }
5420 public ResponseTextOptions TextOptions { get; set; }
5421 public ResponseToolChoice ToolChoice { get; set; }
5422 public IList<ResponseTool> Tools { get; }
5423 public int? TopLogProbabilityCount { get; set; }
5424 public float? TopP { get; set; }
5425 public ResponseTruncationMode? TruncationMode { get; set; }
5426 public static implicit operator BinaryContent(CreateResponseOptions createResponseOptions);
5427 }
5428 [Experimental("OPENAI001")]
5429 public class CustomMcpToolCallApprovalPolicy : IJsonModel<CustomMcpToolCallApprovalPolicy>, IPersistableModel<CustomMcpToolCallApprovalPolicy> {
5430 [Serialization.JsonIgnore]
5431 [EditorBrowsable(EditorBrowsableState.Never)]
5432 [Experimental("SCME0001")]
5433 public ref JsonPatch Patch { get; }
5434 public McpToolFilter ToolsAlwaysRequiringApproval { get; set; }
5435 public McpToolFilter ToolsNeverRequiringApproval { get; set; }
5436 }
5437 [Experimental("OPENAI001")]
5438 public class FileCitationMessageAnnotation : ResponseMessageAnnotation, IJsonModel<FileCitationMessageAnnotation>, IPersistableModel<FileCitationMessageAnnotation> {
5439 public FileCitationMessageAnnotation(string fileId, int index, string filename);
5440 public string FileId { get; set; }
5441 public string Filename { get; set; }
5442 public int Index { get; set; }
5443 }
5444 [Experimental("OPENAI001")]
5445 public class FilePathMessageAnnotation : ResponseMessageAnnotation, IJsonModel<FilePathMessageAnnotation>, IPersistableModel<FilePathMessageAnnotation> {
5446 public FilePathMessageAnnotation(string fileId, int index);
5447 public string FileId { get; set; }
5448 public int Index { get; set; }
5449 }
5450 [Experimental("OPENAI001")]
5451 public class FileSearchCallResponseItem : ResponseItem, IJsonModel<FileSearchCallResponseItem>, IPersistableModel<FileSearchCallResponseItem> {
5452 public FileSearchCallResponseItem(IEnumerable<string> queries);
5453 public IList<string> Queries { get; }
5454 public IList<FileSearchCallResult> Results { get; set; }
5455 public FileSearchCallStatus? Status { get; set; }
5456 }
5457 [Experimental("OPENAI001")]
5458 public class FileSearchCallResult : IJsonModel<FileSearchCallResult>, IPersistableModel<FileSearchCallResult> {
5459 public IDictionary<string, BinaryData> Attributes { get; }
5460 public string FileId { get; set; }
5461 public string Filename { get; set; }
5462 [Serialization.JsonIgnore]
5463 [EditorBrowsable(EditorBrowsableState.Never)]
5464 [Experimental("SCME0001")]
5465 public ref JsonPatch Patch { get; }
5466 public float? Score { get; set; }
5467 public string Text { get; set; }
5468 }
5469 [Experimental("OPENAI001")]
5470 public enum FileSearchCallStatus {
5471 InProgress = 0,
5472 Searching = 1,
5473 Completed = 2,
5474 Incomplete = 3,
5475 Failed = 4
5476 }
5477 [Experimental("OPENAI001")]
5478 public class FileSearchTool : ResponseTool, IJsonModel<FileSearchTool>, IPersistableModel<FileSearchTool> {
5479 public FileSearchTool(IEnumerable<string> vectorStoreIds);
5480 public BinaryData Filters { get; set; }
5481 public int? MaxResultCount { get; set; }
5482 public FileSearchToolRankingOptions RankingOptions { get; set; }
5483 public IList<string> VectorStoreIds { get; }
5484 }
5485 [Experimental("OPENAI001")]
5486 public readonly partial struct FileSearchToolRanker : IEquatable<FileSearchToolRanker> {
5487 public FileSearchToolRanker(string value);
5488 public static FileSearchToolRanker Auto { get; }
5489 public static FileSearchToolRanker Default20241115 { get; }
5490 public readonly bool Equals(FileSearchToolRanker other);
5491 [EditorBrowsable(EditorBrowsableState.Never)]
5492 public override readonly bool Equals(object obj);
5493 [EditorBrowsable(EditorBrowsableState.Never)]
5494 public override readonly int GetHashCode();
5495 public static bool operator ==(FileSearchToolRanker left, FileSearchToolRanker right);
5496 public static implicit operator FileSearchToolRanker(string value);
5497 public static implicit operator FileSearchToolRanker?(string value);
5498 public static bool operator !=(FileSearchToolRanker left, FileSearchToolRanker right);
5499 public override readonly string ToString();
5500 }
5501 [Experimental("OPENAI001")]
5502 public class FileSearchToolRankingOptions : IJsonModel<FileSearchToolRankingOptions>, IPersistableModel<FileSearchToolRankingOptions> {
5503 [Serialization.JsonIgnore]
5504 [EditorBrowsable(EditorBrowsableState.Never)]
5505 [Experimental("SCME0001")]
5506 public ref JsonPatch Patch { get; }
5507 public FileSearchToolRanker? Ranker { get; set; }
5508 public float? ScoreThreshold { get; set; }
5509 }
5510 [Experimental("OPENAI001")]
5511 public class FunctionCallOutputResponseItem : ResponseItem, IJsonModel<FunctionCallOutputResponseItem>, IPersistableModel<FunctionCallOutputResponseItem> {
5512 public FunctionCallOutputResponseItem(string callId, string functionOutput);
5513 public string CallId { get; set; }
5514 public string FunctionOutput { get; set; }
5515 public FunctionCallOutputStatus? Status { get; set; }
5516 }
5517 [Experimental("OPENAI001")]
5518 public enum FunctionCallOutputStatus {
5519 InProgress = 0,
5520 Completed = 1,
5521 Incomplete = 2
5522 }
5523 [Experimental("OPENAI001")]
5524 public class FunctionCallResponseItem : ResponseItem, IJsonModel<FunctionCallResponseItem>, IPersistableModel<FunctionCallResponseItem> {
5525 public FunctionCallResponseItem(string callId, string functionName, BinaryData functionArguments);
5526 public string CallId { get; set; }
5527 public BinaryData FunctionArguments { get; set; }
5528 public string FunctionName { get; set; }
5529 public FunctionCallStatus? Status { get; set; }
5530 }
5531 [Experimental("OPENAI001")]
5532 public enum FunctionCallStatus {
5533 InProgress = 0,
5534 Completed = 1,
5535 Incomplete = 2
5536 }
5537 [Experimental("OPENAI001")]
5538 public class FunctionTool : ResponseTool, IJsonModel<FunctionTool>, IPersistableModel<FunctionTool> {
5539 public FunctionTool(string functionName, BinaryData functionParameters, bool? strictModeEnabled);
5540 public string FunctionDescription { get; set; }
5541 public string FunctionName { get; set; }
5542 public BinaryData FunctionParameters { get; set; }
5543 public bool? StrictModeEnabled { get; set; }
5544 }
5545 [Experimental("OPENAI001")]
5546 public class GetResponseOptions : IJsonModel<GetResponseOptions>, IPersistableModel<GetResponseOptions> {
5547 public GetResponseOptions(string responseId);
5548 public IList<IncludedResponseProperty> IncludedProperties { get; set; }
5549 public bool? IncludeObfuscation { get; set; }
5550 [Serialization.JsonIgnore]
5551 [EditorBrowsable(EditorBrowsableState.Never)]
5552 [Experimental("SCME0001")]
5553 public ref JsonPatch Patch { get; }
5554 public string ResponseId { get; }
5555 public int? StartingAfter { get; set; }
5556 public bool? StreamingEnabled { get; set; }
5557 }
5558 [Experimental("OPENAI001")]
5559 public readonly partial struct GlobalMcpToolCallApprovalPolicy : IEquatable<GlobalMcpToolCallApprovalPolicy> {
5560 public GlobalMcpToolCallApprovalPolicy(string value);
5561 public static GlobalMcpToolCallApprovalPolicy AlwaysRequireApproval { get; }
5562 public static GlobalMcpToolCallApprovalPolicy NeverRequireApproval { get; }
5563 public readonly bool Equals(GlobalMcpToolCallApprovalPolicy other);
5564 [EditorBrowsable(EditorBrowsableState.Never)]
5565 public override readonly bool Equals(object obj);
5566 [EditorBrowsable(EditorBrowsableState.Never)]
5567 public override readonly int GetHashCode();
5568 public static bool operator ==(GlobalMcpToolCallApprovalPolicy left, GlobalMcpToolCallApprovalPolicy right);
5569 public static implicit operator GlobalMcpToolCallApprovalPolicy(string value);
5570 public static implicit operator GlobalMcpToolCallApprovalPolicy?(string value);
5571 public static bool operator !=(GlobalMcpToolCallApprovalPolicy left, GlobalMcpToolCallApprovalPolicy right);
5572 public override readonly string ToString();
5573 }
5574 [Experimental("OPENAI001")]
5575 public class ImageGenerationCallResponseItem : ResponseItem, IJsonModel<ImageGenerationCallResponseItem>, IPersistableModel<ImageGenerationCallResponseItem> {
5576 public ImageGenerationCallResponseItem(ImageGenerationToolAction action, ImageGenToolCallBackground background, BinaryData imageResultBytes);
5577 public ImageGenerationToolAction Action { get; set; }
5578 public ImageGenToolCallBackground Background { get; set; }
5579 public BinaryData ImageResultBytes { get; set; }
5580 public ImageGenToolCallOutputFormat? OutputFormat { get; set; }
5581 public ImageGenToolCallQuality? Quality { get; set; }
5582 public string RevisedPrompt { get; set; }
5583 public ImageGenToolCallSize? Size { get; set; }
5584 public ImageGenerationCallStatus? Status { get; set; }
5585 }
5586 [Experimental("OPENAI001")]
5587 public enum ImageGenerationCallStatus {
5588 InProgress = 0,
5589 Completed = 1,
5590 Generating = 2,
5591 Failed = 3
5592 }
5593 [Experimental("OPENAI001")]
5594 public class ImageGenerationTool : ResponseTool, IJsonModel<ImageGenerationTool>, IPersistableModel<ImageGenerationTool> {
5595 public ImageGenerationTool();
5596 public ImageGenerationToolAction? Action { get; set; }
5597 public ImageGenerationToolBackground? Background { get; set; }
5598 public ImageGenerationToolInputFidelity? InputFidelity { get; set; }
5599 public ImageGenerationToolInputImageMask InputImageMask { get; set; }
5600 public string Model { get; set; }
5601 public ImageGenerationToolModerationLevel? ModerationLevel { get; set; }
5602 public int? OutputCompressionFactor { get; set; }
5603 public ImageGenerationToolOutputFileFormat? OutputFileFormat { get; set; }
5604 public int? PartialImageCount { get; set; }
5605 public ImageGenerationToolQuality? Quality { get; set; }
5606 public ImageGenerationToolSize? Size { get; set; }
5607 }
5608 [Experimental("OPENAI001")]
5609 public readonly partial struct ImageGenerationToolAction : IEquatable<ImageGenerationToolAction> {
5610 public ImageGenerationToolAction(string value);
5611 public static ImageGenerationToolAction Auto { get; }
5612 public static ImageGenerationToolAction Edit { get; }
5613 public static ImageGenerationToolAction Generate { get; }
5614 public readonly bool Equals(ImageGenerationToolAction other);
5615 [EditorBrowsable(EditorBrowsableState.Never)]
5616 public override readonly bool Equals(object obj);
5617 [EditorBrowsable(EditorBrowsableState.Never)]
5618 public override readonly int GetHashCode();
5619 public static bool operator ==(ImageGenerationToolAction left, ImageGenerationToolAction right);
5620 public static implicit operator ImageGenerationToolAction(string value);
5621 public static implicit operator ImageGenerationToolAction?(string value);
5622 public static bool operator !=(ImageGenerationToolAction left, ImageGenerationToolAction right);
5623 public override readonly string ToString();
5624 }
5625 [Experimental("OPENAI001")]
5626 public readonly partial struct ImageGenerationToolBackground : IEquatable<ImageGenerationToolBackground> {
5627 public ImageGenerationToolBackground(string value);
5628 public static ImageGenerationToolBackground Auto { get; }
5629 public static ImageGenerationToolBackground Opaque { get; }
5630 public static ImageGenerationToolBackground Transparent { get; }
5631 public readonly bool Equals(ImageGenerationToolBackground other);
5632 [EditorBrowsable(EditorBrowsableState.Never)]
5633 public override readonly bool Equals(object obj);
5634 [EditorBrowsable(EditorBrowsableState.Never)]
5635 public override readonly int GetHashCode();
5636 public static bool operator ==(ImageGenerationToolBackground left, ImageGenerationToolBackground right);
5637 public static implicit operator ImageGenerationToolBackground(string value);
5638 public static implicit operator ImageGenerationToolBackground?(string value);
5639 public static bool operator !=(ImageGenerationToolBackground left, ImageGenerationToolBackground right);
5640 public override readonly string ToString();
5641 }
5642 [Experimental("OPENAI001")]
5643 public readonly partial struct ImageGenerationToolInputFidelity : IEquatable<ImageGenerationToolInputFidelity> {
5644 public ImageGenerationToolInputFidelity(string value);
5645 public static ImageGenerationToolInputFidelity High { get; }
5646 public static ImageGenerationToolInputFidelity Low { get; }
5647 public readonly bool Equals(ImageGenerationToolInputFidelity other);
5648 [EditorBrowsable(EditorBrowsableState.Never)]
5649 public override readonly bool Equals(object obj);
5650 [EditorBrowsable(EditorBrowsableState.Never)]
5651 public override readonly int GetHashCode();
5652 public static bool operator ==(ImageGenerationToolInputFidelity left, ImageGenerationToolInputFidelity right);
5653 public static implicit operator ImageGenerationToolInputFidelity(string value);
5654 public static implicit operator ImageGenerationToolInputFidelity?(string value);
5655 public static bool operator !=(ImageGenerationToolInputFidelity left, ImageGenerationToolInputFidelity right);
5656 public override readonly string ToString();
5657 }
5658 [Experimental("OPENAI001")]
5659 public class ImageGenerationToolInputImageMask : IJsonModel<ImageGenerationToolInputImageMask>, IPersistableModel<ImageGenerationToolInputImageMask> {
5660 public ImageGenerationToolInputImageMask(BinaryData imageBytes);
5661 public ImageGenerationToolInputImageMask(string fileId);
5662 public ImageGenerationToolInputImageMask(Uri imageUri);
5663 public string FileId { get; set; }
5664 public string ImageUri { get; set; }
5665 [Serialization.JsonIgnore]
5666 [EditorBrowsable(EditorBrowsableState.Never)]
5667 [Experimental("SCME0001")]
5668 public ref JsonPatch Patch { get; }
5669 }
5670 [Experimental("OPENAI001")]
5671 public readonly partial struct ImageGenerationToolModerationLevel : IEquatable<ImageGenerationToolModerationLevel> {
5672 public ImageGenerationToolModerationLevel(string value);
5673 public static ImageGenerationToolModerationLevel Auto { get; }
5674 public static ImageGenerationToolModerationLevel Low { get; }
5675 public readonly bool Equals(ImageGenerationToolModerationLevel other);
5676 [EditorBrowsable(EditorBrowsableState.Never)]
5677 public override readonly bool Equals(object obj);
5678 [EditorBrowsable(EditorBrowsableState.Never)]
5679 public override readonly int GetHashCode();
5680 public static bool operator ==(ImageGenerationToolModerationLevel left, ImageGenerationToolModerationLevel right);
5681 public static implicit operator ImageGenerationToolModerationLevel(string value);
5682 public static implicit operator ImageGenerationToolModerationLevel?(string value);
5683 public static bool operator !=(ImageGenerationToolModerationLevel left, ImageGenerationToolModerationLevel right);
5684 public override readonly string ToString();
5685 }
5686 [Experimental("OPENAI001")]
5687 public readonly partial struct ImageGenerationToolOutputFileFormat : IEquatable<ImageGenerationToolOutputFileFormat> {
5688 public ImageGenerationToolOutputFileFormat(string value);
5689 public static ImageGenerationToolOutputFileFormat Jpeg { get; }
5690 public static ImageGenerationToolOutputFileFormat Png { get; }
5691 public static ImageGenerationToolOutputFileFormat Webp { get; }
5692 public readonly bool Equals(ImageGenerationToolOutputFileFormat other);
5693 [EditorBrowsable(EditorBrowsableState.Never)]
5694 public override readonly bool Equals(object obj);
5695 [EditorBrowsable(EditorBrowsableState.Never)]
5696 public override readonly int GetHashCode();
5697 public static bool operator ==(ImageGenerationToolOutputFileFormat left, ImageGenerationToolOutputFileFormat right);
5698 public static implicit operator ImageGenerationToolOutputFileFormat(string value);
5699 public static implicit operator ImageGenerationToolOutputFileFormat?(string value);
5700 public static bool operator !=(ImageGenerationToolOutputFileFormat left, ImageGenerationToolOutputFileFormat right);
5701 public override readonly string ToString();
5702 }
5703 [Experimental("OPENAI001")]
5704 public readonly partial struct ImageGenerationToolQuality : IEquatable<ImageGenerationToolQuality> {
5705 public ImageGenerationToolQuality(string value);
5706 public static ImageGenerationToolQuality Auto { get; }
5707 public static ImageGenerationToolQuality High { get; }
5708 public static ImageGenerationToolQuality Low { get; }
5709 public static ImageGenerationToolQuality Medium { get; }
5710 public readonly bool Equals(ImageGenerationToolQuality other);
5711 [EditorBrowsable(EditorBrowsableState.Never)]
5712 public override readonly bool Equals(object obj);
5713 [EditorBrowsable(EditorBrowsableState.Never)]
5714 public override readonly int GetHashCode();
5715 public static bool operator ==(ImageGenerationToolQuality left, ImageGenerationToolQuality right);
5716 public static implicit operator ImageGenerationToolQuality(string value);
5717 public static implicit operator ImageGenerationToolQuality?(string value);
5718 public static bool operator !=(ImageGenerationToolQuality left, ImageGenerationToolQuality right);
5719 public override readonly string ToString();
5720 }
5721 [Experimental("OPENAI001")]
5722 public readonly partial struct ImageGenerationToolSize : IEquatable<ImageGenerationToolSize> {
5723 public static readonly ImageGenerationToolSize W1024xH1024;
5724 public static readonly ImageGenerationToolSize W1024xH1536;
5725 public static readonly ImageGenerationToolSize W1536xH1024;
5726 public ImageGenerationToolSize(int width, int height);
5727 public static ImageGenerationToolSize Auto { get; }
5728 public readonly bool Equals(ImageGenerationToolSize other);
5729 [EditorBrowsable(EditorBrowsableState.Never)]
5730 public override readonly bool Equals(object obj);
5731 [EditorBrowsable(EditorBrowsableState.Never)]
5732 public override readonly int GetHashCode();
5733 public static bool operator ==(ImageGenerationToolSize left, ImageGenerationToolSize right);
5734 public static bool operator !=(ImageGenerationToolSize left, ImageGenerationToolSize right);
5735 public override readonly string ToString();
5736 }
5737 [Experimental("OPENAI001")]
5738 public readonly partial struct ImageGenToolCallBackground : IEquatable<ImageGenToolCallBackground> {
5739 public ImageGenToolCallBackground(string value);
5740 public static ImageGenToolCallBackground Auto { get; }
5741 public static ImageGenToolCallBackground Opaque { get; }
5742 public static ImageGenToolCallBackground Transparent { get; }
5743 public readonly bool Equals(ImageGenToolCallBackground other);
5744 [EditorBrowsable(EditorBrowsableState.Never)]
5745 public override readonly bool Equals(object obj);
5746 [EditorBrowsable(EditorBrowsableState.Never)]
5747 public override readonly int GetHashCode();
5748 public static bool operator ==(ImageGenToolCallBackground left, ImageGenToolCallBackground right);
5749 public static implicit operator ImageGenToolCallBackground(string value);
5750 public static implicit operator ImageGenToolCallBackground?(string value);
5751 public static bool operator !=(ImageGenToolCallBackground left, ImageGenToolCallBackground right);
5752 public override readonly string ToString();
5753 }
5754 [Experimental("OPENAI001")]
5755 public readonly partial struct ImageGenToolCallOutputFormat : IEquatable<ImageGenToolCallOutputFormat> {
5756 public ImageGenToolCallOutputFormat(string value);
5757 public static ImageGenToolCallOutputFormat Jpeg { get; }
5758 public static ImageGenToolCallOutputFormat Png { get; }
5759 public static ImageGenToolCallOutputFormat Webp { get; }
5760 public readonly bool Equals(ImageGenToolCallOutputFormat other);
5761 [EditorBrowsable(EditorBrowsableState.Never)]
5762 public override readonly bool Equals(object obj);
5763 [EditorBrowsable(EditorBrowsableState.Never)]
5764 public override readonly int GetHashCode();
5765 public static bool operator ==(ImageGenToolCallOutputFormat left, ImageGenToolCallOutputFormat right);
5766 public static implicit operator ImageGenToolCallOutputFormat(string value);
5767 public static implicit operator ImageGenToolCallOutputFormat?(string value);
5768 public static bool operator !=(ImageGenToolCallOutputFormat left, ImageGenToolCallOutputFormat right);
5769 public override readonly string ToString();
5770 }
5771 [Experimental("OPENAI001")]
5772 public readonly partial struct ImageGenToolCallQuality : IEquatable<ImageGenToolCallQuality> {
5773 public ImageGenToolCallQuality(string value);
5774 public static ImageGenToolCallQuality Auto { get; }
5775 public static ImageGenToolCallQuality Hd { get; }
5776 public static ImageGenToolCallQuality High { get; }
5777 public static ImageGenToolCallQuality Low { get; }
5778 public static ImageGenToolCallQuality Medium { get; }
5779 public static ImageGenToolCallQuality Standard { get; }
5780 public readonly bool Equals(ImageGenToolCallQuality other);
5781 [EditorBrowsable(EditorBrowsableState.Never)]
5782 public override readonly bool Equals(object obj);
5783 [EditorBrowsable(EditorBrowsableState.Never)]
5784 public override readonly int GetHashCode();
5785 public static bool operator ==(ImageGenToolCallQuality left, ImageGenToolCallQuality right);
5786 public static implicit operator ImageGenToolCallQuality(string value);
5787 public static implicit operator ImageGenToolCallQuality?(string value);
5788 public static bool operator !=(ImageGenToolCallQuality left, ImageGenToolCallQuality right);
5789 public override readonly string ToString();
5790 }
5791 [Experimental("OPENAI001")]
5792 public readonly partial struct ImageGenToolCallSize : IEquatable<ImageGenToolCallSize> {
5793 public ImageGenToolCallSize(string value);
5794 public static ImageGenToolCallSize Auto { get; }
5795 public static ImageGenToolCallSize W1024x1024 { get; }
5796 public static ImageGenToolCallSize W1024x1536 { get; }
5797 public static ImageGenToolCallSize W1024x1792 { get; }
5798 public static ImageGenToolCallSize W1536x1024 { get; }
5799 public static ImageGenToolCallSize W1792x1024 { get; }
5800 public static ImageGenToolCallSize W256x256 { get; }
5801 public static ImageGenToolCallSize W512x512 { get; }
5802 public readonly bool Equals(ImageGenToolCallSize other);
5803 [EditorBrowsable(EditorBrowsableState.Never)]
5804 public override readonly bool Equals(object obj);
5805 [EditorBrowsable(EditorBrowsableState.Never)]
5806 public override readonly int GetHashCode();
5807 public static bool operator ==(ImageGenToolCallSize left, ImageGenToolCallSize right);
5808 public static implicit operator ImageGenToolCallSize(string value);
5809 public static implicit operator ImageGenToolCallSize?(string value);
5810 public static bool operator !=(ImageGenToolCallSize left, ImageGenToolCallSize right);
5811 public override readonly string ToString();
5812 }
5813 [Experimental("OPENAI001")]
5814 public readonly partial struct IncludedResponseProperty : IEquatable<IncludedResponseProperty> {
5815 public IncludedResponseProperty(string value);
5816 public static IncludedResponseProperty CodeInterpreterCallOutputs { get; }
5817 public static IncludedResponseProperty ComputerCallOutputImageUri { get; }
5818 public static IncludedResponseProperty FileSearchCallResults { get; }
5819 public static IncludedResponseProperty MessageInputImageUri { get; }
5820 public static IncludedResponseProperty MessageOutputTextLogProbabilities { get; }
5821 public static IncludedResponseProperty ReasoningEncryptedContent { get; }
5822 public static IncludedResponseProperty WebSearchCallActionSources { get; }
5823 public static IncludedResponseProperty WebSearchCallResults { get; }
5824 public readonly bool Equals(IncludedResponseProperty other);
5825 [EditorBrowsable(EditorBrowsableState.Never)]
5826 public override readonly bool Equals(object obj);
5827 [EditorBrowsable(EditorBrowsableState.Never)]
5828 public override readonly int GetHashCode();
5829 public static bool operator ==(IncludedResponseProperty left, IncludedResponseProperty right);
5830 public static implicit operator IncludedResponseProperty(string value);
5831 public static implicit operator IncludedResponseProperty?(string value);
5832 public static bool operator !=(IncludedResponseProperty left, IncludedResponseProperty right);
5833 public override readonly string ToString();
5834 }
5835 [Experimental("OPENAI001")]
5836 public class McpTool : ResponseTool, IJsonModel<McpTool>, IPersistableModel<McpTool> {
5837 public McpTool(string serverLabel, McpToolConnectorId connectorId);
5838 public McpTool(string serverLabel, Uri serverUri);
5839 public McpToolFilter AllowedTools { get; set; }
5840 public string AuthorizationToken { get; set; }
5841 public McpToolConnectorId? ConnectorId { get; set; }
5842 public IDictionary<string, string> Headers { get; set; }
5843 public string ServerDescription { get; set; }
5844 public string ServerLabel { get; set; }
5845 public Uri ServerUri { get; set; }
5846 public McpToolCallApprovalPolicy ToolCallApprovalPolicy { get; set; }
5847 }
5848 [Experimental("OPENAI001")]
5849 public class McpToolCallApprovalPolicy : IJsonModel<McpToolCallApprovalPolicy>, IPersistableModel<McpToolCallApprovalPolicy> {
5850 public McpToolCallApprovalPolicy(CustomMcpToolCallApprovalPolicy customPolicy);
5851 public McpToolCallApprovalPolicy(GlobalMcpToolCallApprovalPolicy globalPolicy);
5852 public CustomMcpToolCallApprovalPolicy CustomPolicy { get; }
5853 public GlobalMcpToolCallApprovalPolicy? GlobalPolicy { get; }
5854 [Serialization.JsonIgnore]
5855 [EditorBrowsable(EditorBrowsableState.Never)]
5856 [Experimental("SCME0001")]
5857 public ref JsonPatch Patch { get; }
5858 public static implicit operator McpToolCallApprovalPolicy(CustomMcpToolCallApprovalPolicy customPolicy);
5859 public static implicit operator McpToolCallApprovalPolicy(GlobalMcpToolCallApprovalPolicy globalPolicy);
5860 }
5861 [Experimental("OPENAI001")]
5862 public class McpToolCallApprovalRequestItem : ResponseItem, IJsonModel<McpToolCallApprovalRequestItem>, IPersistableModel<McpToolCallApprovalRequestItem> {
5863 public McpToolCallApprovalRequestItem(string id, string serverLabel, string toolName, BinaryData toolArguments);
5864 public string ServerLabel { get; set; }
5865 public BinaryData ToolArguments { get; set; }
5866 public string ToolName { get; set; }
5867 }
5868 [Experimental("OPENAI001")]
5869 public class McpToolCallApprovalResponseItem : ResponseItem, IJsonModel<McpToolCallApprovalResponseItem>, IPersistableModel<McpToolCallApprovalResponseItem> {
5870 public McpToolCallApprovalResponseItem(string approvalRequestId, bool approved);
5871 public string ApprovalRequestId { get; set; }
5872 public bool Approved { get; set; }
5873 public string Reason { get; set; }
5874 }
5875 [Experimental("OPENAI001")]
5876 public class McpToolCallItem : ResponseItem, IJsonModel<McpToolCallItem>, IPersistableModel<McpToolCallItem> {
5877 public McpToolCallItem(string serverLabel, string toolName, BinaryData toolArguments);
5878 public BinaryData Error { get; set; }
5879 public string ServerLabel { get; set; }
5880 public BinaryData ToolArguments { get; set; }
5881 public string ToolName { get; set; }
5882 public string ToolOutput { get; set; }
5883 }
5884 [Experimental("OPENAI001")]
5885 public readonly partial struct McpToolConnectorId : IEquatable<McpToolConnectorId> {
5886 public McpToolConnectorId(string value);
5887 public static McpToolConnectorId Dropbox { get; }
5888 public static McpToolConnectorId Gmail { get; }
5889 public static McpToolConnectorId GoogleCalendar { get; }
5890 public static McpToolConnectorId GoogleDrive { get; }
5891 public static McpToolConnectorId MicrosoftTeams { get; }
5892 public static McpToolConnectorId OutlookCalendar { get; }
5893 public static McpToolConnectorId OutlookEmail { get; }
5894 public static McpToolConnectorId SharePoint { get; }
5895 public readonly bool Equals(McpToolConnectorId other);
5896 [EditorBrowsable(EditorBrowsableState.Never)]
5897 public override readonly bool Equals(object obj);
5898 [EditorBrowsable(EditorBrowsableState.Never)]
5899 public override readonly int GetHashCode();
5900 public static bool operator ==(McpToolConnectorId left, McpToolConnectorId right);
5901 public static implicit operator McpToolConnectorId(string value);
5902 public static implicit operator McpToolConnectorId?(string value);
5903 public static bool operator !=(McpToolConnectorId left, McpToolConnectorId right);
5904 public override readonly string ToString();
5905 }
5906 [Experimental("OPENAI001")]
5907 public class McpToolDefinition : IJsonModel<McpToolDefinition>, IPersistableModel<McpToolDefinition> {
5908 public McpToolDefinition(string name, BinaryData inputSchema);
5909 public BinaryData Annotations { get; set; }
5910 public string Description { get; set; }
5911 public BinaryData InputSchema { get; set; }
5912 public string Name { get; set; }
5913 [Serialization.JsonIgnore]
5914 [EditorBrowsable(EditorBrowsableState.Never)]
5915 [Experimental("SCME0001")]
5916 public ref JsonPatch Patch { get; }
5917 }
5918 [Experimental("OPENAI001")]
5919 public class McpToolDefinitionListItem : ResponseItem, IJsonModel<McpToolDefinitionListItem>, IPersistableModel<McpToolDefinitionListItem> {
5920 public McpToolDefinitionListItem(string serverLabel, IEnumerable<McpToolDefinition> toolDefinitions);
5921 public BinaryData Error { get; set; }
5922 public string ServerLabel { get; set; }
5923 public IList<McpToolDefinition> ToolDefinitions { get; }
5924 }
5925 [Experimental("OPENAI001")]
5926 public class McpToolFilter : IJsonModel<McpToolFilter>, IPersistableModel<McpToolFilter> {
5927 public bool? IsReadOnly { get; set; }
5928 [Serialization.JsonIgnore]
5929 [EditorBrowsable(EditorBrowsableState.Never)]
5930 [Experimental("SCME0001")]
5931 public ref JsonPatch Patch { get; }
5932 public IList<string> ToolNames { get; }
5933 }
5934 [Experimental("OPENAI001")]
5935 public class MessageResponseItem : ResponseItem, IJsonModel<MessageResponseItem>, IPersistableModel<MessageResponseItem> {
5936 public IList<ResponseContentPart> Content { get; }
5937 public MessageRole Role { get; }
5938 public MessageStatus? Status { get; set; }
5939 }
5940 [Experimental("OPENAI001")]
5941 public enum MessageRole {
5942 Unknown = 0,
5943 Assistant = 1,
5944 Developer = 2,
5945 System = 3,
5946 User = 4
5947 }
5948 [Experimental("OPENAI001")]
5949 public enum MessageStatus {
5950 InProgress = 0,
5951 Completed = 1,
5952 Incomplete = 2
5953 }
5954 [Experimental("OPENAI001")]
5955 public class ReasoningResponseItem : ResponseItem, IJsonModel<ReasoningResponseItem>, IPersistableModel<ReasoningResponseItem> {
5956 public ReasoningResponseItem(IEnumerable<ReasoningSummaryPart> summaryParts);
5957 public ReasoningResponseItem(string summaryText);
5958 public string EncryptedContent { get; set; }
5959 public ReasoningStatus? Status { get; set; }
5960 public IList<ReasoningSummaryPart> SummaryParts { get; }
5961 public string GetSummaryText();
5962 }
5963 [Experimental("OPENAI001")]
5964 public enum ReasoningStatus {
5965 InProgress = 0,
5966 Completed = 1,
5967 Incomplete = 2
5968 }
5969 [Experimental("OPENAI001")]
5970 public class ReasoningSummaryPart : IJsonModel<ReasoningSummaryPart>, IPersistableModel<ReasoningSummaryPart> {
5971 [Serialization.JsonIgnore]
5972 [EditorBrowsable(EditorBrowsableState.Never)]
5973 [Experimental("SCME0001")]
5974 public ref JsonPatch Patch { get; }
5975 public static ReasoningSummaryTextPart CreateTextPart(string text);
5976 }
5977 [Experimental("OPENAI001")]
5978 public class ReasoningSummaryTextPart : ReasoningSummaryPart, IJsonModel<ReasoningSummaryTextPart>, IPersistableModel<ReasoningSummaryTextPart> {
5979 public ReasoningSummaryTextPart(string text);
5980 public string Text { get; set; }
5981 }
5982 [Experimental("OPENAI001")]
5983 public class ReferenceResponseItem : ResponseItem, IJsonModel<ReferenceResponseItem>, IPersistableModel<ReferenceResponseItem> {
5984 public ReferenceResponseItem(string id);
5985 }
5986 [Experimental("OPENAI001")]
5987 public class ResponseContentPart : IJsonModel<ResponseContentPart>, IPersistableModel<ResponseContentPart> {
5988 public BinaryData InputFileBytes { get; }
5989 public string InputFileBytesMediaType { get; }
5990 public string InputFileId { get; }
5991 public string InputFilename { get; }
5992 public Uri InputFileUri { get; }
5993 public ResponseImageDetailLevel? InputImageDetailLevel { get; }
5994 public string InputImageFileId { get; }
5995 public string InputImageUri { get; }
5996 public ResponseContentPartKind Kind { get; }
5997 public IReadOnlyList<ResponseMessageAnnotation> OutputTextAnnotations { get; }
5998 [Serialization.JsonIgnore]
5999 [EditorBrowsable(EditorBrowsableState.Never)]
6000 [Experimental("SCME0001")]
6001 public ref JsonPatch Patch { get; }
6002 public string Refusal { get; }
6003 public string Text { get; }
6004 public static ResponseContentPart CreateInputFilePart(BinaryData fileBytes, string fileBytesMediaType, string filename);
6005 public static ResponseContentPart CreateInputFilePart(string fileId);
6006 public static ResponseContentPart CreateInputFilePart(Uri fileUri);
6007 public static ResponseContentPart CreateInputImagePart(BinaryData imageBytes, ResponseImageDetailLevel? imageDetailLevel = null);
6008 public static ResponseContentPart CreateInputImagePart(string imageFileId, ResponseImageDetailLevel? imageDetailLevel = null);
6009 public static ResponseContentPart CreateInputImagePart(Uri imageUri, ResponseImageDetailLevel? imageDetailLevel = null);
6010 public static ResponseContentPart CreateInputTextPart(string text);
6011 public static ResponseContentPart CreateOutputTextPart(string text, IEnumerable<ResponseMessageAnnotation> annotations);
6012 public static ResponseContentPart CreateRefusalPart(string refusal);
6013 }
6014 [Experimental("OPENAI001")]
6015 public enum ResponseContentPartKind {
6016 Unknown = 0,
6017 InputText = 1,
6018 InputImage = 2,
6019 InputFile = 3,
6020 OutputText = 4,
6021 Refusal = 5
6022 }
6023 [Experimental("OPENAI001")]
6024 public class ResponseConversationOptions : IJsonModel<ResponseConversationOptions>, IPersistableModel<ResponseConversationOptions> {
6025 public ResponseConversationOptions(string conversationId);
6026 public string ConversationId { get; set; }
6027 [Serialization.JsonIgnore]
6028 [EditorBrowsable(EditorBrowsableState.Never)]
6029 [Experimental("SCME0001")]
6030 public ref JsonPatch Patch { get; }
6031 }
6032 [Experimental("OPENAI001")]
6033 public class ResponseDeletionResult : IJsonModel<ResponseDeletionResult>, IPersistableModel<ResponseDeletionResult> {
6034 public bool Deleted { get; set; }
6035 [EditorBrowsable(EditorBrowsableState.Never)]
6036 public string Object { get; set; }
6037 [Serialization.JsonIgnore]
6038 [EditorBrowsable(EditorBrowsableState.Never)]
6039 [Experimental("SCME0001")]
6040 public ref JsonPatch Patch { get; }
6041 public string ResponseId { get; set; }
6042 public static explicit operator ResponseDeletionResult(ClientResult result);
6043 }
6044 [Experimental("OPENAI001")]
6045 public class ResponseError : IJsonModel<ResponseError>, IPersistableModel<ResponseError> {
6046 public ResponseErrorCode Code { get; }
6047 public string Message { get; }
6048 [Serialization.JsonIgnore]
6049 [EditorBrowsable(EditorBrowsableState.Never)]
6050 [Experimental("SCME0001")]
6051 public ref JsonPatch Patch { get; }
6052 }
6053 [Experimental("OPENAI001")]
6054 public readonly partial struct ResponseErrorCode : IEquatable<ResponseErrorCode> {
6055 public ResponseErrorCode(string value);
6056 public static ResponseErrorCode EmptyImageFile { get; }
6057 public static ResponseErrorCode FailedToDownloadImage { get; }
6058 public static ResponseErrorCode ImageContentPolicyViolation { get; }
6059 public static ResponseErrorCode ImageFileNotFound { get; }
6060 public static ResponseErrorCode ImageFileTooLarge { get; }
6061 public static ResponseErrorCode ImageParseError { get; }
6062 public static ResponseErrorCode ImageTooLarge { get; }
6063 public static ResponseErrorCode ImageTooSmall { get; }
6064 public static ResponseErrorCode InvalidBase64Image { get; }
6065 public static ResponseErrorCode InvalidImage { get; }
6066 public static ResponseErrorCode InvalidImageFormat { get; }
6067 public static ResponseErrorCode InvalidImageMode { get; }
6068 public static ResponseErrorCode InvalidImageUrl { get; }
6069 public static ResponseErrorCode InvalidPrompt { get; }
6070 public static ResponseErrorCode RateLimitExceeded { get; }
6071 public static ResponseErrorCode ServerError { get; }
6072 public static ResponseErrorCode UnsupportedImageMediaType { get; }
6073 public static ResponseErrorCode VectorStoreTimeout { get; }
6074 public readonly bool Equals(ResponseErrorCode other);
6075 [EditorBrowsable(EditorBrowsableState.Never)]
6076 public override readonly bool Equals(object obj);
6077 [EditorBrowsable(EditorBrowsableState.Never)]
6078 public override readonly int GetHashCode();
6079 public static bool operator ==(ResponseErrorCode left, ResponseErrorCode right);
6080 public static implicit operator ResponseErrorCode(string value);
6081 public static implicit operator ResponseErrorCode?(string value);
6082 public static bool operator !=(ResponseErrorCode left, ResponseErrorCode right);
6083 public override readonly string ToString();
6084 }
6085 [Experimental("OPENAI001")]
6086 public readonly partial struct ResponseImageDetailLevel : IEquatable<ResponseImageDetailLevel> {
6087 public ResponseImageDetailLevel(string value);
6088 public static ResponseImageDetailLevel Auto { get; }
6089 public static ResponseImageDetailLevel High { get; }
6090 public static ResponseImageDetailLevel Low { get; }
6091 public readonly bool Equals(ResponseImageDetailLevel other);
6092 [EditorBrowsable(EditorBrowsableState.Never)]
6093 public override readonly bool Equals(object obj);
6094 [EditorBrowsable(EditorBrowsableState.Never)]
6095 public override readonly int GetHashCode();
6096 public static bool operator ==(ResponseImageDetailLevel left, ResponseImageDetailLevel right);
6097 public static implicit operator ResponseImageDetailLevel(string value);
6098 public static implicit operator ResponseImageDetailLevel?(string value);
6099 public static bool operator !=(ResponseImageDetailLevel left, ResponseImageDetailLevel right);
6100 public override readonly string ToString();
6101 }
6102 [Experimental("OPENAI001")]
6103 public class ResponseIncompleteStatusDetails : IJsonModel<ResponseIncompleteStatusDetails>, IPersistableModel<ResponseIncompleteStatusDetails> {
6104 [Serialization.JsonIgnore]
6105 [EditorBrowsable(EditorBrowsableState.Never)]
6106 [Experimental("SCME0001")]
6107 public ref JsonPatch Patch { get; }
6108 public ResponseIncompleteStatusReason? Reason { get; }
6109 }
6110 [Experimental("OPENAI001")]
6111 public readonly partial struct ResponseIncompleteStatusReason : IEquatable<ResponseIncompleteStatusReason> {
6112 public ResponseIncompleteStatusReason(string value);
6113 public static ResponseIncompleteStatusReason ContentFilter { get; }
6114 public static ResponseIncompleteStatusReason MaxOutputTokens { get; }
6115 public readonly bool Equals(ResponseIncompleteStatusReason other);
6116 [EditorBrowsable(EditorBrowsableState.Never)]
6117 public override readonly bool Equals(object obj);
6118 [EditorBrowsable(EditorBrowsableState.Never)]
6119 public override readonly int GetHashCode();
6120 public static bool operator ==(ResponseIncompleteStatusReason left, ResponseIncompleteStatusReason right);
6121 public static implicit operator ResponseIncompleteStatusReason(string value);
6122 public static implicit operator ResponseIncompleteStatusReason?(string value);
6123 public static bool operator !=(ResponseIncompleteStatusReason left, ResponseIncompleteStatusReason right);
6124 public override readonly string ToString();
6125 }
6126 [Experimental("OPENAI001")]
6127 public class ResponseInputTokenUsageDetails : IJsonModel<ResponseInputTokenUsageDetails>, IPersistableModel<ResponseInputTokenUsageDetails> {
6128 public int CachedTokenCount { get; set; }
6129 [Serialization.JsonIgnore]
6130 [EditorBrowsable(EditorBrowsableState.Never)]
6131 [Experimental("SCME0001")]
6132 public ref JsonPatch Patch { get; }
6133 }
6134 [Experimental("OPENAI001")]
6135 public class ResponseItem : IJsonModel<ResponseItem>, IPersistableModel<ResponseItem> {
6136 public string Id { get; set; }
6137 [Serialization.JsonIgnore]
6138 [EditorBrowsable(EditorBrowsableState.Never)]
6139 [Experimental("SCME0001")]
6140 public ref JsonPatch Patch { get; }
6141 public static ApplyPatchCallItem CreateApplyPatchCallItem(string callId, ApplyPatchOperation operation);
6142 public static ApplyPatchCallOutputItem CreateApplyPatchCallOutputItem(string callId, ApplyPatchCallOutputStatus status);
6143 public static MessageResponseItem CreateAssistantMessageItem(IEnumerable<ResponseContentPart> contentParts);
6144 public static MessageResponseItem CreateAssistantMessageItem(string outputTextContent, IEnumerable<ResponseMessageAnnotation> annotations = null);
6145 [Experimental("OPENAICUA001")]
6146 public static ComputerCallResponseItem CreateComputerCallItem(string callId, ComputerCallAction action, IEnumerable<ComputerCallSafetyCheck> pendingSafetyChecks);
6147 [Experimental("OPENAICUA001")]
6148 public static ComputerCallOutputResponseItem CreateComputerCallOutputItem(string callId, ComputerCallOutput output);
6149 public static MessageResponseItem CreateDeveloperMessageItem(IEnumerable<ResponseContentPart> contentParts);
6150 public static MessageResponseItem CreateDeveloperMessageItem(string inputTextContent);
6151 public static FileSearchCallResponseItem CreateFileSearchCallItem(IEnumerable<string> queries);
6152 public static FunctionCallResponseItem CreateFunctionCallItem(string callId, string functionName, BinaryData functionArguments);
6153 public static FunctionCallOutputResponseItem CreateFunctionCallOutputItem(string callId, string functionOutput);
6154 public static McpToolCallApprovalRequestItem CreateMcpApprovalRequestItem(string id, string serverLabel, string name, BinaryData arguments);
6155 public static McpToolCallApprovalResponseItem CreateMcpApprovalResponseItem(string approvalRequestId, bool approved);
6156 public static McpToolCallItem CreateMcpToolCallItem(string serverLabel, string name, BinaryData arguments);
6157 public static McpToolDefinitionListItem CreateMcpToolDefinitionListItem(string serverLabel, IEnumerable<McpToolDefinition> toolDefinitions);
6158 public static ReasoningResponseItem CreateReasoningItem(IEnumerable<ReasoningSummaryPart> summaryParts);
6159 public static ReasoningResponseItem CreateReasoningItem(string summaryText);
6160 public static ReferenceResponseItem CreateReferenceItem(string id);
6161 public static MessageResponseItem CreateSystemMessageItem(IEnumerable<ResponseContentPart> contentParts);
6162 public static MessageResponseItem CreateSystemMessageItem(string inputTextContent);
6163 public static MessageResponseItem CreateUserMessageItem(IEnumerable<ResponseContentPart> contentParts);
6164 public static MessageResponseItem CreateUserMessageItem(string inputTextContent);
6165 public static WebSearchCallResponseItem CreateWebSearchCallItem();
6166 public static explicit operator ResponseItem(ClientResult result);
6167 }
6168 [Experimental("OPENAI001")]
6169 public class ResponseItemCollectionOptions : IJsonModel<ResponseItemCollectionOptions>, IPersistableModel<ResponseItemCollectionOptions> {
6170 public ResponseItemCollectionOptions(string responseId);
6171 public string AfterId { get; set; }
6172 public string BeforeId { get; set; }
6173 public ResponseItemCollectionOrder? Order { get; set; }
6174 public int? PageSizeLimit { get; set; }
6175 public string ResponseId { get; }
6176 }
6177 [Experimental("OPENAI001")]
6178 public readonly partial struct ResponseItemCollectionOrder : IEquatable<ResponseItemCollectionOrder> {
6179 public ResponseItemCollectionOrder(string value);
6180 public static ResponseItemCollectionOrder Ascending { get; }
6181 public static ResponseItemCollectionOrder Descending { get; }
6182 public readonly bool Equals(ResponseItemCollectionOrder other);
6183 [EditorBrowsable(EditorBrowsableState.Never)]
6184 public override readonly bool Equals(object obj);
6185 [EditorBrowsable(EditorBrowsableState.Never)]
6186 public override readonly int GetHashCode();
6187 public static bool operator ==(ResponseItemCollectionOrder left, ResponseItemCollectionOrder right);
6188 public static implicit operator ResponseItemCollectionOrder(string value);
6189 public static implicit operator ResponseItemCollectionOrder?(string value);
6190 public static bool operator !=(ResponseItemCollectionOrder left, ResponseItemCollectionOrder right);
6191 public override readonly string ToString();
6192 }
6193 [Experimental("OPENAI001")]
6194 public class ResponseItemCollectionPage : IJsonModel<ResponseItemCollectionPage>, IPersistableModel<ResponseItemCollectionPage> {
6195 public IList<ResponseItem> Data { get; }
6196 public string FirstId { get; set; }
6197 public bool HasMore { get; set; }
6198 public string LastId { get; set; }
6199 [EditorBrowsable(EditorBrowsableState.Never)]
6200 public string Object { get; set; }
6201 [Serialization.JsonIgnore]
6202 [EditorBrowsable(EditorBrowsableState.Never)]
6203 [Experimental("SCME0001")]
6204 public ref JsonPatch Patch { get; }
6205 public static explicit operator ResponseItemCollectionPage(ClientResult result);
6206 }
6207 [Experimental("OPENAI001")]
6208 public class ResponseMessageAnnotation : IJsonModel<ResponseMessageAnnotation>, IPersistableModel<ResponseMessageAnnotation> {
6209 public ResponseMessageAnnotationKind Kind { get; }
6210 [Serialization.JsonIgnore]
6211 [EditorBrowsable(EditorBrowsableState.Never)]
6212 [Experimental("SCME0001")]
6213 public ref JsonPatch Patch { get; }
6214 }
6215 [Experimental("OPENAI001")]
6216 public enum ResponseMessageAnnotationKind {
6217 FileCitation = 0,
6218 UriCitation = 1,
6219 FilePath = 2,
6220 ContainerFileCitation = 3
6221 }
6222 [Experimental("OPENAI001")]
6223 public class ResponseOutputTokenUsageDetails : IJsonModel<ResponseOutputTokenUsageDetails>, IPersistableModel<ResponseOutputTokenUsageDetails> {
6224 [Serialization.JsonIgnore]
6225 [EditorBrowsable(EditorBrowsableState.Never)]
6226 [Experimental("SCME0001")]
6227 public ref JsonPatch Patch { get; }
6228 public int ReasoningTokenCount { get; set; }
6229 }
6230 [Experimental("OPENAI001")]
6231 public readonly partial struct ResponseReasoningEffortLevel : IEquatable<ResponseReasoningEffortLevel> {
6232 public ResponseReasoningEffortLevel(string value);
6233 public static ResponseReasoningEffortLevel High { get; }
6234 public static ResponseReasoningEffortLevel Low { get; }
6235 public static ResponseReasoningEffortLevel Medium { get; }
6236 public static ResponseReasoningEffortLevel Minimal { get; }
6237 public static ResponseReasoningEffortLevel None { get; }
6238 public readonly bool Equals(ResponseReasoningEffortLevel other);
6239 [EditorBrowsable(EditorBrowsableState.Never)]
6240 public override readonly bool Equals(object obj);
6241 [EditorBrowsable(EditorBrowsableState.Never)]
6242 public override readonly int GetHashCode();
6243 public static bool operator ==(ResponseReasoningEffortLevel left, ResponseReasoningEffortLevel right);
6244 public static implicit operator ResponseReasoningEffortLevel(string value);
6245 public static implicit operator ResponseReasoningEffortLevel?(string value);
6246 public static bool operator !=(ResponseReasoningEffortLevel left, ResponseReasoningEffortLevel right);
6247 public override readonly string ToString();
6248 }
6249 [Experimental("OPENAI001")]
6250 public class ResponseReasoningOptions : IJsonModel<ResponseReasoningOptions>, IPersistableModel<ResponseReasoningOptions> {
6251 [Serialization.JsonIgnore]
6252 [EditorBrowsable(EditorBrowsableState.Never)]
6253 [Experimental("SCME0001")]
6254 public ref JsonPatch Patch { get; }
6255 public ResponseReasoningEffortLevel? ReasoningEffortLevel { get; set; }
6256 public ResponseReasoningSummaryVerbosity? ReasoningSummaryVerbosity { get; set; }
6257 }
6258 [Experimental("OPENAI001")]
6259 public readonly partial struct ResponseReasoningSummaryVerbosity : IEquatable<ResponseReasoningSummaryVerbosity> {
6260 public ResponseReasoningSummaryVerbosity(string value);
6261 public static ResponseReasoningSummaryVerbosity Auto { get; }
6262 public static ResponseReasoningSummaryVerbosity Concise { get; }
6263 public static ResponseReasoningSummaryVerbosity Detailed { get; }
6264 public readonly bool Equals(ResponseReasoningSummaryVerbosity other);
6265 [EditorBrowsable(EditorBrowsableState.Never)]
6266 public override readonly bool Equals(object obj);
6267 [EditorBrowsable(EditorBrowsableState.Never)]
6268 public override readonly int GetHashCode();
6269 public static bool operator ==(ResponseReasoningSummaryVerbosity left, ResponseReasoningSummaryVerbosity right);
6270 public static implicit operator ResponseReasoningSummaryVerbosity(string value);
6271 public static implicit operator ResponseReasoningSummaryVerbosity?(string value);
6272 public static bool operator !=(ResponseReasoningSummaryVerbosity left, ResponseReasoningSummaryVerbosity right);
6273 public override readonly string ToString();
6274 }
6275 [Experimental("OPENAI001")]
6276 public class ResponseResult : IJsonModel<ResponseResult>, IPersistableModel<ResponseResult> {
6277 public bool? BackgroundModeEnabled { get; set; }
6278 public ResponseConversationOptions ConversationOptions { get; set; }
6279 public DateTimeOffset CreatedAt { get; set; }
6280 public string EndUserId { get; set; }
6281 public ResponseError Error { get; set; }
6282 public string Id { get; set; }
6283 public ResponseIncompleteStatusDetails IncompleteStatusDetails { get; set; }
6284 public IList<ResponseItem> Instructions { get; }
6285 public int? MaxOutputTokenCount { get; set; }
6286 public int? MaxToolCallCount { get; set; }
6287 public IDictionary<string, string> Metadata { get; }
6288 public string Model { get; set; }
6289 [EditorBrowsable(EditorBrowsableState.Never)]
6290 public string Object { get; set; }
6291 public IList<ResponseItem> OutputItems { get; }
6292 public bool ParallelToolCallsEnabled { get; set; }
6293 [Serialization.JsonIgnore]
6294 [EditorBrowsable(EditorBrowsableState.Never)]
6295 [Experimental("SCME0001")]
6296 public ref JsonPatch Patch { get; }
6297 public string PreviousResponseId { get; set; }
6298 public ResponseReasoningOptions ReasoningOptions { get; set; }
6299 public string SafetyIdentifier { get; set; }
6300 public ResponseServiceTier? ServiceTier { get; set; }
6301 public ResponseStatus? Status { get; set; }
6302 public float? Temperature { get; set; }
6303 public ResponseTextOptions TextOptions { get; set; }
6304 public ResponseToolChoice ToolChoice { get; set; }
6305 public IList<ResponseTool> Tools { get; }
6306 public int? TopLogProbabilityCount { get; set; }
6307 public float? TopP { get; set; }
6308 public ResponseTruncationMode? TruncationMode { get; set; }
6309 public ResponseTokenUsage Usage { get; set; }
6310 public string GetOutputText();
6311 public static explicit operator ResponseResult(ClientResult result);
6312 }
6313 [Experimental("OPENAI001")]
6314 public class ResponsesClient {
6315 protected ResponsesClient();
6316 [Experimental("SCME0002")]
6317 public ResponsesClient(ResponsesClientSettings settings);
6318 public ResponsesClient(ApiKeyCredential credential, OpenAIClientOptions options);
6319 public ResponsesClient(ApiKeyCredential credential);
6320 public ResponsesClient(AuthenticationPolicy authenticationPolicy, OpenAIClientOptions options);
6321 public ResponsesClient(AuthenticationPolicy authenticationPolicy);
6322 protected internal ResponsesClient(ClientPipeline pipeline, OpenAIClientOptions options);
6323 public ResponsesClient(string apiKey);
6324 [Experimental("OPENAI001")]
6325 public virtual Uri Endpoint { get; }
6326 public ClientPipeline Pipeline { get; }
6327 public virtual ClientResult CancelResponse(string responseId, RequestOptions options);
6328 public virtual ClientResult<ResponseResult> CancelResponse(string responseId, CancellationToken cancellationToken = default);
6329 public virtual Task<ClientResult> CancelResponseAsync(string responseId, RequestOptions options);
6330 public virtual Task<ClientResult<ResponseResult>> CancelResponseAsync(string responseId, CancellationToken cancellationToken = default);
6331 public virtual ClientResult CompactResponse(string contentType, BinaryContent content, RequestOptions options = null);
6332 public virtual Task<ClientResult> CompactResponseAsync(string contentType, BinaryContent content, RequestOptions options = null);
6333 public virtual ClientResult<ResponseResult> CreateResponse(CreateResponseOptions options, CancellationToken cancellationToken = default);
6334 public virtual ClientResult CreateResponse(BinaryContent content, RequestOptions options = null);
6335 public virtual ClientResult<ResponseResult> CreateResponse(string model, IEnumerable<ResponseItem> inputItems, string previousResponseId = null, CancellationToken cancellationToken = default);
6336 public virtual ClientResult<ResponseResult> CreateResponse(string model, string userInputText, string previousResponseId = null, CancellationToken cancellationToken = default);
6337 public virtual Task<ClientResult<ResponseResult>> CreateResponseAsync(CreateResponseOptions options, CancellationToken cancellationToken = default);
6338 public virtual Task<ClientResult> CreateResponseAsync(BinaryContent content, RequestOptions options = null);
6339 public virtual Task<ClientResult<ResponseResult>> CreateResponseAsync(string model, IEnumerable<ResponseItem> inputItems, string previousResponseId = null, CancellationToken cancellationToken = default);
6340 public virtual Task<ClientResult<ResponseResult>> CreateResponseAsync(string model, string userInputText, string previousResponseId = null, CancellationToken cancellationToken = default);
6341 public virtual CollectionResult<StreamingResponseUpdate> CreateResponseStreaming(CreateResponseOptions options, CancellationToken cancellationToken = default);
6342 public virtual CollectionResult<StreamingResponseUpdate> CreateResponseStreaming(string model, IEnumerable<ResponseItem> inputItems, string previousResponseId = null, CancellationToken cancellationToken = default);
6343 public virtual CollectionResult<StreamingResponseUpdate> CreateResponseStreaming(string model, string userInputText, string previousResponseId = null, CancellationToken cancellationToken = default);
6344 public virtual AsyncCollectionResult<StreamingResponseUpdate> CreateResponseStreamingAsync(CreateResponseOptions options, CancellationToken cancellationToken = default);
6345 public virtual AsyncCollectionResult<StreamingResponseUpdate> CreateResponseStreamingAsync(string model, IEnumerable<ResponseItem> inputItems, string previousResponseId = null, CancellationToken cancellationToken = default);
6346 public virtual AsyncCollectionResult<StreamingResponseUpdate> CreateResponseStreamingAsync(string model, string userInputText, string previousResponseId = null, CancellationToken cancellationToken = default);
6347 public virtual ClientResult DeleteResponse(string responseId, RequestOptions options);
6348 public virtual ClientResult<ResponseDeletionResult> DeleteResponse(string responseId, CancellationToken cancellationToken = default);
6349 public virtual Task<ClientResult> DeleteResponseAsync(string responseId, RequestOptions options);
6350 public virtual Task<ClientResult<ResponseDeletionResult>> DeleteResponseAsync(string responseId, CancellationToken cancellationToken = default);
6351 public virtual ClientResult GetInputTokenCount(string contentType, BinaryContent content, RequestOptions options = null);
6352 public virtual Task<ClientResult> GetInputTokenCountAsync(string contentType, BinaryContent content, RequestOptions options = null);
6353 public virtual ClientResult<ResponseResult> GetResponse(GetResponseOptions options, CancellationToken cancellationToken = default);
6354 public virtual ClientResult GetResponse(string responseId, IEnumerable<IncludedResponseProperty> include, bool? stream, int? startingAfter, bool? includeObfuscation, RequestOptions options);
6355 public virtual ClientResult<ResponseResult> GetResponse(string responseId, CancellationToken cancellationToken = default);
6356 public virtual Task<ClientResult<ResponseResult>> GetResponseAsync(GetResponseOptions options, CancellationToken cancellationToken = default);
6357 public virtual Task<ClientResult> GetResponseAsync(string responseId, IEnumerable<IncludedResponseProperty> include, bool? stream, int? startingAfter, bool? includeObfuscation, RequestOptions options);
6358 public virtual Task<ClientResult<ResponseResult>> GetResponseAsync(string responseId, CancellationToken cancellationToken = default);
6359 public virtual ClientResult<ResponseItemCollectionPage> GetResponseInputItemCollectionPage(ResponseItemCollectionOptions options, CancellationToken cancellationToken = default);
6360 public virtual ClientResult GetResponseInputItemCollectionPage(string responseId, int? limit, string order, string after, string before, RequestOptions options);
6361 public virtual Task<ClientResult<ResponseItemCollectionPage>> GetResponseInputItemCollectionPageAsync(ResponseItemCollectionOptions options, CancellationToken cancellationToken = default);
6362 public virtual Task<ClientResult> GetResponseInputItemCollectionPageAsync(string responseId, int? limit, string order, string after, string before, RequestOptions options);
6363 public virtual CollectionResult<ResponseItem> GetResponseInputItems(ResponseItemCollectionOptions options, CancellationToken cancellationToken = default);
6364 public virtual CollectionResult<ResponseItem> GetResponseInputItems(string responseId, CancellationToken cancellationToken = default);
6365 public virtual AsyncCollectionResult<ResponseItem> GetResponseInputItemsAsync(ResponseItemCollectionOptions options, CancellationToken cancellationToken = default);
6366 public virtual AsyncCollectionResult<ResponseItem> GetResponseInputItemsAsync(string responseId, CancellationToken cancellationToken = default);
6367 public virtual CollectionResult<StreamingResponseUpdate> GetResponseStreaming(GetResponseOptions options, CancellationToken cancellationToken = default);
6368 public virtual CollectionResult<StreamingResponseUpdate> GetResponseStreaming(string responseId, CancellationToken cancellationToken = default);
6369 public virtual AsyncCollectionResult<StreamingResponseUpdate> GetResponseStreamingAsync(GetResponseOptions options, CancellationToken cancellationToken = default);
6370 public virtual AsyncCollectionResult<StreamingResponseUpdate> GetResponseStreamingAsync(string responseId, CancellationToken cancellationToken = default);
6371 }
6372 [Experimental("SCME0002")]
6373 public sealed class ResponsesClientSettings : ClientSettings {
6374 public OpenAIClientOptions Options { get; set; }
6375 protected override void BindCore(Microsoft.Extensions.Configuration.IConfigurationSection section);
6376 }
6377 [Experimental("OPENAI001")]
6378 public readonly partial struct ResponseServiceTier : IEquatable<ResponseServiceTier> {
6379 public ResponseServiceTier(string value);
6380 public static ResponseServiceTier Auto { get; }
6381 public static ResponseServiceTier Default { get; }
6382 public static ResponseServiceTier Flex { get; }
6383 public static ResponseServiceTier Scale { get; }
6384 public readonly bool Equals(ResponseServiceTier other);
6385 [EditorBrowsable(EditorBrowsableState.Never)]
6386 public override readonly bool Equals(object obj);
6387 [EditorBrowsable(EditorBrowsableState.Never)]
6388 public override readonly int GetHashCode();
6389 public static bool operator ==(ResponseServiceTier left, ResponseServiceTier right);
6390 public static implicit operator ResponseServiceTier(string value);
6391 public static implicit operator ResponseServiceTier?(string value);
6392 public static bool operator !=(ResponseServiceTier left, ResponseServiceTier right);
6393 public override readonly string ToString();
6394 }
6395 [Experimental("OPENAI001")]
6396 public enum ResponseStatus {
6397 InProgress = 0,
6398 Completed = 1,
6399 Cancelled = 2,
6400 Queued = 3,
6401 Incomplete = 4,
6402 Failed = 5
6403 }
6404 [Experimental("OPENAI001")]
6405 public class ResponseTextFormat : IJsonModel<ResponseTextFormat>, IPersistableModel<ResponseTextFormat> {
6406 public ResponseTextFormatKind Kind { get; set; }
6407 [Serialization.JsonIgnore]
6408 [EditorBrowsable(EditorBrowsableState.Never)]
6409 [Experimental("SCME0001")]
6410 public ref JsonPatch Patch { get; }
6411 public static ResponseTextFormat CreateJsonObjectFormat();
6412 public static ResponseTextFormat CreateJsonSchemaFormat(string jsonSchemaFormatName, BinaryData jsonSchema, string jsonSchemaFormatDescription = null, bool? jsonSchemaIsStrict = null);
6413 public static ResponseTextFormat CreateTextFormat();
6414 }
6415 [Experimental("OPENAI001")]
6416 public enum ResponseTextFormatKind {
6417 Unknown = 0,
6418 Text = 1,
6419 JsonObject = 2,
6420 JsonSchema = 3
6421 }
6422 [Experimental("OPENAI001")]
6423 public class ResponseTextOptions : IJsonModel<ResponseTextOptions>, IPersistableModel<ResponseTextOptions> {
6424 [Serialization.JsonIgnore]
6425 [EditorBrowsable(EditorBrowsableState.Never)]
6426 [Experimental("SCME0001")]
6427 public ref JsonPatch Patch { get; }
6428 public ResponseTextFormat TextFormat { get; set; }
6429 }
6430 [Experimental("OPENAI001")]
6431 public class ResponseTokenUsage : IJsonModel<ResponseTokenUsage>, IPersistableModel<ResponseTokenUsage> {
6432 public int InputTokenCount { get; set; }
6433 public ResponseInputTokenUsageDetails InputTokenDetails { get; set; }
6434 public int OutputTokenCount { get; set; }
6435 public ResponseOutputTokenUsageDetails OutputTokenDetails { get; set; }
6436 [Serialization.JsonIgnore]
6437 [EditorBrowsable(EditorBrowsableState.Never)]
6438 [Experimental("SCME0001")]
6439 public ref JsonPatch Patch { get; }
6440 public int TotalTokenCount { get; set; }
6441 }
6442 [Experimental("OPENAI001")]
6443 public class ResponseTool : IJsonModel<ResponseTool>, IPersistableModel<ResponseTool> {
6444 [Serialization.JsonIgnore]
6445 [EditorBrowsable(EditorBrowsableState.Never)]
6446 [Experimental("SCME0001")]
6447 public ref JsonPatch Patch { get; }
6448 public static ApplyPatchTool CreateApplyPatchTool();
6449 public static CodeInterpreterTool CreateCodeInterpreterTool(CodeInterpreterToolContainer container);
6450 [Experimental("OPENAICUA001")]
6451 public static ComputerTool CreateComputerTool(ComputerToolEnvironment environment, int displayWidth, int displayHeight);
6452 public static FileSearchTool CreateFileSearchTool(IEnumerable<string> vectorStoreIds, int? maxResultCount = null, FileSearchToolRankingOptions rankingOptions = null, BinaryData filters = null);
6453 public static FunctionTool CreateFunctionTool(string functionName, BinaryData functionParameters, bool? strictModeEnabled, string functionDescription = null);
6454 public static ImageGenerationTool CreateImageGenerationTool(string model, ImageGenerationToolQuality? quality = null, ImageGenerationToolSize? size = null, ImageGenerationToolOutputFileFormat? outputFileFormat = null, int? outputCompressionFactor = null, ImageGenerationToolModerationLevel? moderationLevel = null, ImageGenerationToolBackground? background = null, ImageGenerationToolInputFidelity? inputFidelity = null, ImageGenerationToolInputImageMask inputImageMask = null, int? partialImageCount = null, ImageGenerationToolAction? action = null);
6455 public static McpTool CreateMcpTool(string serverLabel, McpToolConnectorId connectorId, string authorizationToken = null, string serverDescription = null, IDictionary<string, string> headers = null, McpToolFilter allowedTools = null, McpToolCallApprovalPolicy toolCallApprovalPolicy = null);
6456 public static McpTool CreateMcpTool(string serverLabel, Uri serverUri, string authorizationToken = null, string serverDescription = null, IDictionary<string, string> headers = null, McpToolFilter allowedTools = null, McpToolCallApprovalPolicy toolCallApprovalPolicy = null);
6457 public static WebSearchPreviewTool CreateWebSearchPreviewTool(WebSearchToolLocation userLocation = null, WebSearchToolContextSize? searchContextSize = null);
6458 public static WebSearchTool CreateWebSearchTool(WebSearchToolLocation userLocation = null, WebSearchToolContextSize? searchContextSize = null, WebSearchToolFilters filters = null);
6459 }
6460 [Experimental("OPENAI001")]
6461 public class ResponseToolChoice : IJsonModel<ResponseToolChoice>, IPersistableModel<ResponseToolChoice> {
6462 public string FunctionName { get; }
6463 public ResponseToolChoiceKind Kind { get; }
6464 public static ResponseToolChoice CreateAutoChoice();
6465 [Experimental("OPENAICUA001")]
6466 public static ResponseToolChoice CreateComputerChoice();
6467 public static ResponseToolChoice CreateFileSearchChoice();
6468 public static ResponseToolChoice CreateFunctionChoice(string functionName);
6469 public static ResponseToolChoice CreateNoneChoice();
6470 public static ResponseToolChoice CreateRequiredChoice();
6471 public static ResponseToolChoice CreateWebSearchChoice();
6472 }
6473 [Experimental("OPENAI001")]
6474 public enum ResponseToolChoiceKind {
6475 Unknown = 0,
6476 Auto = 1,
6477 None = 2,
6478 Required = 3,
6479 Function = 4,
6480 FileSearch = 5,
6481 WebSearch = 6,
6482 Computer = 7
6483 }
6484 [Experimental("OPENAI001")]
6485 public readonly partial struct ResponseTruncationMode : IEquatable<ResponseTruncationMode> {
6486 public ResponseTruncationMode(string value);
6487 public static ResponseTruncationMode Auto { get; }
6488 public static ResponseTruncationMode Disabled { get; }
6489 public readonly bool Equals(ResponseTruncationMode other);
6490 [EditorBrowsable(EditorBrowsableState.Never)]
6491 public override readonly bool Equals(object obj);
6492 [EditorBrowsable(EditorBrowsableState.Never)]
6493 public override readonly int GetHashCode();
6494 public static bool operator ==(ResponseTruncationMode left, ResponseTruncationMode right);
6495 public static implicit operator ResponseTruncationMode(string value);
6496 public static implicit operator ResponseTruncationMode?(string value);
6497 public static bool operator !=(ResponseTruncationMode left, ResponseTruncationMode right);
6498 public override readonly string ToString();
6499 }
6500 [Experimental("OPENAI001")]
6501 public class StreamingResponseCodeInterpreterCallCodeDeltaUpdate : StreamingResponseUpdate, IJsonModel<StreamingResponseCodeInterpreterCallCodeDeltaUpdate>, IPersistableModel<StreamingResponseCodeInterpreterCallCodeDeltaUpdate> {
6502 public StreamingResponseCodeInterpreterCallCodeDeltaUpdate();
6503 public string Delta { get; set; }
6504 public string ItemId { get; set; }
6505 public int OutputIndex { get; set; }
6506 }
6507 [Experimental("OPENAI001")]
6508 public class StreamingResponseCodeInterpreterCallCodeDoneUpdate : StreamingResponseUpdate, IJsonModel<StreamingResponseCodeInterpreterCallCodeDoneUpdate>, IPersistableModel<StreamingResponseCodeInterpreterCallCodeDoneUpdate> {
6509 public StreamingResponseCodeInterpreterCallCodeDoneUpdate();
6510 public string Code { get; set; }
6511 public string ItemId { get; set; }
6512 public int OutputIndex { get; set; }
6513 }
6514 [Experimental("OPENAI001")]
6515 public class StreamingResponseCodeInterpreterCallCompletedUpdate : StreamingResponseUpdate, IJsonModel<StreamingResponseCodeInterpreterCallCompletedUpdate>, IPersistableModel<StreamingResponseCodeInterpreterCallCompletedUpdate> {
6516 public StreamingResponseCodeInterpreterCallCompletedUpdate();
6517 public string ItemId { get; set; }
6518 public int OutputIndex { get; set; }
6519 }
6520 [Experimental("OPENAI001")]
6521 public class StreamingResponseCodeInterpreterCallInProgressUpdate : StreamingResponseUpdate, IJsonModel<StreamingResponseCodeInterpreterCallInProgressUpdate>, IPersistableModel<StreamingResponseCodeInterpreterCallInProgressUpdate> {
6522 public StreamingResponseCodeInterpreterCallInProgressUpdate();
6523 public string ItemId { get; set; }
6524 public int OutputIndex { get; set; }
6525 }
6526 [Experimental("OPENAI001")]
6527 public class StreamingResponseCodeInterpreterCallInterpretingUpdate : StreamingResponseUpdate, IJsonModel<StreamingResponseCodeInterpreterCallInterpretingUpdate>, IPersistableModel<StreamingResponseCodeInterpreterCallInterpretingUpdate> {
6528 public StreamingResponseCodeInterpreterCallInterpretingUpdate();
6529 public string ItemId { get; set; }
6530 public int OutputIndex { get; set; }
6531 }
6532 [Experimental("OPENAI001")]
6533 public class StreamingResponseCompletedUpdate : StreamingResponseUpdate, IJsonModel<StreamingResponseCompletedUpdate>, IPersistableModel<StreamingResponseCompletedUpdate> {
6534 public StreamingResponseCompletedUpdate();
6535 public ResponseResult Response { get; set; }
6536 }
6537 [Experimental("OPENAI001")]
6538 public class StreamingResponseContentPartAddedUpdate : StreamingResponseUpdate, IJsonModel<StreamingResponseContentPartAddedUpdate>, IPersistableModel<StreamingResponseContentPartAddedUpdate> {
6539 public StreamingResponseContentPartAddedUpdate();
6540 public int ContentIndex { get; set; }
6541 public string ItemId { get; set; }
6542 public int OutputIndex { get; set; }
6543 public ResponseContentPart Part { get; set; }
6544 }
6545 [Experimental("OPENAI001")]
6546 public class StreamingResponseContentPartDoneUpdate : StreamingResponseUpdate, IJsonModel<StreamingResponseContentPartDoneUpdate>, IPersistableModel<StreamingResponseContentPartDoneUpdate> {
6547 public StreamingResponseContentPartDoneUpdate();
6548 public int ContentIndex { get; set; }
6549 public string ItemId { get; set; }
6550 public int OutputIndex { get; set; }
6551 public ResponseContentPart Part { get; set; }
6552 }
6553 [Experimental("OPENAI001")]
6554 public class StreamingResponseCreatedUpdate : StreamingResponseUpdate, IJsonModel<StreamingResponseCreatedUpdate>, IPersistableModel<StreamingResponseCreatedUpdate> {
6555 public StreamingResponseCreatedUpdate();
6556 public ResponseResult Response { get; set; }
6557 }
6558 [Experimental("OPENAI001")]
6559 public class StreamingResponseErrorUpdate : StreamingResponseUpdate, IJsonModel<StreamingResponseErrorUpdate>, IPersistableModel<StreamingResponseErrorUpdate> {
6560 public StreamingResponseErrorUpdate();
6561 public string Code { get; set; }
6562 public string Message { get; set; }
6563 public string Param { get; set; }
6564 }
6565 [Experimental("OPENAI001")]
6566 public class StreamingResponseFailedUpdate : StreamingResponseUpdate, IJsonModel<StreamingResponseFailedUpdate>, IPersistableModel<StreamingResponseFailedUpdate> {
6567 public StreamingResponseFailedUpdate();
6568 public ResponseResult Response { get; set; }
6569 }
6570 [Experimental("OPENAI001")]
6571 public class StreamingResponseFileSearchCallCompletedUpdate : StreamingResponseUpdate, IJsonModel<StreamingResponseFileSearchCallCompletedUpdate>, IPersistableModel<StreamingResponseFileSearchCallCompletedUpdate> {
6572 public StreamingResponseFileSearchCallCompletedUpdate();
6573 public string ItemId { get; set; }
6574 public int OutputIndex { get; set; }
6575 }
6576 [Experimental("OPENAI001")]
6577 public class StreamingResponseFileSearchCallInProgressUpdate : StreamingResponseUpdate, IJsonModel<StreamingResponseFileSearchCallInProgressUpdate>, IPersistableModel<StreamingResponseFileSearchCallInProgressUpdate> {
6578 public StreamingResponseFileSearchCallInProgressUpdate();
6579 public string ItemId { get; set; }
6580 public int OutputIndex { get; set; }
6581 }
6582 [Experimental("OPENAI001")]
6583 public class StreamingResponseFileSearchCallSearchingUpdate : StreamingResponseUpdate, IJsonModel<StreamingResponseFileSearchCallSearchingUpdate>, IPersistableModel<StreamingResponseFileSearchCallSearchingUpdate> {
6584 public StreamingResponseFileSearchCallSearchingUpdate();
6585 public string ItemId { get; set; }
6586 public int OutputIndex { get; set; }
6587 }
6588 [Experimental("OPENAI001")]
6589 public class StreamingResponseFunctionCallArgumentsDeltaUpdate : StreamingResponseUpdate, IJsonModel<StreamingResponseFunctionCallArgumentsDeltaUpdate>, IPersistableModel<StreamingResponseFunctionCallArgumentsDeltaUpdate> {
6590 public StreamingResponseFunctionCallArgumentsDeltaUpdate();
6591 public BinaryData Delta { get; set; }
6592 public string ItemId { get; set; }
6593 public int OutputIndex { get; set; }
6594 }
6595 [Experimental("OPENAI001")]
6596 public class StreamingResponseFunctionCallArgumentsDoneUpdate : StreamingResponseUpdate, IJsonModel<StreamingResponseFunctionCallArgumentsDoneUpdate>, IPersistableModel<StreamingResponseFunctionCallArgumentsDoneUpdate> {
6597 public StreamingResponseFunctionCallArgumentsDoneUpdate();
6598 public BinaryData FunctionArguments { get; set; }
6599 public string ItemId { get; set; }
6600 public int OutputIndex { get; set; }
6601 }
6602 [Experimental("OPENAI001")]
6603 public class StreamingResponseImageGenerationCallCompletedUpdate : StreamingResponseUpdate, IJsonModel<StreamingResponseImageGenerationCallCompletedUpdate>, IPersistableModel<StreamingResponseImageGenerationCallCompletedUpdate> {
6604 public StreamingResponseImageGenerationCallCompletedUpdate();
6605 public string ItemId { get; set; }
6606 public int OutputIndex { get; set; }
6607 }
6608 [Experimental("OPENAI001")]
6609 public class StreamingResponseImageGenerationCallGeneratingUpdate : StreamingResponseUpdate, IJsonModel<StreamingResponseImageGenerationCallGeneratingUpdate>, IPersistableModel<StreamingResponseImageGenerationCallGeneratingUpdate> {
6610 public StreamingResponseImageGenerationCallGeneratingUpdate();
6611 public string ItemId { get; set; }
6612 public int OutputIndex { get; set; }
6613 }
6614 [Experimental("OPENAI001")]
6615 public class StreamingResponseImageGenerationCallInProgressUpdate : StreamingResponseUpdate, IJsonModel<StreamingResponseImageGenerationCallInProgressUpdate>, IPersistableModel<StreamingResponseImageGenerationCallInProgressUpdate> {
6616 public StreamingResponseImageGenerationCallInProgressUpdate();
6617 public string ItemId { get; set; }
6618 public int OutputIndex { get; set; }
6619 }
6620 [Experimental("OPENAI001")]
6621 public class StreamingResponseImageGenerationCallPartialImageUpdate : StreamingResponseUpdate, IJsonModel<StreamingResponseImageGenerationCallPartialImageUpdate>, IPersistableModel<StreamingResponseImageGenerationCallPartialImageUpdate> {
6622 public StreamingResponseImageGenerationCallPartialImageUpdate();
6623 public string ItemId { get; set; }
6624 public int OutputIndex { get; set; }
6625 public BinaryData PartialImageBytes { get; set; }
6626 public int PartialImageIndex { get; set; }
6627 }
6628 [Experimental("OPENAI001")]
6629 public class StreamingResponseIncompleteUpdate : StreamingResponseUpdate, IJsonModel<StreamingResponseIncompleteUpdate>, IPersistableModel<StreamingResponseIncompleteUpdate> {
6630 public StreamingResponseIncompleteUpdate();
6631 public ResponseResult Response { get; set; }
6632 }
6633 [Experimental("OPENAI001")]
6634 public class StreamingResponseInProgressUpdate : StreamingResponseUpdate, IJsonModel<StreamingResponseInProgressUpdate>, IPersistableModel<StreamingResponseInProgressUpdate> {
6635 public StreamingResponseInProgressUpdate();
6636 public ResponseResult Response { get; set; }
6637 }
6638 [Experimental("OPENAI001")]
6639 public class StreamingResponseMcpCallArgumentsDeltaUpdate : StreamingResponseUpdate, IJsonModel<StreamingResponseMcpCallArgumentsDeltaUpdate>, IPersistableModel<StreamingResponseMcpCallArgumentsDeltaUpdate> {
6640 public StreamingResponseMcpCallArgumentsDeltaUpdate();
6641 public BinaryData Delta { get; set; }
6642 public string ItemId { get; set; }
6643 public int OutputIndex { get; set; }
6644 }
6645 [Experimental("OPENAI001")]
6646 public class StreamingResponseMcpCallArgumentsDoneUpdate : StreamingResponseUpdate, IJsonModel<StreamingResponseMcpCallArgumentsDoneUpdate>, IPersistableModel<StreamingResponseMcpCallArgumentsDoneUpdate> {
6647 public StreamingResponseMcpCallArgumentsDoneUpdate();
6648 public string ItemId { get; set; }
6649 public int OutputIndex { get; set; }
6650 public BinaryData ToolArguments { get; set; }
6651 }
6652 [Experimental("OPENAI001")]
6653 public class StreamingResponseMcpCallCompletedUpdate : StreamingResponseUpdate, IJsonModel<StreamingResponseMcpCallCompletedUpdate>, IPersistableModel<StreamingResponseMcpCallCompletedUpdate> {
6654 public StreamingResponseMcpCallCompletedUpdate();
6655 public string ItemId { get; set; }
6656 public int OutputIndex { get; set; }
6657 }
6658 [Experimental("OPENAI001")]
6659 public class StreamingResponseMcpCallFailedUpdate : StreamingResponseUpdate, IJsonModel<StreamingResponseMcpCallFailedUpdate>, IPersistableModel<StreamingResponseMcpCallFailedUpdate> {
6660 public StreamingResponseMcpCallFailedUpdate();
6661 public string ItemId { get; set; }
6662 public int OutputIndex { get; set; }
6663 }
6664 [Experimental("OPENAI001")]
6665 public class StreamingResponseMcpCallInProgressUpdate : StreamingResponseUpdate, IJsonModel<StreamingResponseMcpCallInProgressUpdate>, IPersistableModel<StreamingResponseMcpCallInProgressUpdate> {
6666 public StreamingResponseMcpCallInProgressUpdate();
6667 public string ItemId { get; set; }
6668 public int OutputIndex { get; set; }
6669 }
6670 [Experimental("OPENAI001")]
6671 public class StreamingResponseMcpListToolsCompletedUpdate : StreamingResponseUpdate, IJsonModel<StreamingResponseMcpListToolsCompletedUpdate>, IPersistableModel<StreamingResponseMcpListToolsCompletedUpdate> {
6672 public StreamingResponseMcpListToolsCompletedUpdate();
6673 public string ItemId { get; set; }
6674 public int OutputIndex { get; set; }
6675 }
6676 [Experimental("OPENAI001")]
6677 public class StreamingResponseMcpListToolsFailedUpdate : StreamingResponseUpdate, IJsonModel<StreamingResponseMcpListToolsFailedUpdate>, IPersistableModel<StreamingResponseMcpListToolsFailedUpdate> {
6678 public StreamingResponseMcpListToolsFailedUpdate();
6679 public string ItemId { get; set; }
6680 public int OutputIndex { get; set; }
6681 }
6682 [Experimental("OPENAI001")]
6683 public class StreamingResponseMcpListToolsInProgressUpdate : StreamingResponseUpdate, IJsonModel<StreamingResponseMcpListToolsInProgressUpdate>, IPersistableModel<StreamingResponseMcpListToolsInProgressUpdate> {
6684 public StreamingResponseMcpListToolsInProgressUpdate();
6685 public string ItemId { get; set; }
6686 public int OutputIndex { get; set; }
6687 }
6688 [Experimental("OPENAI001")]
6689 public class StreamingResponseOutputItemAddedUpdate : StreamingResponseUpdate, IJsonModel<StreamingResponseOutputItemAddedUpdate>, IPersistableModel<StreamingResponseOutputItemAddedUpdate> {
6690 public StreamingResponseOutputItemAddedUpdate();
6691 public ResponseItem Item { get; set; }
6692 public int OutputIndex { get; set; }
6693 }
6694 [Experimental("OPENAI001")]
6695 public class StreamingResponseOutputItemDoneUpdate : StreamingResponseUpdate, IJsonModel<StreamingResponseOutputItemDoneUpdate>, IPersistableModel<StreamingResponseOutputItemDoneUpdate> {
6696 public StreamingResponseOutputItemDoneUpdate();
6697 public ResponseItem Item { get; set; }
6698 public int OutputIndex { get; set; }
6699 }
6700 [Experimental("OPENAI001")]
6701 public class StreamingResponseOutputTextDeltaUpdate : StreamingResponseUpdate, IJsonModel<StreamingResponseOutputTextDeltaUpdate>, IPersistableModel<StreamingResponseOutputTextDeltaUpdate> {
6702 public StreamingResponseOutputTextDeltaUpdate();
6703 public int ContentIndex { get; set; }
6704 public string Delta { get; set; }
6705 public string ItemId { get; set; }
6706 public int OutputIndex { get; set; }
6707 }
6708 [Experimental("OPENAI001")]
6709 public class StreamingResponseOutputTextDoneUpdate : StreamingResponseUpdate, IJsonModel<StreamingResponseOutputTextDoneUpdate>, IPersistableModel<StreamingResponseOutputTextDoneUpdate> {
6710 public StreamingResponseOutputTextDoneUpdate();
6711 public int ContentIndex { get; set; }
6712 public string ItemId { get; set; }
6713 public int OutputIndex { get; set; }
6714 public string Text { get; set; }
6715 }
6716 [Experimental("OPENAI001")]
6717 public class StreamingResponseQueuedUpdate : StreamingResponseUpdate, IJsonModel<StreamingResponseQueuedUpdate>, IPersistableModel<StreamingResponseQueuedUpdate> {
6718 public StreamingResponseQueuedUpdate();
6719 public ResponseResult Response { get; set; }
6720 }
6721 [Experimental("OPENAI001")]
6722 public class StreamingResponseReasoningSummaryPartAddedUpdate : StreamingResponseUpdate, IJsonModel<StreamingResponseReasoningSummaryPartAddedUpdate>, IPersistableModel<StreamingResponseReasoningSummaryPartAddedUpdate> {
6723 public StreamingResponseReasoningSummaryPartAddedUpdate();
6724 public string ItemId { get; set; }
6725 public int OutputIndex { get; set; }
6726 public ReasoningSummaryPart Part { get; set; }
6727 public int SummaryIndex { get; set; }
6728 }
6729 [Experimental("OPENAI001")]
6730 public class StreamingResponseReasoningSummaryPartDoneUpdate : StreamingResponseUpdate, IJsonModel<StreamingResponseReasoningSummaryPartDoneUpdate>, IPersistableModel<StreamingResponseReasoningSummaryPartDoneUpdate> {
6731 public StreamingResponseReasoningSummaryPartDoneUpdate();
6732 public string ItemId { get; set; }
6733 public int OutputIndex { get; set; }
6734 public ReasoningSummaryPart Part { get; set; }
6735 public int SummaryIndex { get; set; }
6736 }
6737 [Experimental("OPENAI001")]
6738 public class StreamingResponseReasoningSummaryTextDeltaUpdate : StreamingResponseUpdate, IJsonModel<StreamingResponseReasoningSummaryTextDeltaUpdate>, IPersistableModel<StreamingResponseReasoningSummaryTextDeltaUpdate> {
6739 public StreamingResponseReasoningSummaryTextDeltaUpdate();
6740 public string Delta { get; set; }
6741 public string ItemId { get; set; }
6742 public int OutputIndex { get; set; }
6743 public int SummaryIndex { get; set; }
6744 }
6745 [Experimental("OPENAI001")]
6746 public class StreamingResponseReasoningSummaryTextDoneUpdate : StreamingResponseUpdate, IJsonModel<StreamingResponseReasoningSummaryTextDoneUpdate>, IPersistableModel<StreamingResponseReasoningSummaryTextDoneUpdate> {
6747 public StreamingResponseReasoningSummaryTextDoneUpdate();
6748 public string ItemId { get; set; }
6749 public int OutputIndex { get; set; }
6750 public int SummaryIndex { get; set; }
6751 public string Text { get; set; }
6752 }
6753 [Experimental("OPENAI001")]
6754 public class StreamingResponseReasoningTextDeltaUpdate : StreamingResponseUpdate, IJsonModel<StreamingResponseReasoningTextDeltaUpdate>, IPersistableModel<StreamingResponseReasoningTextDeltaUpdate> {
6755 public StreamingResponseReasoningTextDeltaUpdate();
6756 public int ContentIndex { get; set; }
6757 public string Delta { get; set; }
6758 public string ItemId { get; set; }
6759 public int OutputIndex { get; set; }
6760 }
6761 [Experimental("OPENAI001")]
6762 public class StreamingResponseReasoningTextDoneUpdate : StreamingResponseUpdate, IJsonModel<StreamingResponseReasoningTextDoneUpdate>, IPersistableModel<StreamingResponseReasoningTextDoneUpdate> {
6763 public StreamingResponseReasoningTextDoneUpdate();
6764 public int ContentIndex { get; set; }
6765 public string ItemId { get; set; }
6766 public int OutputIndex { get; set; }
6767 public string Text { get; set; }
6768 }
6769 [Experimental("OPENAI001")]
6770 public class StreamingResponseRefusalDeltaUpdate : StreamingResponseUpdate, IJsonModel<StreamingResponseRefusalDeltaUpdate>, IPersistableModel<StreamingResponseRefusalDeltaUpdate> {
6771 public StreamingResponseRefusalDeltaUpdate();
6772 public int ContentIndex { get; set; }
6773 public string Delta { get; set; }
6774 public string ItemId { get; set; }
6775 public int OutputIndex { get; set; }
6776 }
6777 [Experimental("OPENAI001")]
6778 public class StreamingResponseRefusalDoneUpdate : StreamingResponseUpdate, IJsonModel<StreamingResponseRefusalDoneUpdate>, IPersistableModel<StreamingResponseRefusalDoneUpdate> {
6779 public StreamingResponseRefusalDoneUpdate();
6780 public int ContentIndex { get; set; }
6781 public string ItemId { get; set; }
6782 public int OutputIndex { get; set; }
6783 public string Refusal { get; set; }
6784 }
6785 [Experimental("OPENAI001")]
6786 public class StreamingResponseTextAnnotationAddedUpdate : StreamingResponseUpdate, IJsonModel<StreamingResponseTextAnnotationAddedUpdate>, IPersistableModel<StreamingResponseTextAnnotationAddedUpdate> {
6787 public StreamingResponseTextAnnotationAddedUpdate();
6788 public BinaryData Annotation { get; set; }
6789 public int AnnotationIndex { get; set; }
6790 public int ContentIndex { get; set; }
6791 public string ItemId { get; set; }
6792 public int OutputIndex { get; set; }
6793 }
6794 [Experimental("OPENAI001")]
6795 public class StreamingResponseUpdate : IJsonModel<StreamingResponseUpdate>, IPersistableModel<StreamingResponseUpdate> {
6796 [Serialization.JsonIgnore]
6797 [EditorBrowsable(EditorBrowsableState.Never)]
6798 [Experimental("SCME0001")]
6799 public ref JsonPatch Patch { get; }
6800 public int SequenceNumber { get; set; }
6801 }
6802 [Experimental("OPENAI001")]
6803 public class StreamingResponseWebSearchCallCompletedUpdate : StreamingResponseUpdate, IJsonModel<StreamingResponseWebSearchCallCompletedUpdate>, IPersistableModel<StreamingResponseWebSearchCallCompletedUpdate> {
6804 public StreamingResponseWebSearchCallCompletedUpdate();
6805 public string ItemId { get; set; }
6806 public int OutputIndex { get; set; }
6807 }
6808 [Experimental("OPENAI001")]
6809 public class StreamingResponseWebSearchCallInProgressUpdate : StreamingResponseUpdate, IJsonModel<StreamingResponseWebSearchCallInProgressUpdate>, IPersistableModel<StreamingResponseWebSearchCallInProgressUpdate> {
6810 public StreamingResponseWebSearchCallInProgressUpdate();
6811 public string ItemId { get; set; }
6812 public int OutputIndex { get; set; }
6813 }
6814 [Experimental("OPENAI001")]
6815 public class StreamingResponseWebSearchCallSearchingUpdate : StreamingResponseUpdate, IJsonModel<StreamingResponseWebSearchCallSearchingUpdate>, IPersistableModel<StreamingResponseWebSearchCallSearchingUpdate> {
6816 public StreamingResponseWebSearchCallSearchingUpdate();
6817 public string ItemId { get; set; }
6818 public int OutputIndex { get; set; }
6819 }
6820 [Experimental("OPENAI001")]
6821 public class UriCitationMessageAnnotation : ResponseMessageAnnotation, IJsonModel<UriCitationMessageAnnotation>, IPersistableModel<UriCitationMessageAnnotation> {
6822 public UriCitationMessageAnnotation(Uri uri, int startIndex, int endIndex, string title);
6823 public int EndIndex { get; set; }
6824 public int StartIndex { get; set; }
6825 public string Title { get; set; }
6826 public Uri Uri { get; set; }
6827 }
6828 [Experimental("OPENAI001")]
6829 public class WebSearchAction : IJsonModel<WebSearchAction>, IPersistableModel<WebSearchAction> {
6830 [Serialization.JsonIgnore]
6831 [EditorBrowsable(EditorBrowsableState.Never)]
6832 [Experimental("SCME0001")]
6833 public ref JsonPatch Patch { get; }
6834 }
6835 [Experimental("OPENAI001")]
6836 public class WebSearchActionSource : IJsonModel<WebSearchActionSource>, IPersistableModel<WebSearchActionSource> {
6837 [Serialization.JsonIgnore]
6838 [EditorBrowsable(EditorBrowsableState.Never)]
6839 [Experimental("SCME0001")]
6840 public ref JsonPatch Patch { get; }
6841 }
6842 [Experimental("OPENAI001")]
6843 public class WebSearchActionUriSource : WebSearchActionSource, IJsonModel<WebSearchActionUriSource>, IPersistableModel<WebSearchActionUriSource> {
6844 public WebSearchActionUriSource(Uri uri);
6845 public Uri Uri { get; set; }
6846 }
6847 [Experimental("OPENAI001")]
6848 public class WebSearchCallResponseItem : ResponseItem, IJsonModel<WebSearchCallResponseItem>, IPersistableModel<WebSearchCallResponseItem> {
6849 public WebSearchCallResponseItem();
6850 public WebSearchAction Action { get; set; }
6851 public WebSearchCallStatus? Status { get; set; }
6852 }
6853 [Experimental("OPENAI001")]
6854 public enum WebSearchCallStatus {
6855 InProgress = 0,
6856 Searching = 1,
6857 Completed = 2,
6858 Failed = 3
6859 }
6860 [Experimental("OPENAI001")]
6861 public class WebSearchFindInPageAction : WebSearchAction, IJsonModel<WebSearchFindInPageAction>, IPersistableModel<WebSearchFindInPageAction> {
6862 public WebSearchFindInPageAction(Uri uri, string pattern);
6863 public string Pattern { get; set; }
6864 public Uri Uri { get; set; }
6865 }
6866 [Experimental("OPENAI001")]
6867 public class WebSearchOpenPageAction : WebSearchAction, IJsonModel<WebSearchOpenPageAction>, IPersistableModel<WebSearchOpenPageAction> {
6868 public WebSearchOpenPageAction();
6869 public Uri Uri { get; set; }
6870 }
6871 [Experimental("OPENAI001")]
6872 public class WebSearchPreviewTool : ResponseTool, IJsonModel<WebSearchPreviewTool>, IPersistableModel<WebSearchPreviewTool> {
6873 public WebSearchPreviewTool();
6874 public WebSearchToolContextSize? SearchContextSize { get; set; }
6875 public WebSearchToolLocation UserLocation { get; set; }
6876 }
6877 [Experimental("OPENAI001")]
6878 public class WebSearchSearchAction : WebSearchAction, IJsonModel<WebSearchSearchAction>, IPersistableModel<WebSearchSearchAction> {
6879 public WebSearchSearchAction();
6880 public IList<string> Queries { get; }
6881 [Obsolete("This property is obsolete. Use the Queries property instead.")]
6882 public string Query { get; set; }
6883 public IList<WebSearchActionSource> Sources { get; }
6884 }
6885 [Experimental("OPENAI001")]
6886 public class WebSearchTool : ResponseTool, IJsonModel<WebSearchTool>, IPersistableModel<WebSearchTool> {
6887 public WebSearchTool();
6888 public WebSearchToolFilters Filters { get; set; }
6889 public WebSearchToolContextSize? SearchContextSize { get; set; }
6890 public WebSearchToolLocation UserLocation { get; set; }
6891 }
6892 [Experimental("OPENAI001")]
6893 public class WebSearchToolApproximateLocation : WebSearchToolLocation, IJsonModel<WebSearchToolApproximateLocation>, IPersistableModel<WebSearchToolApproximateLocation> {
6894 public WebSearchToolApproximateLocation();
6895 public string City { get; set; }
6896 public string Country { get; set; }
6897 public string Region { get; set; }
6898 public string Timezone { get; set; }
6899 }
6900 [Experimental("OPENAI001")]
6901 public readonly partial struct WebSearchToolContextSize : IEquatable<WebSearchToolContextSize> {
6902 public WebSearchToolContextSize(string value);
6903 public static WebSearchToolContextSize High { get; }
6904 public static WebSearchToolContextSize Low { get; }
6905 public static WebSearchToolContextSize Medium { get; }
6906 public readonly bool Equals(WebSearchToolContextSize other);
6907 [EditorBrowsable(EditorBrowsableState.Never)]
6908 public override readonly bool Equals(object obj);
6909 [EditorBrowsable(EditorBrowsableState.Never)]
6910 public override readonly int GetHashCode();
6911 public static bool operator ==(WebSearchToolContextSize left, WebSearchToolContextSize right);
6912 public static implicit operator WebSearchToolContextSize(string value);
6913 public static implicit operator WebSearchToolContextSize?(string value);
6914 public static bool operator !=(WebSearchToolContextSize left, WebSearchToolContextSize right);
6915 public override readonly string ToString();
6916 }
6917 [Experimental("OPENAI001")]
6918 public class WebSearchToolFilters : IJsonModel<WebSearchToolFilters>, IPersistableModel<WebSearchToolFilters> {
6919 public IList<string> AllowedDomains { get; set; }
6920 [Serialization.JsonIgnore]
6921 [EditorBrowsable(EditorBrowsableState.Never)]
6922 [Experimental("SCME0001")]
6923 public ref JsonPatch Patch { get; }
6924 }
6925 [Experimental("OPENAI001")]
6926 public class WebSearchToolLocation : IJsonModel<WebSearchToolLocation>, IPersistableModel<WebSearchToolLocation> {
6927 [Serialization.JsonIgnore]
6928 [EditorBrowsable(EditorBrowsableState.Never)]
6929 [Experimental("SCME0001")]
6930 public ref JsonPatch Patch { get; }
6931 public static WebSearchToolApproximateLocation CreateApproximateLocation(string country = null, string region = null, string city = null, string timezone = null);
6932 }
6933}
6934namespace OpenAI.VectorStores {
6935 [Experimental("OPENAI001")]
6936 public abstract class FileChunkingStrategy : IJsonModel<FileChunkingStrategy>, IPersistableModel<FileChunkingStrategy> {
6937 public static FileChunkingStrategy Auto { get; }
6938 public static FileChunkingStrategy Unknown { get; }
6939 public static FileChunkingStrategy CreateStaticStrategy(int maxTokensPerChunk, int overlappingTokenCount);
6940 }
6941 [Experimental("OPENAI001")]
6942 public class FileFromStoreRemovalResult : IJsonModel<FileFromStoreRemovalResult>, IPersistableModel<FileFromStoreRemovalResult> {
6943 public string FileId { get; }
6944 public bool Removed { get; }
6945 public static explicit operator FileFromStoreRemovalResult(ClientResult result);
6946 }
6947 [Experimental("OPENAI001")]
6948 public class StaticFileChunkingStrategy : FileChunkingStrategy, IJsonModel<StaticFileChunkingStrategy>, IPersistableModel<StaticFileChunkingStrategy> {
6949 public StaticFileChunkingStrategy(int maxTokensPerChunk, int overlappingTokenCount);
6950 public int MaxTokensPerChunk { get; }
6951 public int OverlappingTokenCount { get; }
6952 }
6953 [Experimental("OPENAI001")]
6954 public class VectorStore : IJsonModel<VectorStore>, IPersistableModel<VectorStore> {
6955 public DateTimeOffset CreatedAt { get; }
6956 public VectorStoreExpirationPolicy ExpirationPolicy { get; }
6957 public DateTimeOffset? ExpiresAt { get; }
6958 public VectorStoreFileCounts FileCounts { get; }
6959 public string Id { get; }
6960 public DateTimeOffset? LastActiveAt { get; }
6961 public IReadOnlyDictionary<string, string> Metadata { get; }
6962 public string Name { get; }
6963 public VectorStoreStatus Status { get; }
6964 public int UsageBytes { get; }
6965 public static explicit operator VectorStore(ClientResult result);
6966 }
6967 [Experimental("OPENAI001")]
6968 public class VectorStoreClient {
6969 protected VectorStoreClient();
6970 [Experimental("SCME0002")]
6971 public VectorStoreClient(VectorStoreClientSettings settings);
6972 public VectorStoreClient(ApiKeyCredential credential, OpenAIClientOptions options);
6973 public VectorStoreClient(ApiKeyCredential credential);
6974 public VectorStoreClient(AuthenticationPolicy authenticationPolicy, OpenAIClientOptions options);
6975 public VectorStoreClient(AuthenticationPolicy authenticationPolicy);
6976 protected internal VectorStoreClient(ClientPipeline pipeline, OpenAIClientOptions options);
6977 public VectorStoreClient(string apiKey);
6978 [Experimental("OPENAI001")]
6979 public Uri Endpoint { get; }
6980 public ClientPipeline Pipeline { get; }
6981 public virtual ClientResult AddFileBatchToVectorStore(string vectorStoreId, BinaryContent content, RequestOptions options = null);
6982 public virtual ClientResult<VectorStoreFileBatch> AddFileBatchToVectorStore(string vectorStoreId, IEnumerable<string> fileIds, CancellationToken cancellationToken = default);
6983 public virtual Task<ClientResult> AddFileBatchToVectorStoreAsync(string vectorStoreId, BinaryContent content, RequestOptions options = null);
6984 public virtual Task<ClientResult<VectorStoreFileBatch>> AddFileBatchToVectorStoreAsync(string vectorStoreId, IEnumerable<string> fileIds, CancellationToken cancellationToken = default);
6985 public virtual ClientResult AddFileToVectorStore(string vectorStoreId, BinaryContent content, RequestOptions options = null);
6986 public virtual ClientResult<VectorStoreFile> AddFileToVectorStore(string vectorStoreId, string fileId, CancellationToken cancellationToken = default);
6987 public virtual Task<ClientResult> AddFileToVectorStoreAsync(string vectorStoreId, BinaryContent content, RequestOptions options = null);
6988 public virtual Task<ClientResult<VectorStoreFile>> AddFileToVectorStoreAsync(string vectorStoreId, string fileId, CancellationToken cancellationToken = default);
6989 public virtual ClientResult CancelVectorStoreFileBatch(string vectorStoreId, string batchId, RequestOptions options);
6990 public virtual ClientResult<VectorStoreFileBatch> CancelVectorStoreFileBatch(string vectorStoreId, string batchId, CancellationToken cancellationToken = default);
6991 public virtual Task<ClientResult> CancelVectorStoreFileBatchAsync(string vectorStoreId, string batchId, RequestOptions options);
6992 public virtual Task<ClientResult<VectorStoreFileBatch>> CancelVectorStoreFileBatchAsync(string vectorStoreId, string batchId, CancellationToken cancellationToken = default);
6993 public virtual ClientResult<VectorStore> CreateVectorStore(VectorStoreCreationOptions options = null, CancellationToken cancellationToken = default);
6994 public virtual ClientResult CreateVectorStore(BinaryContent content, RequestOptions options = null);
6995 public virtual Task<ClientResult<VectorStore>> CreateVectorStoreAsync(VectorStoreCreationOptions options = null, CancellationToken cancellationToken = default);
6996 public virtual Task<ClientResult> CreateVectorStoreAsync(BinaryContent content, RequestOptions options = null);
6997 public virtual ClientResult DeleteVectorStore(string vectorStoreId, RequestOptions options);
6998 public virtual ClientResult<VectorStoreDeletionResult> DeleteVectorStore(string vectorStoreId, CancellationToken cancellationToken = default);
6999 public virtual Task<ClientResult> DeleteVectorStoreAsync(string vectorStoreId, RequestOptions options);
7000 public virtual Task<ClientResult<VectorStoreDeletionResult>> DeleteVectorStoreAsync(string vectorStoreId, CancellationToken cancellationToken = default);
7001 public virtual ClientResult GetVectorStore(string vectorStoreId, RequestOptions options);
7002 public virtual ClientResult<VectorStore> GetVectorStore(string vectorStoreId, CancellationToken cancellationToken = default);
7003 public virtual Task<ClientResult> GetVectorStoreAsync(string vectorStoreId, RequestOptions options);
7004 public virtual Task<ClientResult<VectorStore>> GetVectorStoreAsync(string vectorStoreId, CancellationToken cancellationToken = default);
7005 public virtual ClientResult GetVectorStoreFile(string vectorStoreId, string fileId, RequestOptions options);
7006 public virtual ClientResult<VectorStoreFile> GetVectorStoreFile(string vectorStoreId, string fileId, CancellationToken cancellationToken = default);
7007 public virtual Task<ClientResult> GetVectorStoreFileAsync(string vectorStoreId, string fileId, RequestOptions options);
7008 public virtual Task<ClientResult<VectorStoreFile>> GetVectorStoreFileAsync(string vectorStoreId, string fileId, CancellationToken cancellationToken = default);
7009 public virtual ClientResult GetVectorStoreFileBatch(string vectorStoreId, string batchId, RequestOptions options);
7010 public virtual ClientResult<VectorStoreFileBatch> GetVectorStoreFileBatch(string vectorStoreId, string batchId, CancellationToken cancellationToken = default);
7011 public virtual Task<ClientResult> GetVectorStoreFileBatchAsync(string vectorStoreId, string batchId, RequestOptions options);
7012 public virtual Task<ClientResult<VectorStoreFileBatch>> GetVectorStoreFileBatchAsync(string vectorStoreId, string batchId, CancellationToken cancellationToken = default);
7013 public virtual CollectionResult<VectorStoreFile> GetVectorStoreFiles(string vectorStoreId, VectorStoreFileCollectionOptions options = null, CancellationToken cancellationToken = default);
7014 public virtual CollectionResult GetVectorStoreFiles(string vectorStoreId, int? limit, string order, string after, string before, string filter, RequestOptions options);
7015 public virtual AsyncCollectionResult<VectorStoreFile> GetVectorStoreFilesAsync(string vectorStoreId, VectorStoreFileCollectionOptions options = null, CancellationToken cancellationToken = default);
7016 public virtual AsyncCollectionResult GetVectorStoreFilesAsync(string vectorStoreId, int? limit, string order, string after, string before, string filter, RequestOptions options);
7017 public virtual CollectionResult<VectorStoreFile> GetVectorStoreFilesInBatch(string vectorStoreId, string batchId, VectorStoreFileCollectionOptions options = null, CancellationToken cancellationToken = default);
7018 public virtual CollectionResult GetVectorStoreFilesInBatch(string vectorStoreId, string batchId, int? limit, string order, string after, string before, string filter, RequestOptions options);
7019 public virtual AsyncCollectionResult<VectorStoreFile> GetVectorStoreFilesInBatchAsync(string vectorStoreId, string batchId, VectorStoreFileCollectionOptions options = null, CancellationToken cancellationToken = default);
7020 public virtual AsyncCollectionResult GetVectorStoreFilesInBatchAsync(string vectorStoreId, string batchId, int? limit, string order, string after, string before, string filter, RequestOptions options);
7021 public virtual CollectionResult<VectorStore> GetVectorStores(VectorStoreCollectionOptions options = null, CancellationToken cancellationToken = default);
7022 public virtual CollectionResult GetVectorStores(int? limit, string order, string after, string before, RequestOptions options);
7023 public virtual AsyncCollectionResult<VectorStore> GetVectorStoresAsync(VectorStoreCollectionOptions options = null, CancellationToken cancellationToken = default);
7024 public virtual AsyncCollectionResult GetVectorStoresAsync(int? limit, string order, string after, string before, RequestOptions options);
7025 public virtual ClientResult<VectorStore> ModifyVectorStore(string vectorStoreId, VectorStoreModificationOptions options, CancellationToken cancellationToken = default);
7026 public virtual ClientResult ModifyVectorStore(string vectorStoreId, BinaryContent content, RequestOptions options = null);
7027 public virtual Task<ClientResult<VectorStore>> ModifyVectorStoreAsync(string vectorStoreId, VectorStoreModificationOptions options, CancellationToken cancellationToken = default);
7028 public virtual Task<ClientResult> ModifyVectorStoreAsync(string vectorStoreId, BinaryContent content, RequestOptions options = null);
7029 public virtual ClientResult RemoveFileFromVectorStore(string vectorStoreId, string fileId, RequestOptions options);
7030 public virtual ClientResult<FileFromStoreRemovalResult> RemoveFileFromVectorStore(string vectorStoreId, string fileId, CancellationToken cancellationToken = default);
7031 public virtual Task<ClientResult> RemoveFileFromVectorStoreAsync(string vectorStoreId, string fileId, RequestOptions options);
7032 public virtual Task<ClientResult<FileFromStoreRemovalResult>> RemoveFileFromVectorStoreAsync(string vectorStoreId, string fileId, CancellationToken cancellationToken = default);
7033 public virtual ClientResult RetrieveVectorStoreFileContent(string vectorStoreId, string fileId, RequestOptions options);
7034 public virtual Task<ClientResult> RetrieveVectorStoreFileContentAsync(string vectorStoreId, string fileId, RequestOptions options);
7035 public virtual ClientResult SearchVectorStore(string vectorStoreId, BinaryContent content, RequestOptions options = null);
7036 public virtual Task<ClientResult> SearchVectorStoreAsync(string vectorStoreId, BinaryContent content, RequestOptions options = null);
7037 public virtual ClientResult UpdateVectorStoreFileAttributes(string vectorStoreId, string fileId, BinaryContent content, RequestOptions options = null);
7038 public virtual ClientResult<VectorStoreFile> UpdateVectorStoreFileAttributes(string vectorStoreId, string fileId, IDictionary<string, BinaryData> attributes, CancellationToken cancellationToken = default);
7039 public virtual Task<ClientResult> UpdateVectorStoreFileAttributesAsync(string vectorStoreId, string fileId, BinaryContent content, RequestOptions options = null);
7040 public virtual Task<ClientResult<VectorStoreFile>> UpdateVectorStoreFileAttributesAsync(string vectorStoreId, string fileId, IDictionary<string, BinaryData> attributes, CancellationToken cancellationToken = default);
7041 }
7042 [Experimental("SCME0002")]
7043 public sealed class VectorStoreClientSettings : ClientSettings {
7044 public OpenAIClientOptions Options { get; set; }
7045 protected override void BindCore(Microsoft.Extensions.Configuration.IConfigurationSection section);
7046 }
7047 [Experimental("OPENAI001")]
7048 public class VectorStoreCollectionOptions : IJsonModel<VectorStoreCollectionOptions>, IPersistableModel<VectorStoreCollectionOptions> {
7049 public string AfterId { get; set; }
7050 public string BeforeId { get; set; }
7051 public VectorStoreCollectionOrder? Order { get; set; }
7052 public int? PageSizeLimit { get; set; }
7053 }
7054 [Experimental("OPENAI001")]
7055 public readonly partial struct VectorStoreCollectionOrder : IEquatable<VectorStoreCollectionOrder> {
7056 public VectorStoreCollectionOrder(string value);
7057 public static VectorStoreCollectionOrder Ascending { get; }
7058 public static VectorStoreCollectionOrder Descending { get; }
7059 public readonly bool Equals(VectorStoreCollectionOrder other);
7060 [EditorBrowsable(EditorBrowsableState.Never)]
7061 public override readonly bool Equals(object obj);
7062 [EditorBrowsable(EditorBrowsableState.Never)]
7063 public override readonly int GetHashCode();
7064 public static bool operator ==(VectorStoreCollectionOrder left, VectorStoreCollectionOrder right);
7065 public static implicit operator VectorStoreCollectionOrder(string value);
7066 public static implicit operator VectorStoreCollectionOrder?(string value);
7067 public static bool operator !=(VectorStoreCollectionOrder left, VectorStoreCollectionOrder right);
7068 public override readonly string ToString();
7069 }
7070 [Experimental("OPENAI001")]
7071 public class VectorStoreCreationOptions : IJsonModel<VectorStoreCreationOptions>, IPersistableModel<VectorStoreCreationOptions> {
7072 public FileChunkingStrategy ChunkingStrategy { get; set; }
7073 public string Description { get; set; }
7074 public VectorStoreExpirationPolicy ExpirationPolicy { get; set; }
7075 public IList<string> FileIds { get; }
7076 public IDictionary<string, string> Metadata { get; }
7077 public string Name { get; set; }
7078 }
7079 [Experimental("OPENAI001")]
7080 public class VectorStoreDeletionResult : IJsonModel<VectorStoreDeletionResult>, IPersistableModel<VectorStoreDeletionResult> {
7081 public bool Deleted { get; }
7082 public string VectorStoreId { get; }
7083 public static explicit operator VectorStoreDeletionResult(ClientResult result);
7084 }
7085 [Experimental("OPENAI001")]
7086 public enum VectorStoreExpirationAnchor {
7087 Unknown = 0,
7088 LastActiveAt = 1
7089 }
7090 [Experimental("OPENAI001")]
7091 public class VectorStoreExpirationPolicy : IJsonModel<VectorStoreExpirationPolicy>, IPersistableModel<VectorStoreExpirationPolicy> {
7092 public VectorStoreExpirationPolicy(VectorStoreExpirationAnchor anchor, int days);
7093 public VectorStoreExpirationAnchor Anchor { get; set; }
7094 public int Days { get; set; }
7095 }
7096 [Experimental("OPENAI001")]
7097 public class VectorStoreFile : IJsonModel<VectorStoreFile>, IPersistableModel<VectorStoreFile> {
7098 public IDictionary<string, BinaryData> Attributes { get; }
7099 public FileChunkingStrategy ChunkingStrategy { get; }
7100 public DateTimeOffset CreatedAt { get; }
7101 public string FileId { get; }
7102 public VectorStoreFileError LastError { get; }
7103 public VectorStoreFileStatus Status { get; }
7104 public long? UsageInBytes { get; }
7105 public string VectorStoreId { get; }
7106 public static explicit operator VectorStoreFile(ClientResult result);
7107 }
7108 [Experimental("OPENAI001")]
7109 public class VectorStoreFileBatch : IJsonModel<VectorStoreFileBatch>, IPersistableModel<VectorStoreFileBatch> {
7110 public string BatchId { get; }
7111 public DateTimeOffset CreatedAt { get; }
7112 public VectorStoreFileCounts FileCounts { get; }
7113 public VectorStoreFileBatchStatus Status { get; }
7114 public string VectorStoreId { get; }
7115 public static explicit operator VectorStoreFileBatch(ClientResult result);
7116 }
7117 [Experimental("OPENAI001")]
7118 public readonly partial struct VectorStoreFileBatchStatus : IEquatable<VectorStoreFileBatchStatus> {
7119 public VectorStoreFileBatchStatus(string value);
7120 public static VectorStoreFileBatchStatus Cancelled { get; }
7121 public static VectorStoreFileBatchStatus Completed { get; }
7122 public static VectorStoreFileBatchStatus Failed { get; }
7123 public static VectorStoreFileBatchStatus InProgress { get; }
7124 public readonly bool Equals(VectorStoreFileBatchStatus other);
7125 [EditorBrowsable(EditorBrowsableState.Never)]
7126 public override readonly bool Equals(object obj);
7127 [EditorBrowsable(EditorBrowsableState.Never)]
7128 public override readonly int GetHashCode();
7129 public static bool operator ==(VectorStoreFileBatchStatus left, VectorStoreFileBatchStatus right);
7130 public static implicit operator VectorStoreFileBatchStatus(string value);
7131 public static implicit operator VectorStoreFileBatchStatus?(string value);
7132 public static bool operator !=(VectorStoreFileBatchStatus left, VectorStoreFileBatchStatus right);
7133 public override readonly string ToString();
7134 }
7135 [Experimental("OPENAI001")]
7136 public class VectorStoreFileCollectionOptions : IJsonModel<VectorStoreFileCollectionOptions>, IPersistableModel<VectorStoreFileCollectionOptions> {
7137 public string AfterId { get; set; }
7138 public string BeforeId { get; set; }
7139 public VectorStoreFileStatusFilter? Filter { get; set; }
7140 public VectorStoreFileCollectionOrder? Order { get; set; }
7141 public int? PageSizeLimit { get; set; }
7142 }
7143 [Experimental("OPENAI001")]
7144 public readonly partial struct VectorStoreFileCollectionOrder : IEquatable<VectorStoreFileCollectionOrder> {
7145 public VectorStoreFileCollectionOrder(string value);
7146 public static VectorStoreFileCollectionOrder Ascending { get; }
7147 public static VectorStoreFileCollectionOrder Descending { get; }
7148 public readonly bool Equals(VectorStoreFileCollectionOrder other);
7149 [EditorBrowsable(EditorBrowsableState.Never)]
7150 public override readonly bool Equals(object obj);
7151 [EditorBrowsable(EditorBrowsableState.Never)]
7152 public override readonly int GetHashCode();
7153 public static bool operator ==(VectorStoreFileCollectionOrder left, VectorStoreFileCollectionOrder right);
7154 public static implicit operator VectorStoreFileCollectionOrder(string value);
7155 public static implicit operator VectorStoreFileCollectionOrder?(string value);
7156 public static bool operator !=(VectorStoreFileCollectionOrder left, VectorStoreFileCollectionOrder right);
7157 public override readonly string ToString();
7158 }
7159 [Experimental("OPENAI001")]
7160 public class VectorStoreFileCounts : IJsonModel<VectorStoreFileCounts>, IPersistableModel<VectorStoreFileCounts> {
7161 public int Cancelled { get; }
7162 public int Completed { get; }
7163 public int Failed { get; }
7164 public int InProgress { get; }
7165 public int Total { get; }
7166 }
7167 [Experimental("OPENAI001")]
7168 public class VectorStoreFileError : IJsonModel<VectorStoreFileError>, IPersistableModel<VectorStoreFileError> {
7169 public VectorStoreFileErrorCode Code { get; }
7170 public string Message { get; }
7171 }
7172 [Experimental("OPENAI001")]
7173 public readonly partial struct VectorStoreFileErrorCode : IEquatable<VectorStoreFileErrorCode> {
7174 public VectorStoreFileErrorCode(string value);
7175 public static VectorStoreFileErrorCode InvalidFile { get; }
7176 public static VectorStoreFileErrorCode ServerError { get; }
7177 public static VectorStoreFileErrorCode UnsupportedFile { get; }
7178 public readonly bool Equals(VectorStoreFileErrorCode other);
7179 [EditorBrowsable(EditorBrowsableState.Never)]
7180 public override readonly bool Equals(object obj);
7181 [EditorBrowsable(EditorBrowsableState.Never)]
7182 public override readonly int GetHashCode();
7183 public static bool operator ==(VectorStoreFileErrorCode left, VectorStoreFileErrorCode right);
7184 public static implicit operator VectorStoreFileErrorCode(string value);
7185 public static implicit operator VectorStoreFileErrorCode?(string value);
7186 public static bool operator !=(VectorStoreFileErrorCode left, VectorStoreFileErrorCode right);
7187 public override readonly string ToString();
7188 }
7189 [Experimental("OPENAI001")]
7190 public enum VectorStoreFileStatus {
7191 Unknown = 0,
7192 InProgress = 1,
7193 Completed = 2,
7194 Cancelled = 3,
7195 Failed = 4
7196 }
7197 [Experimental("OPENAI001")]
7198 public readonly partial struct VectorStoreFileStatusFilter : IEquatable<VectorStoreFileStatusFilter> {
7199 public VectorStoreFileStatusFilter(string value);
7200 public static VectorStoreFileStatusFilter Cancelled { get; }
7201 public static VectorStoreFileStatusFilter Completed { get; }
7202 public static VectorStoreFileStatusFilter Failed { get; }
7203 public static VectorStoreFileStatusFilter InProgress { get; }
7204 public readonly bool Equals(VectorStoreFileStatusFilter other);
7205 [EditorBrowsable(EditorBrowsableState.Never)]
7206 public override readonly bool Equals(object obj);
7207 [EditorBrowsable(EditorBrowsableState.Never)]
7208 public override readonly int GetHashCode();
7209 public static bool operator ==(VectorStoreFileStatusFilter left, VectorStoreFileStatusFilter right);
7210 public static implicit operator VectorStoreFileStatusFilter(string value);
7211 public static implicit operator VectorStoreFileStatusFilter?(string value);
7212 public static bool operator !=(VectorStoreFileStatusFilter left, VectorStoreFileStatusFilter right);
7213 public override readonly string ToString();
7214 }
7215 [Experimental("OPENAI001")]
7216 public class VectorStoreModificationOptions : IJsonModel<VectorStoreModificationOptions>, IPersistableModel<VectorStoreModificationOptions> {
7217 public VectorStoreExpirationPolicy ExpirationPolicy { get; set; }
7218 public IDictionary<string, string> Metadata { get; }
7219 public string Name { get; set; }
7220 }
7221 [Experimental("OPENAI001")]
7222 public enum VectorStoreStatus {
7223 Unknown = 0,
7224 InProgress = 1,
7225 Completed = 2,
7226 Expired = 3
7227 }
7228}
7229namespace OpenAI.Videos {
7230 [Experimental("OPENAI001")]
7231 public class VideoClient {
7232 protected VideoClient();
7233 [Experimental("SCME0002")]
7234 public VideoClient(VideoClientSettings settings);
7235 public VideoClient(ApiKeyCredential credential, OpenAIClientOptions options);
7236 public VideoClient(ApiKeyCredential credential);
7237 public VideoClient(AuthenticationPolicy authenticationPolicy, OpenAIClientOptions options);
7238 public VideoClient(AuthenticationPolicy authenticationPolicy);
7239 protected internal VideoClient(ClientPipeline pipeline, OpenAIClientOptions options);
7240 public VideoClient(string apiKey);
7241 [Experimental("OPENAI001")]
7242 public Uri Endpoint { get; }
7243 public ClientPipeline Pipeline { get; }
7244 public virtual ClientResult CreateVideo(BinaryContent content, string contentType, RequestOptions options = null);
7245 public virtual Task<ClientResult> CreateVideoAsync(BinaryContent content, string contentType, RequestOptions options = null);
7246 public virtual ClientResult CreateVideoRemix(string videoId, BinaryContent content, string contentType, RequestOptions options = null);
7247 public virtual Task<ClientResult> CreateVideoRemixAsync(string videoId, BinaryContent content, string contentType, RequestOptions options = null);
7248 public virtual ClientResult DeleteVideo(string videoId, RequestOptions options = null);
7249 public virtual Task<ClientResult> DeleteVideoAsync(string videoId, RequestOptions options = null);
7250 public virtual ClientResult DownloadVideo(string videoId, string variant = null, RequestOptions options = null);
7251 public virtual Task<ClientResult> DownloadVideoAsync(string videoId, string variant = null, RequestOptions options = null);
7252 public virtual ClientResult GetVideo(string videoId, RequestOptions options = null);
7253 public virtual Task<ClientResult> GetVideoAsync(string videoId, RequestOptions options = null);
7254 public virtual CollectionResult GetVideos(int? limit = null, string order = null, string after = null, RequestOptions options = null);
7255 public virtual AsyncCollectionResult GetVideosAsync(int? limit = null, string order = null, string after = null, RequestOptions options = null);
7256 }
7257 [Experimental("SCME0002")]
7258 public sealed class VideoClientSettings : ClientSettings {
7259 public OpenAIClientOptions Options { get; set; }
7260 protected override void BindCore(Microsoft.Extensions.Configuration.IConfigurationSection section);
7261 }
7262}