openai/openai-dotnet

Public

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

CodeCommitsIssuesPull requestsActionsInsightsSecurity
OpenAI_2.11.0-oidc.test1

Branches

Tags

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

Clone

HTTPS

Download ZIP

api/OpenAI.net10.0.cs

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