openai/openai-dotnet

Public

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

CodeCommitsIssuesPull requestsActionsInsightsSecurity
copilot/debug-disable-auto-recording-issue

Branches

Tags

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

Clone

HTTPS

Download ZIP

api/OpenAI.net8.0.cs

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