openai/openai-dotnet

Public

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

CodeCommitsIssuesPull requestsActionsInsightsSecurity
OpenAI_2.3.0

Branches

Tags

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

Clone

HTTPS

Download ZIP

api/OpenAI.net8.0.cs

5797lines · modecode

1namespace OpenAI {
2 public class OpenAIClient {
3 protected OpenAIClient();
4 public OpenAIClient(ApiKeyCredential credential, OpenAIClientOptions options);
5 public OpenAIClient(ApiKeyCredential credential);
6 [Experimental("OPENAI001")]
7 public OpenAIClient(AuthenticationPolicy authenticationPolicy, OpenAIClientOptions options);
8 [Experimental("OPENAI001")]
9 public OpenAIClient(AuthenticationPolicy authenticationPolicy);
10 protected internal OpenAIClient(ClientPipeline pipeline, OpenAIClientOptions options);
11 public OpenAIClient(string apiKey);
12 public ClientPipeline Pipeline { get; }
13 [Experimental("OPENAI001")]
14 public virtual AssistantClient GetAssistantClient();
15 public virtual AudioClient GetAudioClient(string model);
16 [Experimental("OPENAI001")]
17 public virtual BatchClient GetBatchClient();
18 public virtual ChatClient GetChatClient(string model);
19 [Experimental("OPENAI001")]
20 public virtual ContainerClient GetContainerClient();
21 public virtual EmbeddingClient GetEmbeddingClient(string model);
22 [Experimental("OPENAI001")]
23 public virtual EvaluationClient GetEvaluationClient();
24 [Experimental("OPENAI001")]
25 public virtual FineTuningClient GetFineTuningClient();
26 [Experimental("OPENAI001")]
27 public virtual GraderClient GetGraderClient();
28 public virtual ImageClient GetImageClient(string model);
29 public virtual ModerationClient GetModerationClient(string model);
30 public virtual OpenAIFileClient GetOpenAIFileClient();
31 public virtual OpenAIModelClient GetOpenAIModelClient();
32 [Experimental("OPENAI001")]
33 public virtual OpenAIResponseClient GetOpenAIResponseClient(string model);
34 [Experimental("OPENAI002")]
35 public virtual RealtimeClient GetRealtimeClient();
36 [Experimental("OPENAI001")]
37 public virtual VectorStoreClient GetVectorStoreClient();
38 }
39 public class OpenAIClientOptions : ClientPipelineOptions {
40 public Uri Endpoint { get; set; }
41 public string OrganizationId { get; set; }
42 public string ProjectId { get; set; }
43 public string UserAgentApplicationId { get; set; }
44 }
45 [Experimental("OPENAI001")]
46 public class OpenAIContext : ModelReaderWriterContext {
47 public static OpenAIContext Default { get; }
48 protected override bool TryGetTypeBuilderCore(Type type, out ModelReaderWriterTypeBuilder builder);
49 }
50}
51namespace OpenAI.Assistants {
52 [Experimental("OPENAI001")]
53 public class Assistant : IJsonModel<Assistant>, IPersistableModel<Assistant> {
54 public DateTimeOffset CreatedAt { get; }
55 public string Description { get; }
56 public string Id { get; }
57 public string Instructions { get; }
58 public IReadOnlyDictionary<string, string> Metadata { get; }
59 public string Model { get; }
60 public string Name { get; }
61 public float? NucleusSamplingFactor { get; }
62 public AssistantResponseFormat ResponseFormat { get; }
63 public float? Temperature { get; }
64 public ToolResources ToolResources { get; }
65 public IReadOnlyList<ToolDefinition> Tools { get; }
66 protected virtual Assistant JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
67 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
68 protected virtual Assistant PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
69 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
70 }
71 [Experimental("OPENAI001")]
72 public class AssistantClient {
73 protected AssistantClient();
74 public AssistantClient(ApiKeyCredential credential, OpenAIClientOptions options);
75 public AssistantClient(ApiKeyCredential credential);
76 public AssistantClient(AuthenticationPolicy authenticationPolicy, OpenAIClientOptions options);
77 public AssistantClient(AuthenticationPolicy authenticationPolicy);
78 protected internal AssistantClient(ClientPipeline pipeline, OpenAIClientOptions options);
79 public AssistantClient(string apiKey);
80 public ClientPipeline Pipeline { get; }
81 public virtual ClientResult CancelRun(string threadId, string runId, RequestOptions options);
82 public virtual ClientResult<ThreadRun> CancelRun(string threadId, string runId, CancellationToken cancellationToken = default);
83 public virtual Task<ClientResult> CancelRunAsync(string threadId, string runId, RequestOptions options);
84 public virtual Task<ClientResult<ThreadRun>> CancelRunAsync(string threadId, string runId, CancellationToken cancellationToken = default);
85 public virtual ClientResult CreateAssistant(BinaryContent content, RequestOptions options = null);
86 public virtual ClientResult<Assistant> CreateAssistant(string model, AssistantCreationOptions options = null, CancellationToken cancellationToken = default);
87 public virtual Task<ClientResult> CreateAssistantAsync(BinaryContent content, RequestOptions options = null);
88 public virtual Task<ClientResult<Assistant>> CreateAssistantAsync(string model, AssistantCreationOptions options = null, CancellationToken cancellationToken = default);
89 public virtual ClientResult<ThreadMessage> CreateMessage(string threadId, MessageRole role, IEnumerable<MessageContent> content, MessageCreationOptions options = null, CancellationToken cancellationToken = default);
90 public virtual ClientResult CreateMessage(string threadId, BinaryContent content, RequestOptions options = null);
91 public virtual Task<ClientResult<ThreadMessage>> CreateMessageAsync(string threadId, MessageRole role, IEnumerable<MessageContent> content, MessageCreationOptions options = null, CancellationToken cancellationToken = default);
92 public virtual Task<ClientResult> CreateMessageAsync(string threadId, BinaryContent content, RequestOptions options = null);
93 public virtual ClientResult CreateRun(string threadId, BinaryContent content, RequestOptions options = null);
94 public virtual ClientResult<ThreadRun> CreateRun(string threadId, string assistantId, RunCreationOptions options = null, CancellationToken cancellationToken = default);
95 public virtual Task<ClientResult> CreateRunAsync(string threadId, BinaryContent content, RequestOptions options = null);
96 public virtual Task<ClientResult<ThreadRun>> CreateRunAsync(string threadId, string assistantId, RunCreationOptions options = null, CancellationToken cancellationToken = default);
97 public virtual CollectionResult<StreamingUpdate> CreateRunStreaming(string threadId, string assistantId, RunCreationOptions options = null, CancellationToken cancellationToken = default);
98 public virtual AsyncCollectionResult<StreamingUpdate> CreateRunStreamingAsync(string threadId, string assistantId, RunCreationOptions options = null, CancellationToken cancellationToken = default);
99 public virtual ClientResult<AssistantThread> CreateThread(ThreadCreationOptions options = null, CancellationToken cancellationToken = default);
100 public virtual ClientResult CreateThread(BinaryContent content, RequestOptions options = null);
101 public virtual ClientResult CreateThreadAndRun(BinaryContent content, RequestOptions options = null);
102 public virtual ClientResult<ThreadRun> CreateThreadAndRun(string assistantId, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null, CancellationToken cancellationToken = default);
103 public virtual Task<ClientResult> CreateThreadAndRunAsync(BinaryContent content, RequestOptions options = null);
104 public virtual Task<ClientResult<ThreadRun>> CreateThreadAndRunAsync(string assistantId, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null, CancellationToken cancellationToken = default);
105 public virtual CollectionResult<StreamingUpdate> CreateThreadAndRunStreaming(string assistantId, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null, CancellationToken cancellationToken = default);
106 public virtual AsyncCollectionResult<StreamingUpdate> CreateThreadAndRunStreamingAsync(string assistantId, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null, CancellationToken cancellationToken = default);
107 public virtual Task<ClientResult<AssistantThread>> CreateThreadAsync(ThreadCreationOptions options = null, CancellationToken cancellationToken = default);
108 public virtual Task<ClientResult> CreateThreadAsync(BinaryContent content, RequestOptions options = null);
109 public virtual ClientResult DeleteAssistant(string assistantId, RequestOptions options);
110 public virtual ClientResult<AssistantDeletionResult> DeleteAssistant(string assistantId, CancellationToken cancellationToken = default);
111 public virtual Task<ClientResult> DeleteAssistantAsync(string assistantId, RequestOptions options);
112 public virtual Task<ClientResult<AssistantDeletionResult>> DeleteAssistantAsync(string assistantId, CancellationToken cancellationToken = default);
113 public virtual ClientResult DeleteMessage(string threadId, string messageId, RequestOptions options);
114 public virtual ClientResult<MessageDeletionResult> DeleteMessage(string threadId, string messageId, CancellationToken cancellationToken = default);
115 public virtual Task<ClientResult> DeleteMessageAsync(string threadId, string messageId, RequestOptions options);
116 public virtual Task<ClientResult<MessageDeletionResult>> DeleteMessageAsync(string threadId, string messageId, CancellationToken cancellationToken = default);
117 public virtual ClientResult DeleteThread(string threadId, RequestOptions options);
118 public virtual ClientResult<ThreadDeletionResult> DeleteThread(string threadId, CancellationToken cancellationToken = default);
119 public virtual Task<ClientResult> DeleteThreadAsync(string threadId, RequestOptions options);
120 public virtual Task<ClientResult<ThreadDeletionResult>> DeleteThreadAsync(string threadId, CancellationToken cancellationToken = default);
121 public virtual ClientResult GetAssistant(string assistantId, RequestOptions options);
122 public virtual ClientResult<Assistant> GetAssistant(string assistantId, CancellationToken cancellationToken = default);
123 public virtual Task<ClientResult> GetAssistantAsync(string assistantId, RequestOptions options);
124 public virtual Task<ClientResult<Assistant>> GetAssistantAsync(string assistantId, CancellationToken cancellationToken = default);
125 public virtual CollectionResult<Assistant> GetAssistants(AssistantCollectionOptions options = null, CancellationToken cancellationToken = default);
126 public virtual CollectionResult<Assistant> GetAssistants(ContinuationToken firstPageToken, CancellationToken cancellationToken = default);
127 public virtual CollectionResult GetAssistants(int? limit, string order, string after, string before, RequestOptions options);
128 public virtual AsyncCollectionResult<Assistant> GetAssistantsAsync(AssistantCollectionOptions options = null, CancellationToken cancellationToken = default);
129 public virtual AsyncCollectionResult<Assistant> GetAssistantsAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = default);
130 public virtual AsyncCollectionResult GetAssistantsAsync(int? limit, string order, string after, string before, RequestOptions options);
131 public virtual ClientResult GetMessage(string threadId, string messageId, RequestOptions options);
132 public virtual ClientResult<ThreadMessage> GetMessage(string threadId, string messageId, CancellationToken cancellationToken = default);
133 public virtual Task<ClientResult> GetMessageAsync(string threadId, string messageId, RequestOptions options);
134 public virtual Task<ClientResult<ThreadMessage>> GetMessageAsync(string threadId, string messageId, CancellationToken cancellationToken = default);
135 public virtual CollectionResult<ThreadMessage> GetMessages(ContinuationToken firstPageToken, CancellationToken cancellationToken = default);
136 public virtual CollectionResult<ThreadMessage> GetMessages(string threadId, MessageCollectionOptions options = null, CancellationToken cancellationToken = default);
137 public virtual CollectionResult GetMessages(string threadId, int? limit, string order, string after, string before, RequestOptions options);
138 public virtual AsyncCollectionResult<ThreadMessage> GetMessagesAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = default);
139 public virtual AsyncCollectionResult<ThreadMessage> GetMessagesAsync(string threadId, MessageCollectionOptions options = null, CancellationToken cancellationToken = default);
140 public virtual AsyncCollectionResult GetMessagesAsync(string threadId, int? limit, string order, string after, string before, RequestOptions options);
141 public virtual ClientResult GetRun(string threadId, string runId, RequestOptions options);
142 public virtual ClientResult<ThreadRun> GetRun(string threadId, string runId, CancellationToken cancellationToken = default);
143 public virtual Task<ClientResult> GetRunAsync(string threadId, string runId, RequestOptions options);
144 public virtual Task<ClientResult<ThreadRun>> GetRunAsync(string threadId, string runId, CancellationToken cancellationToken = default);
145 public virtual CollectionResult<ThreadRun> GetRuns(ContinuationToken firstPageToken, CancellationToken cancellationToken = default);
146 public virtual CollectionResult<ThreadRun> GetRuns(string threadId, RunCollectionOptions options = null, CancellationToken cancellationToken = default);
147 public virtual CollectionResult GetRuns(string threadId, int? limit, string order, string after, string before, RequestOptions options);
148 public virtual AsyncCollectionResult<ThreadRun> GetRunsAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = default);
149 public virtual AsyncCollectionResult<ThreadRun> GetRunsAsync(string threadId, RunCollectionOptions options = null, CancellationToken cancellationToken = default);
150 public virtual AsyncCollectionResult GetRunsAsync(string threadId, int? limit, string order, string after, string before, RequestOptions options);
151 public virtual ClientResult GetRunStep(string threadId, string runId, string stepId, RequestOptions options);
152 public virtual ClientResult<RunStep> GetRunStep(string threadId, string runId, string stepId, CancellationToken cancellationToken = default);
153 public virtual Task<ClientResult> GetRunStepAsync(string threadId, string runId, string stepId, RequestOptions options);
154 public virtual Task<ClientResult<RunStep>> GetRunStepAsync(string threadId, string runId, string stepId, CancellationToken cancellationToken = default);
155 public virtual CollectionResult<RunStep> GetRunSteps(ContinuationToken firstPageToken, CancellationToken cancellationToken = default);
156 public virtual CollectionResult<RunStep> GetRunSteps(string threadId, string runId, RunStepCollectionOptions options = null, CancellationToken cancellationToken = default);
157 public virtual CollectionResult GetRunSteps(string threadId, string runId, int? limit, string order, string after, string before, RequestOptions options);
158 public virtual AsyncCollectionResult<RunStep> GetRunStepsAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = default);
159 public virtual AsyncCollectionResult<RunStep> GetRunStepsAsync(string threadId, string runId, RunStepCollectionOptions options = null, CancellationToken cancellationToken = default);
160 public virtual AsyncCollectionResult GetRunStepsAsync(string threadId, string runId, int? limit, string order, string after, string before, RequestOptions options);
161 public virtual ClientResult GetThread(string threadId, RequestOptions options);
162 public virtual ClientResult<AssistantThread> GetThread(string threadId, CancellationToken cancellationToken = default);
163 public virtual Task<ClientResult> GetThreadAsync(string threadId, RequestOptions options);
164 public virtual Task<ClientResult<AssistantThread>> GetThreadAsync(string threadId, CancellationToken cancellationToken = default);
165 public virtual ClientResult<Assistant> ModifyAssistant(string assistantId, AssistantModificationOptions options, CancellationToken cancellationToken = default);
166 public virtual ClientResult ModifyAssistant(string assistantId, BinaryContent content, RequestOptions options = null);
167 public virtual Task<ClientResult<Assistant>> ModifyAssistantAsync(string assistantId, AssistantModificationOptions options, CancellationToken cancellationToken = default);
168 public virtual Task<ClientResult> ModifyAssistantAsync(string assistantId, BinaryContent content, RequestOptions options = null);
169 public virtual ClientResult<ThreadMessage> ModifyMessage(string threadId, string messageId, MessageModificationOptions options, CancellationToken cancellationToken = default);
170 public virtual ClientResult ModifyMessage(string threadId, string messageId, BinaryContent content, RequestOptions options = null);
171 public virtual Task<ClientResult<ThreadMessage>> ModifyMessageAsync(string threadId, string messageId, MessageModificationOptions options, CancellationToken cancellationToken = default);
172 public virtual Task<ClientResult> ModifyMessageAsync(string threadId, string messageId, BinaryContent content, RequestOptions options = null);
173 public virtual ClientResult ModifyRun(string threadId, string runId, BinaryContent content, RequestOptions options = null);
174 public virtual Task<ClientResult> ModifyRunAsync(string threadId, string runId, BinaryContent content, RequestOptions options = null);
175 public virtual ClientResult<AssistantThread> ModifyThread(string threadId, ThreadModificationOptions options, CancellationToken cancellationToken = default);
176 public virtual ClientResult ModifyThread(string threadId, BinaryContent content, RequestOptions options = null);
177 public virtual Task<ClientResult<AssistantThread>> ModifyThreadAsync(string threadId, ThreadModificationOptions options, CancellationToken cancellationToken = default);
178 public virtual Task<ClientResult> ModifyThreadAsync(string threadId, BinaryContent content, RequestOptions options = null);
179 public virtual ClientResult SubmitToolOutputsToRun(string threadId, string runId, BinaryContent content, RequestOptions options = null);
180 public virtual ClientResult<ThreadRun> SubmitToolOutputsToRun(string threadId, string runId, IEnumerable<ToolOutput> toolOutputs, CancellationToken cancellationToken = default);
181 public virtual Task<ClientResult> SubmitToolOutputsToRunAsync(string threadId, string runId, BinaryContent content, RequestOptions options = null);
182 public virtual Task<ClientResult<ThreadRun>> SubmitToolOutputsToRunAsync(string threadId, string runId, IEnumerable<ToolOutput> toolOutputs, CancellationToken cancellationToken = default);
183 public virtual CollectionResult<StreamingUpdate> SubmitToolOutputsToRunStreaming(string threadId, string runId, IEnumerable<ToolOutput> toolOutputs, CancellationToken cancellationToken = default);
184 public virtual AsyncCollectionResult<StreamingUpdate> SubmitToolOutputsToRunStreamingAsync(string threadId, string runId, IEnumerable<ToolOutput> toolOutputs, CancellationToken cancellationToken = default);
185 }
186 [Experimental("OPENAI001")]
187 public class AssistantCollectionOptions {
188 public string AfterId { get; set; }
189 public string BeforeId { get; set; }
190 public AssistantCollectionOrder? Order { get; set; }
191 public int? PageSizeLimit { get; set; }
192 }
193 [Experimental("OPENAI001")]
194 public readonly partial struct AssistantCollectionOrder : IEquatable<AssistantCollectionOrder> {
195 public AssistantCollectionOrder(string value);
196 public static AssistantCollectionOrder Ascending { get; }
197 public static AssistantCollectionOrder Descending { get; }
198 public readonly bool Equals(AssistantCollectionOrder other);
199 [EditorBrowsable(EditorBrowsableState.Never)]
200 public override readonly bool Equals(object obj);
201 [EditorBrowsable(EditorBrowsableState.Never)]
202 public override readonly int GetHashCode();
203 public static bool operator ==(AssistantCollectionOrder left, AssistantCollectionOrder right);
204 public static implicit operator AssistantCollectionOrder(string value);
205 public static bool operator !=(AssistantCollectionOrder left, AssistantCollectionOrder right);
206 public override readonly string ToString();
207 }
208 [Experimental("OPENAI001")]
209 public class AssistantCreationOptions : IJsonModel<AssistantCreationOptions>, IPersistableModel<AssistantCreationOptions> {
210 public string Description { get; set; }
211 public string Instructions { get; set; }
212 public IDictionary<string, string> Metadata { get; }
213 public string Name { get; set; }
214 public float? NucleusSamplingFactor { get; set; }
215 public AssistantResponseFormat ResponseFormat { get; set; }
216 public float? Temperature { get; set; }
217 public ToolResources ToolResources { get; set; }
218 public IList<ToolDefinition> Tools { get; }
219 protected virtual AssistantCreationOptions JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
220 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
221 protected virtual AssistantCreationOptions PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
222 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
223 }
224 [Experimental("OPENAI001")]
225 public class AssistantDeletionResult : IJsonModel<AssistantDeletionResult>, IPersistableModel<AssistantDeletionResult> {
226 public string AssistantId { get; }
227 public bool Deleted { get; }
228 protected virtual AssistantDeletionResult JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
229 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
230 protected virtual AssistantDeletionResult PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
231 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
232 }
233 [Experimental("OPENAI001")]
234 public class AssistantModificationOptions : IJsonModel<AssistantModificationOptions>, IPersistableModel<AssistantModificationOptions> {
235 public IList<ToolDefinition> DefaultTools { get; }
236 public string Description { get; set; }
237 public string Instructions { get; set; }
238 public IDictionary<string, string> Metadata { get; }
239 public string Model { get; set; }
240 public string Name { get; set; }
241 public float? NucleusSamplingFactor { get; set; }
242 public AssistantResponseFormat ResponseFormat { get; set; }
243 public float? Temperature { get; set; }
244 public ToolResources ToolResources { get; set; }
245 protected virtual AssistantModificationOptions JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
246 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
247 protected virtual AssistantModificationOptions PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
248 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
249 }
250 [Experimental("OPENAI001")]
251 public class AssistantResponseFormat : IEquatable<AssistantResponseFormat>, IEquatable<string>, IJsonModel<AssistantResponseFormat>, IPersistableModel<AssistantResponseFormat> {
252 public static AssistantResponseFormat Auto { get; }
253 public static AssistantResponseFormat JsonObject { get; }
254 public static AssistantResponseFormat Text { get; }
255 public static AssistantResponseFormat CreateAutoFormat();
256 public static AssistantResponseFormat CreateJsonObjectFormat();
257 public static AssistantResponseFormat CreateJsonSchemaFormat(string name, BinaryData jsonSchema, string description = null, bool? strictSchemaEnabled = null);
258 public static AssistantResponseFormat CreateTextFormat();
259 [EditorBrowsable(EditorBrowsableState.Never)]
260 public override bool Equals(object obj);
261 [EditorBrowsable(EditorBrowsableState.Never)]
262 public override int GetHashCode();
263 protected virtual AssistantResponseFormat JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
264 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
265 [EditorBrowsable(EditorBrowsableState.Never)]
266 public static bool operator ==(AssistantResponseFormat first, AssistantResponseFormat second);
267 [EditorBrowsable(EditorBrowsableState.Never)]
268 public static implicit operator AssistantResponseFormat(string plainTextFormat);
269 [EditorBrowsable(EditorBrowsableState.Never)]
270 public static bool operator !=(AssistantResponseFormat first, AssistantResponseFormat second);
271 protected virtual AssistantResponseFormat PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
272 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
273 [EditorBrowsable(EditorBrowsableState.Never)]
274 bool IEquatable<AssistantResponseFormat>.Equals(AssistantResponseFormat other);
275 [EditorBrowsable(EditorBrowsableState.Never)]
276 bool IEquatable<string>.Equals(string other);
277 public override string ToString();
278 }
279 [Experimental("OPENAI001")]
280 public class AssistantThread : IJsonModel<AssistantThread>, IPersistableModel<AssistantThread> {
281 public DateTimeOffset CreatedAt { get; }
282 public string Id { get; }
283 public IReadOnlyDictionary<string, string> Metadata { get; }
284 public ToolResources ToolResources { get; }
285 protected virtual AssistantThread JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
286 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
287 protected virtual AssistantThread PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
288 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
289 }
290 [Experimental("OPENAI001")]
291 public class CodeInterpreterToolDefinition : ToolDefinition, IJsonModel<CodeInterpreterToolDefinition>, IPersistableModel<CodeInterpreterToolDefinition> {
292 public CodeInterpreterToolDefinition();
293 protected override ToolDefinition JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
294 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
295 protected override ToolDefinition PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
296 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
297 }
298 [Experimental("OPENAI001")]
299 public class CodeInterpreterToolResources : IJsonModel<CodeInterpreterToolResources>, IPersistableModel<CodeInterpreterToolResources> {
300 public IList<string> FileIds { get; }
301 protected virtual CodeInterpreterToolResources JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
302 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
303 protected virtual CodeInterpreterToolResources PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
304 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
305 }
306 [Experimental("OPENAI001")]
307 public readonly partial struct FileSearchRanker : IEquatable<FileSearchRanker> {
308 public FileSearchRanker(string value);
309 public static FileSearchRanker Auto { get; }
310 public static FileSearchRanker Default20240821 { get; }
311 public readonly bool Equals(FileSearchRanker other);
312 [EditorBrowsable(EditorBrowsableState.Never)]
313 public override readonly bool Equals(object obj);
314 [EditorBrowsable(EditorBrowsableState.Never)]
315 public override readonly int GetHashCode();
316 public static bool operator ==(FileSearchRanker left, FileSearchRanker right);
317 public static implicit operator FileSearchRanker(string value);
318 public static bool operator !=(FileSearchRanker left, FileSearchRanker right);
319 public override readonly string ToString();
320 }
321 [Experimental("OPENAI001")]
322 public class FileSearchRankingOptions : IJsonModel<FileSearchRankingOptions>, IPersistableModel<FileSearchRankingOptions> {
323 public FileSearchRankingOptions(float scoreThreshold);
324 public FileSearchRanker? Ranker { get; set; }
325 public float ScoreThreshold { get; set; }
326 protected virtual FileSearchRankingOptions JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
327 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
328 protected virtual FileSearchRankingOptions PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
329 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
330 }
331 [Experimental("OPENAI001")]
332 public class FileSearchToolDefinition : ToolDefinition, IJsonModel<FileSearchToolDefinition>, IPersistableModel<FileSearchToolDefinition> {
333 public FileSearchToolDefinition();
334 public int? MaxResults { get; set; }
335 public FileSearchRankingOptions RankingOptions { get; set; }
336 protected override ToolDefinition JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
337 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
338 protected override ToolDefinition PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
339 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
340 }
341 [Experimental("OPENAI001")]
342 public class FileSearchToolResources : IJsonModel<FileSearchToolResources>, IPersistableModel<FileSearchToolResources> {
343 public IList<VectorStoreCreationHelper> NewVectorStores { get; }
344 public IList<string> VectorStoreIds { get; }
345 protected virtual FileSearchToolResources JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
346 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
347 protected virtual FileSearchToolResources PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
348 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
349 }
350 [Experimental("OPENAI001")]
351 public class FunctionToolDefinition : ToolDefinition, IJsonModel<FunctionToolDefinition>, IPersistableModel<FunctionToolDefinition> {
352 public FunctionToolDefinition();
353 public FunctionToolDefinition(string name);
354 public string Description { get; set; }
355 public string FunctionName { get; set; }
356 public BinaryData Parameters { get; set; }
357 public bool? StrictParameterSchemaEnabled { get; set; }
358 protected override ToolDefinition JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
359 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
360 protected override ToolDefinition PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
361 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
362 }
363 [Experimental("OPENAI001")]
364 public class MessageCollectionOptions {
365 public string AfterId { get; set; }
366 public string BeforeId { get; set; }
367 public MessageCollectionOrder? Order { get; set; }
368 public int? PageSizeLimit { get; set; }
369 }
370 [Experimental("OPENAI001")]
371 public readonly partial struct MessageCollectionOrder : IEquatable<MessageCollectionOrder> {
372 public MessageCollectionOrder(string value);
373 public static MessageCollectionOrder Ascending { get; }
374 public static MessageCollectionOrder Descending { get; }
375 public readonly bool Equals(MessageCollectionOrder other);
376 [EditorBrowsable(EditorBrowsableState.Never)]
377 public override readonly bool Equals(object obj);
378 [EditorBrowsable(EditorBrowsableState.Never)]
379 public override readonly int GetHashCode();
380 public static bool operator ==(MessageCollectionOrder left, MessageCollectionOrder right);
381 public static implicit operator MessageCollectionOrder(string value);
382 public static bool operator !=(MessageCollectionOrder left, MessageCollectionOrder right);
383 public override readonly string ToString();
384 }
385 [Experimental("OPENAI001")]
386 public abstract class MessageContent : IJsonModel<MessageContent>, IPersistableModel<MessageContent> {
387 public MessageImageDetail? ImageDetail { get; }
388 public string ImageFileId { get; }
389 public Uri ImageUri { get; }
390 public string Refusal { get; }
391 public string Text { get; }
392 public IReadOnlyList<TextAnnotation> TextAnnotations { get; }
393 public static MessageContent FromImageFileId(string imageFileId, MessageImageDetail? detail = null);
394 public static MessageContent FromImageUri(Uri imageUri, MessageImageDetail? detail = null);
395 public static MessageContent FromText(string text);
396 protected virtual MessageContent JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
397 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
398 public static implicit operator MessageContent(string value);
399 protected virtual MessageContent PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
400 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
401 }
402 [Experimental("OPENAI001")]
403 public class MessageContentUpdate : StreamingUpdate {
404 public MessageImageDetail? ImageDetail { get; }
405 public string ImageFileId { get; }
406 public string MessageId { get; }
407 public int MessageIndex { get; }
408 public string RefusalUpdate { get; }
409 public MessageRole? Role { get; }
410 public string Text { get; }
411 public TextAnnotationUpdate TextAnnotation { get; }
412 }
413 [Experimental("OPENAI001")]
414 public class MessageCreationAttachment : IJsonModel<MessageCreationAttachment>, IPersistableModel<MessageCreationAttachment> {
415 public MessageCreationAttachment(string fileId, IEnumerable<ToolDefinition> tools);
416 public string FileId { get; }
417 public IReadOnlyList<ToolDefinition> Tools { get; }
418 protected virtual MessageCreationAttachment JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
419 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
420 protected virtual MessageCreationAttachment PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
421 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
422 }
423 [Experimental("OPENAI001")]
424 public class MessageCreationOptions : IJsonModel<MessageCreationOptions>, IPersistableModel<MessageCreationOptions> {
425 public IList<MessageCreationAttachment> Attachments { get; set; }
426 public IDictionary<string, string> Metadata { get; }
427 protected virtual MessageCreationOptions JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
428 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
429 protected virtual MessageCreationOptions PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
430 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
431 }
432 [Experimental("OPENAI001")]
433 public class MessageDeletionResult : IJsonModel<MessageDeletionResult>, IPersistableModel<MessageDeletionResult> {
434 public bool Deleted { get; }
435 public string MessageId { get; }
436 protected virtual MessageDeletionResult JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
437 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
438 protected virtual MessageDeletionResult PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
439 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
440 }
441 [Experimental("OPENAI001")]
442 public class MessageFailureDetails : IJsonModel<MessageFailureDetails>, IPersistableModel<MessageFailureDetails> {
443 public MessageFailureReason Reason { get; }
444 protected virtual MessageFailureDetails JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
445 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
446 protected virtual MessageFailureDetails PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
447 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
448 }
449 [Experimental("OPENAI001")]
450 public readonly partial struct MessageFailureReason : IEquatable<MessageFailureReason> {
451 public MessageFailureReason(string value);
452 public static MessageFailureReason ContentFilter { get; }
453 public static MessageFailureReason MaxTokens { get; }
454 public static MessageFailureReason RunCancelled { get; }
455 public static MessageFailureReason RunExpired { get; }
456 public static MessageFailureReason RunFailed { get; }
457 public readonly bool Equals(MessageFailureReason other);
458 [EditorBrowsable(EditorBrowsableState.Never)]
459 public override readonly bool Equals(object obj);
460 [EditorBrowsable(EditorBrowsableState.Never)]
461 public override readonly int GetHashCode();
462 public static bool operator ==(MessageFailureReason left, MessageFailureReason right);
463 public static implicit operator MessageFailureReason(string value);
464 public static bool operator !=(MessageFailureReason left, MessageFailureReason right);
465 public override readonly string ToString();
466 }
467 [Experimental("OPENAI001")]
468 public enum MessageImageDetail {
469 Auto = 0,
470 Low = 1,
471 High = 2
472 }
473 [Experimental("OPENAI001")]
474 public class MessageModificationOptions : IJsonModel<MessageModificationOptions>, IPersistableModel<MessageModificationOptions> {
475 public IDictionary<string, string> Metadata { get; }
476 protected virtual MessageModificationOptions JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
477 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
478 protected virtual MessageModificationOptions PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
479 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
480 }
481 [Experimental("OPENAI001")]
482 public enum MessageRole {
483 User = 0,
484 Assistant = 1
485 }
486 [Experimental("OPENAI001")]
487 public readonly partial struct MessageStatus : IEquatable<MessageStatus> {
488 public MessageStatus(string value);
489 public static MessageStatus Completed { get; }
490 public static MessageStatus Incomplete { get; }
491 public static MessageStatus InProgress { get; }
492 public readonly bool Equals(MessageStatus other);
493 [EditorBrowsable(EditorBrowsableState.Never)]
494 public override readonly bool Equals(object obj);
495 [EditorBrowsable(EditorBrowsableState.Never)]
496 public override readonly int GetHashCode();
497 public static bool operator ==(MessageStatus left, MessageStatus right);
498 public static implicit operator MessageStatus(string value);
499 public static bool operator !=(MessageStatus left, MessageStatus right);
500 public override readonly string ToString();
501 }
502 [Experimental("OPENAI001")]
503 public class MessageStatusUpdate : StreamingUpdate<ThreadMessage> {
504 }
505 [Experimental("OPENAI001")]
506 public abstract class RequiredAction {
507 public string FunctionArguments { get; }
508 public string FunctionName { get; }
509 public string ToolCallId { get; }
510 }
511 [Experimental("OPENAI001")]
512 public class RequiredActionUpdate : RunUpdate {
513 public string FunctionArguments { get; }
514 public string FunctionName { get; }
515 public string ToolCallId { get; }
516 public ThreadRun GetThreadRun();
517 }
518 [Experimental("OPENAI001")]
519 public class RunCollectionOptions {
520 public string AfterId { get; set; }
521 public string BeforeId { get; set; }
522 public RunCollectionOrder? Order { get; set; }
523 public int? PageSizeLimit { get; set; }
524 }
525 [Experimental("OPENAI001")]
526 public readonly partial struct RunCollectionOrder : IEquatable<RunCollectionOrder> {
527 public RunCollectionOrder(string value);
528 public static RunCollectionOrder Ascending { get; }
529 public static RunCollectionOrder Descending { get; }
530 public readonly bool Equals(RunCollectionOrder other);
531 [EditorBrowsable(EditorBrowsableState.Never)]
532 public override readonly bool Equals(object obj);
533 [EditorBrowsable(EditorBrowsableState.Never)]
534 public override readonly int GetHashCode();
535 public static bool operator ==(RunCollectionOrder left, RunCollectionOrder right);
536 public static implicit operator RunCollectionOrder(string value);
537 public static bool operator !=(RunCollectionOrder left, RunCollectionOrder right);
538 public override readonly string ToString();
539 }
540 [Experimental("OPENAI001")]
541 public class RunCreationOptions : IJsonModel<RunCreationOptions>, IPersistableModel<RunCreationOptions> {
542 public string AdditionalInstructions { get; set; }
543 public IList<ThreadInitializationMessage> AdditionalMessages { get; }
544 public bool? AllowParallelToolCalls { get; set; }
545 public string InstructionsOverride { get; set; }
546 public int? MaxInputTokenCount { get; set; }
547 public int? MaxOutputTokenCount { get; set; }
548 public IDictionary<string, string> Metadata { get; }
549 public string ModelOverride { get; set; }
550 public float? NucleusSamplingFactor { get; set; }
551 public AssistantResponseFormat ResponseFormat { get; set; }
552 public float? Temperature { get; set; }
553 public ToolConstraint ToolConstraint { get; set; }
554 public IList<ToolDefinition> ToolsOverride { get; }
555 public RunTruncationStrategy TruncationStrategy { get; set; }
556 protected virtual RunCreationOptions JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
557 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
558 protected virtual RunCreationOptions PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
559 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
560 }
561 [Experimental("OPENAI001")]
562 public class RunError : IJsonModel<RunError>, IPersistableModel<RunError> {
563 public RunErrorCode Code { get; }
564 public string Message { get; }
565 protected virtual RunError JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
566 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
567 protected virtual RunError PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
568 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
569 }
570 [Experimental("OPENAI001")]
571 public readonly partial struct RunErrorCode : IEquatable<RunErrorCode> {
572 public RunErrorCode(string value);
573 public static RunErrorCode InvalidPrompt { get; }
574 public static RunErrorCode RateLimitExceeded { get; }
575 public static RunErrorCode ServerError { get; }
576 public readonly bool Equals(RunErrorCode other);
577 [EditorBrowsable(EditorBrowsableState.Never)]
578 public override readonly bool Equals(object obj);
579 [EditorBrowsable(EditorBrowsableState.Never)]
580 public override readonly int GetHashCode();
581 public static bool operator ==(RunErrorCode left, RunErrorCode right);
582 public static implicit operator RunErrorCode(string value);
583 public static bool operator !=(RunErrorCode left, RunErrorCode right);
584 public override readonly string ToString();
585 }
586 [Experimental("OPENAI001")]
587 public class RunIncompleteDetails : IJsonModel<RunIncompleteDetails>, IPersistableModel<RunIncompleteDetails> {
588 public RunIncompleteReason? Reason { get; }
589 protected virtual RunIncompleteDetails JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
590 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
591 protected virtual RunIncompleteDetails PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
592 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
593 }
594 [Experimental("OPENAI001")]
595 public readonly partial struct RunIncompleteReason : IEquatable<RunIncompleteReason> {
596 public RunIncompleteReason(string value);
597 public static RunIncompleteReason MaxInputTokenCount { get; }
598 public static RunIncompleteReason MaxOutputTokenCount { get; }
599 public readonly bool Equals(RunIncompleteReason other);
600 [EditorBrowsable(EditorBrowsableState.Never)]
601 public override readonly bool Equals(object obj);
602 [EditorBrowsable(EditorBrowsableState.Never)]
603 public override readonly int GetHashCode();
604 public static bool operator ==(RunIncompleteReason left, RunIncompleteReason right);
605 public static implicit operator RunIncompleteReason(string value);
606 public static bool operator !=(RunIncompleteReason left, RunIncompleteReason right);
607 public override readonly string ToString();
608 }
609 [Experimental("OPENAI001")]
610 public class RunModificationOptions : IJsonModel<RunModificationOptions>, IPersistableModel<RunModificationOptions> {
611 public IDictionary<string, string> Metadata { get; }
612 protected virtual RunModificationOptions JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
613 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
614 protected virtual RunModificationOptions PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
615 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
616 }
617 [Experimental("OPENAI001")]
618 public readonly partial struct RunStatus : IEquatable<RunStatus> {
619 public RunStatus(string value);
620 public static RunStatus Cancelled { get; }
621 public static RunStatus Cancelling { get; }
622 public static RunStatus Completed { get; }
623 public static RunStatus Expired { get; }
624 public static RunStatus Failed { get; }
625 public static RunStatus Incomplete { get; }
626 public static RunStatus InProgress { get; }
627 public bool IsTerminal { get; }
628 public static RunStatus Queued { get; }
629 public static RunStatus RequiresAction { get; }
630 public readonly bool Equals(RunStatus other);
631 [EditorBrowsable(EditorBrowsableState.Never)]
632 public override readonly bool Equals(object obj);
633 [EditorBrowsable(EditorBrowsableState.Never)]
634 public override readonly int GetHashCode();
635 public static bool operator ==(RunStatus left, RunStatus right);
636 public static implicit operator RunStatus(string value);
637 public static bool operator !=(RunStatus left, RunStatus right);
638 public override readonly string ToString();
639 }
640 [Experimental("OPENAI001")]
641 public class RunStep : IJsonModel<RunStep>, IPersistableModel<RunStep> {
642 public string AssistantId { get; }
643 public DateTimeOffset? CancelledAt { get; }
644 public DateTimeOffset? CompletedAt { get; }
645 public DateTimeOffset CreatedAt { get; }
646 public RunStepDetails Details { get; }
647 public DateTimeOffset? ExpiredAt { get; }
648 public DateTimeOffset? FailedAt { get; }
649 public string Id { get; }
650 public RunStepKind Kind { get; }
651 public RunStepError LastError { get; }
652 public IReadOnlyDictionary<string, string> Metadata { get; }
653 public string RunId { get; }
654 public RunStepStatus Status { get; }
655 public string ThreadId { get; }
656 public RunStepTokenUsage Usage { get; }
657 protected virtual RunStep JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
658 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
659 protected virtual RunStep PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
660 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
661 }
662 [Experimental("OPENAI001")]
663 public abstract class RunStepCodeInterpreterOutput : IJsonModel<RunStepCodeInterpreterOutput>, IPersistableModel<RunStepCodeInterpreterOutput> {
664 public string ImageFileId { get; }
665 public string Logs { get; }
666 protected virtual RunStepCodeInterpreterOutput JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
667 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
668 protected virtual RunStepCodeInterpreterOutput PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
669 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
670 }
671 [Experimental("OPENAI001")]
672 public class RunStepCollectionOptions {
673 public string AfterId { get; set; }
674 public string BeforeId { get; set; }
675 public RunStepCollectionOrder? Order { get; set; }
676 public int? PageSizeLimit { get; set; }
677 }
678 [Experimental("OPENAI001")]
679 public readonly partial struct RunStepCollectionOrder : IEquatable<RunStepCollectionOrder> {
680 public RunStepCollectionOrder(string value);
681 public static RunStepCollectionOrder Ascending { get; }
682 public static RunStepCollectionOrder Descending { get; }
683 public readonly bool Equals(RunStepCollectionOrder other);
684 [EditorBrowsable(EditorBrowsableState.Never)]
685 public override readonly bool Equals(object obj);
686 [EditorBrowsable(EditorBrowsableState.Never)]
687 public override readonly int GetHashCode();
688 public static bool operator ==(RunStepCollectionOrder left, RunStepCollectionOrder right);
689 public static implicit operator RunStepCollectionOrder(string value);
690 public static bool operator !=(RunStepCollectionOrder left, RunStepCollectionOrder right);
691 public override readonly string ToString();
692 }
693 [Experimental("OPENAI001")]
694 public abstract class RunStepDetails : IJsonModel<RunStepDetails>, IPersistableModel<RunStepDetails> {
695 public string CreatedMessageId { get; }
696 public IReadOnlyList<RunStepToolCall> ToolCalls { get; }
697 protected virtual RunStepDetails JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
698 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
699 protected virtual RunStepDetails PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
700 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
701 }
702 [Experimental("OPENAI001")]
703 public class RunStepDetailsUpdate : StreamingUpdate {
704 public string CodeInterpreterInput { get; }
705 public IReadOnlyList<RunStepUpdateCodeInterpreterOutput> CodeInterpreterOutputs { get; }
706 public string CreatedMessageId { get; }
707 public FileSearchRankingOptions FileSearchRankingOptions { get; }
708 public IReadOnlyList<RunStepFileSearchResult> FileSearchResults { get; }
709 public string FunctionArguments { get; }
710 public string FunctionName { get; }
711 public string FunctionOutput { get; }
712 public string StepId { get; }
713 public string ToolCallId { get; }
714 public int? ToolCallIndex { get; }
715 }
716 [Experimental("OPENAI001")]
717 public class RunStepError : IJsonModel<RunStepError>, IPersistableModel<RunStepError> {
718 public RunStepErrorCode Code { get; }
719 public string Message { get; }
720 protected virtual RunStepError JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
721 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
722 protected virtual RunStepError PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
723 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
724 }
725 [Experimental("OPENAI001")]
726 public readonly partial struct RunStepErrorCode : IEquatable<RunStepErrorCode> {
727 public RunStepErrorCode(string value);
728 public static RunStepErrorCode RateLimitExceeded { get; }
729 public static RunStepErrorCode ServerError { get; }
730 public readonly bool Equals(RunStepErrorCode other);
731 [EditorBrowsable(EditorBrowsableState.Never)]
732 public override readonly bool Equals(object obj);
733 [EditorBrowsable(EditorBrowsableState.Never)]
734 public override readonly int GetHashCode();
735 public static bool operator ==(RunStepErrorCode left, RunStepErrorCode right);
736 public static implicit operator RunStepErrorCode(string value);
737 public static bool operator !=(RunStepErrorCode left, RunStepErrorCode right);
738 public override readonly string ToString();
739 }
740 [Experimental("OPENAI001")]
741 public class RunStepFileSearchResult : IJsonModel<RunStepFileSearchResult>, IPersistableModel<RunStepFileSearchResult> {
742 public IReadOnlyList<RunStepFileSearchResultContent> Content { get; }
743 public string FileId { get; }
744 public string FileName { get; }
745 public float Score { get; }
746 protected virtual RunStepFileSearchResult JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
747 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
748 protected virtual RunStepFileSearchResult PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
749 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
750 }
751 [Experimental("OPENAI001")]
752 public class RunStepFileSearchResultContent : IJsonModel<RunStepFileSearchResultContent>, IPersistableModel<RunStepFileSearchResultContent> {
753 public RunStepFileSearchResultContentKind Kind { get; }
754 public string Text { get; }
755 protected virtual RunStepFileSearchResultContent JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
756 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
757 protected virtual RunStepFileSearchResultContent PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
758 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
759 }
760 [Experimental("OPENAI001")]
761 public enum RunStepFileSearchResultContentKind {
762 Text = 0
763 }
764 [Experimental("OPENAI001")]
765 public enum RunStepKind {
766 CreatedMessage = 0,
767 ToolCall = 1
768 }
769 [Experimental("OPENAI001")]
770 public readonly partial struct RunStepStatus : IEquatable<RunStepStatus> {
771 public RunStepStatus(string value);
772 public static RunStepStatus Cancelled { get; }
773 public static RunStepStatus Completed { get; }
774 public static RunStepStatus Expired { get; }
775 public static RunStepStatus Failed { get; }
776 public static RunStepStatus InProgress { get; }
777 public readonly bool Equals(RunStepStatus other);
778 [EditorBrowsable(EditorBrowsableState.Never)]
779 public override readonly bool Equals(object obj);
780 [EditorBrowsable(EditorBrowsableState.Never)]
781 public override readonly int GetHashCode();
782 public static bool operator ==(RunStepStatus left, RunStepStatus right);
783 public static implicit operator RunStepStatus(string value);
784 public static bool operator !=(RunStepStatus left, RunStepStatus right);
785 public override readonly string ToString();
786 }
787 [Experimental("OPENAI001")]
788 public class RunStepTokenUsage : IJsonModel<RunStepTokenUsage>, IPersistableModel<RunStepTokenUsage> {
789 public int InputTokenCount { get; }
790 public int OutputTokenCount { get; }
791 public int TotalTokenCount { get; }
792 protected virtual RunStepTokenUsage JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
793 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
794 protected virtual RunStepTokenUsage PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
795 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
796 }
797 [Experimental("OPENAI001")]
798 public class RunStepToolCall : IJsonModel<RunStepToolCall>, IPersistableModel<RunStepToolCall> {
799 public string CodeInterpreterInput { get; }
800 public IReadOnlyList<RunStepCodeInterpreterOutput> CodeInterpreterOutputs { get; }
801 public FileSearchRankingOptions FileSearchRankingOptions { get; }
802 public IReadOnlyList<RunStepFileSearchResult> FileSearchResults { get; }
803 public string FunctionArguments { get; }
804 public string FunctionName { get; }
805 public string FunctionOutput { get; }
806 public string Id { get; }
807 public RunStepToolCallKind Kind { get; }
808 protected virtual RunStepToolCall JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
809 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
810 protected virtual RunStepToolCall PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
811 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
812 }
813 [Experimental("OPENAI001")]
814 public enum RunStepToolCallKind {
815 CodeInterpreter = 0,
816 FileSearch = 1,
817 Function = 2
818 }
819 [Experimental("OPENAI001")]
820 public class RunStepUpdate : StreamingUpdate<RunStep> {
821 }
822 [Experimental("OPENAI001")]
823 public class RunStepUpdateCodeInterpreterOutput : IJsonModel<RunStepUpdateCodeInterpreterOutput>, IPersistableModel<RunStepUpdateCodeInterpreterOutput> {
824 public string ImageFileId { get; }
825 public string Logs { get; }
826 public int OutputIndex { get; }
827 protected virtual RunStepUpdateCodeInterpreterOutput JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
828 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
829 protected virtual RunStepUpdateCodeInterpreterOutput PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
830 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
831 }
832 [Experimental("OPENAI001")]
833 public class RunTokenUsage : IJsonModel<RunTokenUsage>, IPersistableModel<RunTokenUsage> {
834 public int InputTokenCount { get; }
835 public int OutputTokenCount { get; }
836 public int TotalTokenCount { get; }
837 protected virtual RunTokenUsage JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
838 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
839 protected virtual RunTokenUsage PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
840 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
841 }
842 [Experimental("OPENAI001")]
843 public class RunTruncationStrategy : IJsonModel<RunTruncationStrategy>, IPersistableModel<RunTruncationStrategy> {
844 public static RunTruncationStrategy Auto { get; }
845 public int? LastMessages { get; }
846 public static RunTruncationStrategy CreateLastMessagesStrategy(int lastMessageCount);
847 protected virtual RunTruncationStrategy JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
848 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
849 protected virtual RunTruncationStrategy PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
850 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
851 }
852 [Experimental("OPENAI001")]
853 public class RunUpdate : StreamingUpdate<ThreadRun> {
854 }
855 [Experimental("OPENAI001")]
856 public abstract class StreamingUpdate {
857 public StreamingUpdateReason UpdateKind { get; }
858 }
859 [Experimental("OPENAI001")]
860 public enum StreamingUpdateReason {
861 Unknown = 0,
862 ThreadCreated = 1,
863 RunCreated = 2,
864 RunQueued = 3,
865 RunInProgress = 4,
866 RunRequiresAction = 5,
867 RunCompleted = 6,
868 RunIncomplete = 7,
869 RunFailed = 8,
870 RunCancelling = 9,
871 RunCancelled = 10,
872 RunExpired = 11,
873 RunStepCreated = 12,
874 RunStepInProgress = 13,
875 RunStepUpdated = 14,
876 RunStepCompleted = 15,
877 RunStepFailed = 16,
878 RunStepCancelled = 17,
879 RunStepExpired = 18,
880 MessageCreated = 19,
881 MessageInProgress = 20,
882 MessageUpdated = 21,
883 MessageCompleted = 22,
884 MessageFailed = 23,
885 Error = 24,
886 Done = 25
887 }
888 [Experimental("OPENAI001")]
889 public class StreamingUpdate<T> : StreamingUpdate where T : class {
890 public T Value { get; }
891 public static implicit operator T(StreamingUpdate<T> update);
892 }
893 [Experimental("OPENAI001")]
894 public class TextAnnotation {
895 public int EndIndex { get; }
896 public string InputFileId { get; }
897 public string OutputFileId { get; }
898 public int StartIndex { get; }
899 public string TextToReplace { get; }
900 }
901 [Experimental("OPENAI001")]
902 public class TextAnnotationUpdate {
903 public int ContentIndex { get; }
904 public int? EndIndex { get; }
905 public string InputFileId { get; }
906 public string OutputFileId { get; }
907 public int? StartIndex { get; }
908 public string TextToReplace { get; }
909 }
910 [Experimental("OPENAI001")]
911 public class ThreadCreationOptions : IJsonModel<ThreadCreationOptions>, IPersistableModel<ThreadCreationOptions> {
912 public IList<ThreadInitializationMessage> InitialMessages { get; }
913 public IDictionary<string, string> Metadata { get; }
914 public ToolResources ToolResources { get; set; }
915 protected virtual ThreadCreationOptions JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
916 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
917 protected virtual ThreadCreationOptions PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
918 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
919 }
920 [Experimental("OPENAI001")]
921 public class ThreadDeletionResult : IJsonModel<ThreadDeletionResult>, IPersistableModel<ThreadDeletionResult> {
922 public bool Deleted { get; }
923 public string ThreadId { get; }
924 protected virtual ThreadDeletionResult JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
925 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
926 protected virtual ThreadDeletionResult PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
927 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
928 }
929 [Experimental("OPENAI001")]
930 public class ThreadInitializationMessage : MessageCreationOptions {
931 public ThreadInitializationMessage(MessageRole role, IEnumerable<MessageContent> content);
932 public static implicit operator ThreadInitializationMessage(string initializationMessage);
933 }
934 [Experimental("OPENAI001")]
935 public class ThreadMessage : IJsonModel<ThreadMessage>, IPersistableModel<ThreadMessage> {
936 public string AssistantId { get; }
937 public IReadOnlyList<MessageCreationAttachment> Attachments { get; }
938 public DateTimeOffset? CompletedAt { get; }
939 public IReadOnlyList<MessageContent> Content { get; }
940 public DateTimeOffset CreatedAt { get; }
941 public string Id { get; }
942 public DateTimeOffset? IncompleteAt { get; }
943 public MessageFailureDetails IncompleteDetails { get; }
944 public IReadOnlyDictionary<string, string> Metadata { get; }
945 public MessageRole Role { get; }
946 public string RunId { get; }
947 public MessageStatus Status { get; }
948 public string ThreadId { get; }
949 protected virtual ThreadMessage JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
950 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
951 protected virtual ThreadMessage PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
952 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
953 }
954 [Experimental("OPENAI001")]
955 public class ThreadModificationOptions : IJsonModel<ThreadModificationOptions>, IPersistableModel<ThreadModificationOptions> {
956 public IDictionary<string, string> Metadata { get; }
957 public ToolResources ToolResources { get; set; }
958 protected virtual ThreadModificationOptions JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
959 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
960 protected virtual ThreadModificationOptions PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
961 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
962 }
963 [Experimental("OPENAI001")]
964 public class ThreadRun : IJsonModel<ThreadRun>, IPersistableModel<ThreadRun> {
965 public bool? AllowParallelToolCalls { get; }
966 public string AssistantId { get; }
967 public DateTimeOffset? CancelledAt { get; }
968 public DateTimeOffset? CompletedAt { get; }
969 public DateTimeOffset CreatedAt { get; }
970 public DateTimeOffset? ExpiresAt { get; }
971 public DateTimeOffset? FailedAt { get; }
972 public string Id { get; }
973 public RunIncompleteDetails IncompleteDetails { get; }
974 public string Instructions { get; }
975 public RunError LastError { get; }
976 public int? MaxInputTokenCount { get; }
977 public int? MaxOutputTokenCount { get; }
978 public IReadOnlyDictionary<string, string> Metadata { get; }
979 public string Model { get; }
980 public float? NucleusSamplingFactor { get; }
981 public IReadOnlyList<RequiredAction> RequiredActions { get; }
982 public AssistantResponseFormat ResponseFormat { get; }
983 public DateTimeOffset? StartedAt { get; }
984 public RunStatus Status { get; }
985 public float? Temperature { get; }
986 public string ThreadId { get; }
987 public ToolConstraint ToolConstraint { get; }
988 public IReadOnlyList<ToolDefinition> Tools { get; }
989 public RunTruncationStrategy TruncationStrategy { get; }
990 public RunTokenUsage Usage { get; }
991 protected virtual ThreadRun JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
992 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
993 protected virtual ThreadRun PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
994 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
995 }
996 [Experimental("OPENAI001")]
997 public class ThreadUpdate : StreamingUpdate<AssistantThread> {
998 public DateTimeOffset CreatedAt { get; }
999 public string Id { get; }
1000 public IReadOnlyDictionary<string, string> Metadata { get; }
1001 public ToolResources ToolResources { get; }
1002 }
1003 [Experimental("OPENAI001")]
1004 public class ToolConstraint : IJsonModel<ToolConstraint>, IPersistableModel<ToolConstraint> {
1005 public ToolConstraint(ToolDefinition toolDefinition);
1006 public static ToolConstraint Auto { get; }
1007 public static ToolConstraint None { get; }
1008 public static ToolConstraint Required { get; }
1009 protected virtual ToolConstraint JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
1010 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
1011 protected virtual ToolConstraint PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
1012 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
1013 }
1014 [Experimental("OPENAI001")]
1015 public class ToolDefinition : IJsonModel<ToolDefinition>, IPersistableModel<ToolDefinition> {
1016 public static CodeInterpreterToolDefinition CreateCodeInterpreter();
1017 public static FileSearchToolDefinition CreateFileSearch(int? maxResults = null);
1018 public static FunctionToolDefinition CreateFunction(string name, string description = null, BinaryData parameters = null, bool? strictParameterSchemaEnabled = null);
1019 protected virtual ToolDefinition JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
1020 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
1021 protected virtual ToolDefinition PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
1022 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
1023 }
1024 [Experimental("OPENAI001")]
1025 public class ToolOutput : IJsonModel<ToolOutput>, IPersistableModel<ToolOutput> {
1026 public ToolOutput();
1027 public ToolOutput(string toolCallId, string output);
1028 public string Output { get; set; }
1029 public string ToolCallId { get; set; }
1030 protected virtual ToolOutput JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
1031 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
1032 protected virtual ToolOutput PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
1033 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
1034 }
1035 [Experimental("OPENAI001")]
1036 public class ToolResources : IJsonModel<ToolResources>, IPersistableModel<ToolResources> {
1037 public CodeInterpreterToolResources CodeInterpreter { get; set; }
1038 public FileSearchToolResources FileSearch { get; set; }
1039 protected virtual ToolResources JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
1040 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
1041 protected virtual ToolResources PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
1042 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
1043 }
1044 [Experimental("OPENAI001")]
1045 public class VectorStoreCreationHelper : IJsonModel<VectorStoreCreationHelper>, IPersistableModel<VectorStoreCreationHelper> {
1046 public VectorStoreCreationHelper();
1047 public VectorStoreCreationHelper(IEnumerable<OpenAIFile> files);
1048 public VectorStoreCreationHelper(IEnumerable<string> fileIds);
1049 public FileChunkingStrategy ChunkingStrategy { get; set; }
1050 public IList<string> FileIds { get; }
1051 public IDictionary<string, string> Metadata { get; }
1052 protected virtual VectorStoreCreationHelper JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
1053 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
1054 protected virtual VectorStoreCreationHelper PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
1055 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
1056 }
1057}
1058namespace OpenAI.Audio {
1059 public class AudioClient {
1060 protected AudioClient();
1061 protected internal AudioClient(ClientPipeline pipeline, string model, OpenAIClientOptions options);
1062 public AudioClient(string model, ApiKeyCredential credential, OpenAIClientOptions options);
1063 public AudioClient(string model, ApiKeyCredential credential);
1064 [Experimental("OPENAI001")]
1065 public AudioClient(string model, AuthenticationPolicy authenticationPolicy, OpenAIClientOptions options);
1066 [Experimental("OPENAI001")]
1067 public AudioClient(string model, AuthenticationPolicy authenticationPolicy);
1068 public AudioClient(string model, string apiKey);
1069 [Experimental("OPENAI001")]
1070 public string Model { get; }
1071 public ClientPipeline Pipeline { get; }
1072 public virtual ClientResult GenerateSpeech(BinaryContent content, RequestOptions options = null);
1073 public virtual ClientResult<BinaryData> GenerateSpeech(string text, GeneratedSpeechVoice voice, SpeechGenerationOptions options = null, CancellationToken cancellationToken = default);
1074 public virtual Task<ClientResult> GenerateSpeechAsync(BinaryContent content, RequestOptions options = null);
1075 public virtual Task<ClientResult<BinaryData>> GenerateSpeechAsync(string text, GeneratedSpeechVoice voice, SpeechGenerationOptions options = null, CancellationToken cancellationToken = default);
1076 public virtual ClientResult TranscribeAudio(BinaryContent content, string contentType, RequestOptions options = null);
1077 public virtual ClientResult<AudioTranscription> TranscribeAudio(Stream audio, string audioFilename, AudioTranscriptionOptions options = null, CancellationToken cancellationToken = default);
1078 public virtual ClientResult<AudioTranscription> TranscribeAudio(string audioFilePath, AudioTranscriptionOptions options = null);
1079 public virtual Task<ClientResult> TranscribeAudioAsync(BinaryContent content, string contentType, RequestOptions options = null);
1080 public virtual Task<ClientResult<AudioTranscription>> TranscribeAudioAsync(Stream audio, string audioFilename, AudioTranscriptionOptions options = null, CancellationToken cancellationToken = default);
1081 public virtual Task<ClientResult<AudioTranscription>> TranscribeAudioAsync(string audioFilePath, AudioTranscriptionOptions options = null);
1082 [Experimental("OPENAI001")]
1083 public virtual CollectionResult<StreamingAudioTranscriptionUpdate> TranscribeAudioStreaming(Stream audio, string audioFilename, AudioTranscriptionOptions options = null, CancellationToken cancellationToken = default);
1084 [Experimental("OPENAI001")]
1085 public virtual CollectionResult<StreamingAudioTranscriptionUpdate> TranscribeAudioStreaming(string audioFilePath, AudioTranscriptionOptions options = null, CancellationToken cancellationToken = default);
1086 [Experimental("OPENAI001")]
1087 public virtual AsyncCollectionResult<StreamingAudioTranscriptionUpdate> TranscribeAudioStreamingAsync(Stream audio, string audioFilename, AudioTranscriptionOptions options = null, CancellationToken cancellationToken = default);
1088 [Experimental("OPENAI001")]
1089 public virtual AsyncCollectionResult<StreamingAudioTranscriptionUpdate> TranscribeAudioStreamingAsync(string audioFilePath, AudioTranscriptionOptions options = null, CancellationToken cancellationToken = default);
1090 public virtual ClientResult TranslateAudio(BinaryContent content, string contentType, RequestOptions options = null);
1091 public virtual ClientResult<AudioTranslation> TranslateAudio(Stream audio, string audioFilename, AudioTranslationOptions options = null, CancellationToken cancellationToken = default);
1092 public virtual ClientResult<AudioTranslation> TranslateAudio(string audioFilePath, AudioTranslationOptions options = null);
1093 public virtual Task<ClientResult> TranslateAudioAsync(BinaryContent content, string contentType, RequestOptions options = null);
1094 public virtual Task<ClientResult<AudioTranslation>> TranslateAudioAsync(Stream audio, string audioFilename, AudioTranslationOptions options = null, CancellationToken cancellationToken = default);
1095 public virtual Task<ClientResult<AudioTranslation>> TranslateAudioAsync(string audioFilePath, AudioTranslationOptions options = null);
1096 }
1097 [Flags]
1098 public enum AudioTimestampGranularities {
1099 Default = 0,
1100 Word = 1,
1101 Segment = 2
1102 }
1103 [Experimental("OPENAI001")]
1104 public class AudioTokenLogProbabilityDetails : IJsonModel<AudioTokenLogProbabilityDetails>, IPersistableModel<AudioTokenLogProbabilityDetails> {
1105 public float LogProbability { get; }
1106 public string Token { get; }
1107 public ReadOnlyMemory<byte> Utf8Bytes { get; }
1108 protected virtual AudioTokenLogProbabilityDetails JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
1109 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
1110 protected virtual AudioTokenLogProbabilityDetails PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
1111 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
1112 }
1113 public class AudioTranscription : IJsonModel<AudioTranscription>, IPersistableModel<AudioTranscription> {
1114 public TimeSpan? Duration { get; }
1115 public string Language { get; }
1116 public IReadOnlyList<TranscribedSegment> Segments { get; }
1117 public string Text { get; }
1118 [Experimental("OPENAI001")]
1119 public IReadOnlyList<AudioTokenLogProbabilityDetails> TranscriptionTokenLogProbabilities { get; }
1120 public IReadOnlyList<TranscribedWord> Words { get; }
1121 [Experimental("OPENAI001")]
1122 protected virtual AudioTranscription JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
1123 [Experimental("OPENAI001")]
1124 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
1125 [Experimental("OPENAI001")]
1126 protected virtual AudioTranscription PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
1127 [Experimental("OPENAI001")]
1128 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
1129 }
1130 public readonly partial struct AudioTranscriptionFormat : IEquatable<AudioTranscriptionFormat> {
1131 public AudioTranscriptionFormat(string value);
1132 public static AudioTranscriptionFormat Simple { get; }
1133 public static AudioTranscriptionFormat Srt { get; }
1134 [EditorBrowsable(EditorBrowsableState.Never)]
1135 public static AudioTranscriptionFormat Text { get; }
1136 public static AudioTranscriptionFormat Verbose { get; }
1137 public static AudioTranscriptionFormat Vtt { get; }
1138 public readonly bool Equals(AudioTranscriptionFormat other);
1139 [EditorBrowsable(EditorBrowsableState.Never)]
1140 public override readonly bool Equals(object obj);
1141 [EditorBrowsable(EditorBrowsableState.Never)]
1142 public override readonly int GetHashCode();
1143 public static bool operator ==(AudioTranscriptionFormat left, AudioTranscriptionFormat right);
1144 public static implicit operator AudioTranscriptionFormat(string value);
1145 public static bool operator !=(AudioTranscriptionFormat left, AudioTranscriptionFormat right);
1146 public override readonly string ToString();
1147 }
1148 [Experimental("OPENAI001")]
1149 [Flags]
1150 public enum AudioTranscriptionIncludes {
1151 Default = 0,
1152 Logprobs = 1
1153 }
1154 public class AudioTranscriptionOptions : IJsonModel<AudioTranscriptionOptions>, IPersistableModel<AudioTranscriptionOptions> {
1155 [Experimental("OPENAI001")]
1156 public AudioTranscriptionIncludes Includes { get; set; }
1157 public string Language { get; set; }
1158 public string Prompt { get; set; }
1159 public AudioTranscriptionFormat? ResponseFormat { get; set; }
1160 public float? Temperature { get; set; }
1161 public AudioTimestampGranularities TimestampGranularities { get; set; }
1162 [Experimental("OPENAI001")]
1163 protected virtual AudioTranscriptionOptions JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
1164 [Experimental("OPENAI001")]
1165 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
1166 [Experimental("OPENAI001")]
1167 protected virtual AudioTranscriptionOptions PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
1168 [Experimental("OPENAI001")]
1169 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
1170 }
1171 public class AudioTranslation : IJsonModel<AudioTranslation>, IPersistableModel<AudioTranslation> {
1172 public TimeSpan? Duration { get; }
1173 public string Language { get; }
1174 public IReadOnlyList<TranscribedSegment> Segments { get; }
1175 public string Text { get; }
1176 [Experimental("OPENAI001")]
1177 protected virtual AudioTranslation JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
1178 [Experimental("OPENAI001")]
1179 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
1180 [Experimental("OPENAI001")]
1181 protected virtual AudioTranslation PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
1182 [Experimental("OPENAI001")]
1183 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
1184 }
1185 public readonly partial struct AudioTranslationFormat : IEquatable<AudioTranslationFormat> {
1186 public AudioTranslationFormat(string value);
1187 public static AudioTranslationFormat Simple { get; }
1188 public static AudioTranslationFormat Srt { get; }
1189 [EditorBrowsable(EditorBrowsableState.Never)]
1190 public static AudioTranslationFormat Text { get; }
1191 public static AudioTranslationFormat Verbose { get; }
1192 public static AudioTranslationFormat Vtt { get; }
1193 public readonly bool Equals(AudioTranslationFormat other);
1194 [EditorBrowsable(EditorBrowsableState.Never)]
1195 public override readonly bool Equals(object obj);
1196 [EditorBrowsable(EditorBrowsableState.Never)]
1197 public override readonly int GetHashCode();
1198 public static bool operator ==(AudioTranslationFormat left, AudioTranslationFormat right);
1199 public static implicit operator AudioTranslationFormat(string value);
1200 public static bool operator !=(AudioTranslationFormat left, AudioTranslationFormat right);
1201 public override readonly string ToString();
1202 }
1203 public class AudioTranslationOptions : IJsonModel<AudioTranslationOptions>, IPersistableModel<AudioTranslationOptions> {
1204 public string Prompt { get; set; }
1205 public AudioTranslationFormat? ResponseFormat { get; set; }
1206 public float? Temperature { get; set; }
1207 [Experimental("OPENAI001")]
1208 protected virtual AudioTranslationOptions JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
1209 [Experimental("OPENAI001")]
1210 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
1211 [Experimental("OPENAI001")]
1212 protected virtual AudioTranslationOptions PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
1213 [Experimental("OPENAI001")]
1214 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
1215 }
1216 public readonly partial struct GeneratedSpeechFormat : IEquatable<GeneratedSpeechFormat> {
1217 public GeneratedSpeechFormat(string value);
1218 public static GeneratedSpeechFormat Aac { get; }
1219 public static GeneratedSpeechFormat Flac { get; }
1220 public static GeneratedSpeechFormat Mp3 { get; }
1221 public static GeneratedSpeechFormat Opus { get; }
1222 public static GeneratedSpeechFormat Pcm { get; }
1223 public static GeneratedSpeechFormat Wav { get; }
1224 public readonly bool Equals(GeneratedSpeechFormat other);
1225 [EditorBrowsable(EditorBrowsableState.Never)]
1226 public override readonly bool Equals(object obj);
1227 [EditorBrowsable(EditorBrowsableState.Never)]
1228 public override readonly int GetHashCode();
1229 public static bool operator ==(GeneratedSpeechFormat left, GeneratedSpeechFormat right);
1230 public static implicit operator GeneratedSpeechFormat(string value);
1231 public static bool operator !=(GeneratedSpeechFormat left, GeneratedSpeechFormat right);
1232 public override readonly string ToString();
1233 }
1234 public readonly partial struct GeneratedSpeechVoice : IEquatable<GeneratedSpeechVoice> {
1235 public GeneratedSpeechVoice(string value);
1236 public static GeneratedSpeechVoice Alloy { get; }
1237 [Experimental("OPENAI001")]
1238 public static GeneratedSpeechVoice Ash { get; }
1239 [Experimental("OPENAI001")]
1240 public static GeneratedSpeechVoice Ballad { get; }
1241 [Experimental("OPENAI001")]
1242 public static GeneratedSpeechVoice Coral { get; }
1243 public static GeneratedSpeechVoice Echo { get; }
1244 public static GeneratedSpeechVoice Fable { get; }
1245 public static GeneratedSpeechVoice Nova { get; }
1246 public static GeneratedSpeechVoice Onyx { get; }
1247 [Experimental("OPENAI001")]
1248 public static GeneratedSpeechVoice Sage { get; }
1249 public static GeneratedSpeechVoice Shimmer { get; }
1250 [Experimental("OPENAI001")]
1251 public static GeneratedSpeechVoice Verse { get; }
1252 public readonly bool Equals(GeneratedSpeechVoice other);
1253 [EditorBrowsable(EditorBrowsableState.Never)]
1254 public override readonly bool Equals(object obj);
1255 [EditorBrowsable(EditorBrowsableState.Never)]
1256 public override readonly int GetHashCode();
1257 public static bool operator ==(GeneratedSpeechVoice left, GeneratedSpeechVoice right);
1258 public static implicit operator GeneratedSpeechVoice(string value);
1259 public static bool operator !=(GeneratedSpeechVoice left, GeneratedSpeechVoice right);
1260 public override readonly string ToString();
1261 }
1262 public static class OpenAIAudioModelFactory {
1263 [Experimental("OPENAI001")]
1264 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);
1265 [EditorBrowsable(EditorBrowsableState.Never)]
1266 public static AudioTranscription AudioTranscription(string language, TimeSpan? duration, string text, IEnumerable<TranscribedWord> words, IEnumerable<TranscribedSegment> segments);
1267 public static AudioTranslation AudioTranslation(string language = null, TimeSpan? duration = null, string text = null, IEnumerable<TranscribedSegment> segments = null);
1268 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);
1269 public static TranscribedWord TranscribedWord(string word = null, TimeSpan startTime = default, TimeSpan endTime = default);
1270 }
1271 public class SpeechGenerationOptions : IJsonModel<SpeechGenerationOptions>, IPersistableModel<SpeechGenerationOptions> {
1272 [Experimental("OPENAI001")]
1273 public string Instructions { get; set; }
1274 public GeneratedSpeechFormat? ResponseFormat { get; set; }
1275 public float? SpeedRatio { get; set; }
1276 [Experimental("OPENAI001")]
1277 protected virtual SpeechGenerationOptions JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
1278 [Experimental("OPENAI001")]
1279 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
1280 [Experimental("OPENAI001")]
1281 protected virtual SpeechGenerationOptions PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
1282 [Experimental("OPENAI001")]
1283 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
1284 }
1285 [Experimental("OPENAI001")]
1286 public class StreamingAudioTranscriptionTextDeltaUpdate : StreamingAudioTranscriptionUpdate, IJsonModel<StreamingAudioTranscriptionTextDeltaUpdate>, IPersistableModel<StreamingAudioTranscriptionTextDeltaUpdate> {
1287 public string Delta { get; }
1288 public IReadOnlyList<AudioTokenLogProbabilityDetails> TranscriptionTokenLogProbabilities { get; }
1289 protected override StreamingAudioTranscriptionUpdate JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
1290 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
1291 protected override StreamingAudioTranscriptionUpdate PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
1292 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
1293 }
1294 [Experimental("OPENAI001")]
1295 public class StreamingAudioTranscriptionTextDoneUpdate : StreamingAudioTranscriptionUpdate, IJsonModel<StreamingAudioTranscriptionTextDoneUpdate>, IPersistableModel<StreamingAudioTranscriptionTextDoneUpdate> {
1296 public string Text { get; }
1297 public IReadOnlyList<AudioTokenLogProbabilityDetails> TranscriptionTokenLogProbabilities { get; }
1298 protected override StreamingAudioTranscriptionUpdate JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
1299 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
1300 protected override StreamingAudioTranscriptionUpdate PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
1301 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
1302 }
1303 [Experimental("OPENAI001")]
1304 public class StreamingAudioTranscriptionUpdate : IJsonModel<StreamingAudioTranscriptionUpdate>, IPersistableModel<StreamingAudioTranscriptionUpdate> {
1305 protected virtual StreamingAudioTranscriptionUpdate JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
1306 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
1307 protected virtual StreamingAudioTranscriptionUpdate PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
1308 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
1309 }
1310 [Experimental("OPENAI001")]
1311 public readonly partial struct StreamingAudioTranscriptionUpdateKind : IEquatable<StreamingAudioTranscriptionUpdateKind> {
1312 public StreamingAudioTranscriptionUpdateKind(string value);
1313 public static StreamingAudioTranscriptionUpdateKind TranscriptTextDelta { get; }
1314 public static StreamingAudioTranscriptionUpdateKind TranscriptTextDone { get; }
1315 public readonly bool Equals(StreamingAudioTranscriptionUpdateKind other);
1316 [EditorBrowsable(EditorBrowsableState.Never)]
1317 public override readonly bool Equals(object obj);
1318 [EditorBrowsable(EditorBrowsableState.Never)]
1319 public override readonly int GetHashCode();
1320 public static bool operator ==(StreamingAudioTranscriptionUpdateKind left, StreamingAudioTranscriptionUpdateKind right);
1321 public static implicit operator StreamingAudioTranscriptionUpdateKind(string value);
1322 public static bool operator !=(StreamingAudioTranscriptionUpdateKind left, StreamingAudioTranscriptionUpdateKind right);
1323 public override readonly string ToString();
1324 }
1325 public readonly partial struct TranscribedSegment : IJsonModel<TranscribedSegment>, IPersistableModel<TranscribedSegment>, IJsonModel<object>, IPersistableModel<object> {
1326 public float AverageLogProbability { get; }
1327 public float CompressionRatio { get; }
1328 public TimeSpan EndTime { get; }
1329 public int Id { get; }
1330 public float NoSpeechProbability { get; }
1331 public int SeekOffset { get; }
1332 public TimeSpan StartTime { get; }
1333 public float Temperature { get; }
1334 public string Text { get; }
1335 public ReadOnlyMemory<int> TokenIds { get; }
1336 }
1337 public readonly partial struct TranscribedWord : IJsonModel<TranscribedWord>, IPersistableModel<TranscribedWord>, IJsonModel<object>, IPersistableModel<object> {
1338 public TimeSpan EndTime { get; }
1339 public TimeSpan StartTime { get; }
1340 public string Word { get; }
1341 }
1342}
1343namespace OpenAI.Batch {
1344 [Experimental("OPENAI001")]
1345 public class BatchClient {
1346 protected BatchClient();
1347 public BatchClient(ApiKeyCredential credential, OpenAIClientOptions options);
1348 public BatchClient(ApiKeyCredential credential);
1349 public BatchClient(AuthenticationPolicy authenticationPolicy, OpenAIClientOptions options);
1350 public BatchClient(AuthenticationPolicy authenticationPolicy);
1351 protected internal BatchClient(ClientPipeline pipeline, OpenAIClientOptions options);
1352 public BatchClient(string apiKey);
1353 public ClientPipeline Pipeline { get; }
1354 public virtual CreateBatchOperation CreateBatch(BinaryContent content, bool waitUntilCompleted, RequestOptions options = null);
1355 public virtual Task<CreateBatchOperation> CreateBatchAsync(BinaryContent content, bool waitUntilCompleted, RequestOptions options = null);
1356 public virtual ClientResult GetBatch(string batchId, RequestOptions options);
1357 public virtual Task<ClientResult> GetBatchAsync(string batchId, RequestOptions options);
1358 public virtual CollectionResult GetBatches(string after, int? limit, RequestOptions options);
1359 public virtual AsyncCollectionResult GetBatchesAsync(string after, int? limit, RequestOptions options);
1360 }
1361 [Experimental("OPENAI001")]
1362 public class CreateBatchOperation : OperationResult {
1363 public string BatchId { get; }
1364 public override ContinuationToken? RehydrationToken { get; protected set; }
1365 public virtual ClientResult Cancel(RequestOptions? options);
1366 public virtual Task<ClientResult> CancelAsync(RequestOptions? options);
1367 public virtual ClientResult GetBatch(RequestOptions? options);
1368 public virtual Task<ClientResult> GetBatchAsync(RequestOptions? options);
1369 public static CreateBatchOperation Rehydrate(BatchClient client, ContinuationToken rehydrationToken, CancellationToken cancellationToken = default);
1370 public static CreateBatchOperation Rehydrate(BatchClient client, string batchId, CancellationToken cancellationToken = default);
1371 public static Task<CreateBatchOperation> RehydrateAsync(BatchClient client, ContinuationToken rehydrationToken, CancellationToken cancellationToken = default);
1372 public static Task<CreateBatchOperation> RehydrateAsync(BatchClient client, string batchId, CancellationToken cancellationToken = default);
1373 public override ClientResult UpdateStatus(RequestOptions? options = null);
1374 public override ValueTask<ClientResult> UpdateStatusAsync(RequestOptions? options = null);
1375 }
1376}
1377namespace OpenAI.Chat {
1378 public class AssistantChatMessage : ChatMessage, IJsonModel<AssistantChatMessage>, IPersistableModel<AssistantChatMessage> {
1379 public AssistantChatMessage(ChatCompletion chatCompletion);
1380 [Obsolete("This constructor is obsolete. Please use the constructor that takes an IEnumerable<ChatToolCall> parameter instead.")]
1381 public AssistantChatMessage(ChatFunctionCall functionCall);
1382 public AssistantChatMessage(params ChatMessageContentPart[] contentParts);
1383 [Experimental("OPENAI001")]
1384 public AssistantChatMessage(ChatOutputAudioReference outputAudioReference);
1385 public AssistantChatMessage(IEnumerable<ChatMessageContentPart> contentParts);
1386 public AssistantChatMessage(IEnumerable<ChatToolCall> toolCalls);
1387 public AssistantChatMessage(string content);
1388 [Obsolete("This property is obsolete. Please use ToolCalls instead.")]
1389 public ChatFunctionCall FunctionCall { get; set; }
1390 [Experimental("OPENAI001")]
1391 public ChatOutputAudioReference OutputAudioReference { get; set; }
1392 public string ParticipantName { get; set; }
1393 public string Refusal { get; set; }
1394 public IList<ChatToolCall> ToolCalls { get; }
1395 [Experimental("OPENAI001")]
1396 protected override ChatMessage JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
1397 [Experimental("OPENAI001")]
1398 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
1399 [Experimental("OPENAI001")]
1400 protected override ChatMessage PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
1401 [Experimental("OPENAI001")]
1402 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
1403 }
1404 [Experimental("OPENAI001")]
1405 public class ChatAudioOptions : IJsonModel<ChatAudioOptions>, IPersistableModel<ChatAudioOptions> {
1406 public ChatAudioOptions(ChatOutputAudioVoice outputAudioVoice, ChatOutputAudioFormat outputAudioFormat);
1407 public ChatOutputAudioFormat OutputAudioFormat { get; }
1408 public ChatOutputAudioVoice OutputAudioVoice { get; }
1409 protected virtual ChatAudioOptions JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
1410 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
1411 protected virtual ChatAudioOptions PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
1412 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
1413 }
1414 public class ChatClient {
1415 protected ChatClient();
1416 protected internal ChatClient(ClientPipeline pipeline, string model, OpenAIClientOptions options);
1417 public ChatClient(string model, ApiKeyCredential credential, OpenAIClientOptions options);
1418 public ChatClient(string model, ApiKeyCredential credential);
1419 [Experimental("OPENAI001")]
1420 public ChatClient(string model, AuthenticationPolicy authenticationPolicy, OpenAIClientOptions options);
1421 [Experimental("OPENAI001")]
1422 public ChatClient(string model, AuthenticationPolicy authenticationPolicy);
1423 public ChatClient(string model, string apiKey);
1424 [Experimental("OPENAI001")]
1425 public string Model { get; }
1426 public ClientPipeline Pipeline { get; }
1427 public virtual ClientResult<ChatCompletion> CompleteChat(params ChatMessage[] messages);
1428 public virtual ClientResult CompleteChat(BinaryContent content, RequestOptions options = null);
1429 public virtual ClientResult<ChatCompletion> CompleteChat(IEnumerable<ChatMessage> messages, ChatCompletionOptions options = null, CancellationToken cancellationToken = default);
1430 public virtual Task<ClientResult<ChatCompletion>> CompleteChatAsync(params ChatMessage[] messages);
1431 public virtual Task<ClientResult> CompleteChatAsync(BinaryContent content, RequestOptions options = null);
1432 public virtual Task<ClientResult<ChatCompletion>> CompleteChatAsync(IEnumerable<ChatMessage> messages, ChatCompletionOptions options = null, CancellationToken cancellationToken = default);
1433 public virtual CollectionResult<StreamingChatCompletionUpdate> CompleteChatStreaming(params ChatMessage[] messages);
1434 public virtual CollectionResult<StreamingChatCompletionUpdate> CompleteChatStreaming(IEnumerable<ChatMessage> messages, ChatCompletionOptions options = null, CancellationToken cancellationToken = default);
1435 public virtual AsyncCollectionResult<StreamingChatCompletionUpdate> CompleteChatStreamingAsync(params ChatMessage[] messages);
1436 public virtual AsyncCollectionResult<StreamingChatCompletionUpdate> CompleteChatStreamingAsync(IEnumerable<ChatMessage> messages, ChatCompletionOptions options = null, CancellationToken cancellationToken = default);
1437 [Experimental("OPENAI001")]
1438 public virtual ClientResult DeleteChatCompletion(string completionId, RequestOptions options);
1439 [Experimental("OPENAI001")]
1440 public virtual ClientResult<ChatCompletionDeletionResult> DeleteChatCompletion(string completionId, CancellationToken cancellationToken = default);
1441 [Experimental("OPENAI001")]
1442 public virtual Task<ClientResult> DeleteChatCompletionAsync(string completionId, RequestOptions options);
1443 [Experimental("OPENAI001")]
1444 public virtual Task<ClientResult<ChatCompletionDeletionResult>> DeleteChatCompletionAsync(string completionId, CancellationToken cancellationToken = default);
1445 [Experimental("OPENAI001")]
1446 public virtual ClientResult GetChatCompletion(string completionId, RequestOptions options);
1447 [Experimental("OPENAI001")]
1448 public virtual ClientResult<ChatCompletion> GetChatCompletion(string completionId, CancellationToken cancellationToken = default);
1449 [Experimental("OPENAI001")]
1450 public virtual Task<ClientResult> GetChatCompletionAsync(string completionId, RequestOptions options);
1451 [Experimental("OPENAI001")]
1452 public virtual Task<ClientResult<ChatCompletion>> GetChatCompletionAsync(string completionId, CancellationToken cancellationToken = default);
1453 [Experimental("OPENAI001")]
1454 public virtual CollectionResult<ChatCompletionMessageListDatum> GetChatCompletionMessages(string completionId, ChatCompletionCollectionOptions options = null, CancellationToken cancellationToken = default);
1455 [Experimental("OPENAI001")]
1456 public virtual CollectionResult GetChatCompletionMessages(string completionId, string after, int? limit, string order, RequestOptions options);
1457 [Experimental("OPENAI001")]
1458 public virtual AsyncCollectionResult<ChatCompletionMessageListDatum> GetChatCompletionMessagesAsync(string completionId, ChatCompletionMessageCollectionOptions options = null, CancellationToken cancellationToken = default);
1459 [Experimental("OPENAI001")]
1460 public virtual AsyncCollectionResult GetChatCompletionMessagesAsync(string completionId, string after, int? limit, string order, RequestOptions options);
1461 [Experimental("OPENAI001")]
1462 public virtual CollectionResult<ChatCompletion> GetChatCompletions(ChatCompletionCollectionOptions options = null, CancellationToken cancellationToken = default);
1463 [Experimental("OPENAI001")]
1464 public virtual CollectionResult GetChatCompletions(string after, int? limit, string order, IDictionary<string, string> metadata, string model, RequestOptions options);
1465 [Experimental("OPENAI001")]
1466 public virtual AsyncCollectionResult<ChatCompletion> GetChatCompletionsAsync(ChatCompletionCollectionOptions options = null, CancellationToken cancellationToken = default);
1467 [Experimental("OPENAI001")]
1468 public virtual AsyncCollectionResult GetChatCompletionsAsync(string after, int? limit, string order, IDictionary<string, string> metadata, string model, RequestOptions options);
1469 [Experimental("OPENAI001")]
1470 public virtual ClientResult UpdateChatCompletion(string completionId, BinaryContent content, RequestOptions options = null);
1471 [Experimental("OPENAI001")]
1472 public virtual ClientResult<ChatCompletion> UpdateChatCompletion(string completionId, IDictionary<string, string> metadata, CancellationToken cancellationToken = default);
1473 [Experimental("OPENAI001")]
1474 public virtual Task<ClientResult> UpdateChatCompletionAsync(string completionId, BinaryContent content, RequestOptions options = null);
1475 [Experimental("OPENAI001")]
1476 public virtual Task<ClientResult<ChatCompletion>> UpdateChatCompletionAsync(string completionId, IDictionary<string, string> metadata, CancellationToken cancellationToken = default);
1477 }
1478 public class ChatCompletion : IJsonModel<ChatCompletion>, IPersistableModel<ChatCompletion> {
1479 [Experimental("OPENAI001")]
1480 public IReadOnlyList<ChatMessageAnnotation> Annotations { get; }
1481 public ChatMessageContent Content { get; }
1482 public IReadOnlyList<ChatTokenLogProbabilityDetails> ContentTokenLogProbabilities { get; }
1483 public DateTimeOffset CreatedAt { get; }
1484 public ChatFinishReason FinishReason { get; }
1485 [Obsolete("This property is obsolete. Please use ToolCalls instead.")]
1486 public ChatFunctionCall FunctionCall { get; }
1487 public string Id { get; }
1488 public string Model { get; }
1489 [Experimental("OPENAI001")]
1490 public ChatOutputAudio OutputAudio { get; }
1491 public string Refusal { get; }
1492 public IReadOnlyList<ChatTokenLogProbabilityDetails> RefusalTokenLogProbabilities { get; }
1493 public ChatMessageRole Role { get; }
1494 public string SystemFingerprint { get; }
1495 public IReadOnlyList<ChatToolCall> ToolCalls { get; }
1496 public ChatTokenUsage Usage { get; }
1497 [Experimental("OPENAI001")]
1498 protected virtual ChatCompletion JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
1499 [Experimental("OPENAI001")]
1500 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
1501 [Experimental("OPENAI001")]
1502 protected virtual ChatCompletion PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
1503 [Experimental("OPENAI001")]
1504 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
1505 }
1506 [Experimental("OPENAI001")]
1507 public class ChatCompletionCollectionOptions : IJsonModel<ChatCompletionCollectionOptions>, IPersistableModel<ChatCompletionCollectionOptions> {
1508 public string AfterId { get; set; }
1509 public IDictionary<string, string> Metadata { get; }
1510 public string Model { get; set; }
1511 public ChatCompletionCollectionOrder? Order { get; set; }
1512 public int? PageSizeLimit { get; set; }
1513 protected virtual ChatCompletionCollectionOptions JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
1514 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
1515 protected virtual ChatCompletionCollectionOptions PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
1516 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
1517 }
1518 [Experimental("OPENAI001")]
1519 public readonly partial struct ChatCompletionCollectionOrder : IEquatable<ChatCompletionCollectionOrder> {
1520 public ChatCompletionCollectionOrder(string value);
1521 public static ChatCompletionCollectionOrder Ascending { get; }
1522 public static ChatCompletionCollectionOrder Descending { get; }
1523 public readonly bool Equals(ChatCompletionCollectionOrder other);
1524 [EditorBrowsable(EditorBrowsableState.Never)]
1525 public override readonly bool Equals(object obj);
1526 [EditorBrowsable(EditorBrowsableState.Never)]
1527 public override readonly int GetHashCode();
1528 public static bool operator ==(ChatCompletionCollectionOrder left, ChatCompletionCollectionOrder right);
1529 public static implicit operator ChatCompletionCollectionOrder(string value);
1530 public static bool operator !=(ChatCompletionCollectionOrder left, ChatCompletionCollectionOrder right);
1531 public override readonly string ToString();
1532 }
1533 [Experimental("OPENAI001")]
1534 public class ChatCompletionDeletionResult : IJsonModel<ChatCompletionDeletionResult>, IPersistableModel<ChatCompletionDeletionResult> {
1535 public string ChatCompletionId { get; }
1536 public bool Deleted { get; }
1537 protected virtual ChatCompletionDeletionResult JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
1538 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
1539 protected virtual ChatCompletionDeletionResult PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
1540 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
1541 }
1542 [Experimental("OPENAI001")]
1543 public class ChatCompletionMessageCollectionOptions : IJsonModel<ChatCompletionMessageCollectionOptions>, IPersistableModel<ChatCompletionMessageCollectionOptions> {
1544 public string AfterId { get; set; }
1545 public ChatCompletionMessageCollectionOrder? Order { get; set; }
1546 public int? PageSizeLimit { get; set; }
1547 protected virtual ChatCompletionMessageCollectionOptions JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
1548 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
1549 protected virtual ChatCompletionMessageCollectionOptions PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
1550 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
1551 }
1552 [Experimental("OPENAI001")]
1553 public readonly partial struct ChatCompletionMessageCollectionOrder : IEquatable<ChatCompletionMessageCollectionOrder> {
1554 public ChatCompletionMessageCollectionOrder(string value);
1555 public static ChatCompletionMessageCollectionOrder Ascending { get; }
1556 public static ChatCompletionMessageCollectionOrder Descending { get; }
1557 public readonly bool Equals(ChatCompletionMessageCollectionOrder other);
1558 [EditorBrowsable(EditorBrowsableState.Never)]
1559 public override readonly bool Equals(object obj);
1560 [EditorBrowsable(EditorBrowsableState.Never)]
1561 public override readonly int GetHashCode();
1562 public static bool operator ==(ChatCompletionMessageCollectionOrder left, ChatCompletionMessageCollectionOrder right);
1563 public static implicit operator ChatCompletionMessageCollectionOrder(string value);
1564 public static bool operator !=(ChatCompletionMessageCollectionOrder left, ChatCompletionMessageCollectionOrder right);
1565 public override readonly string ToString();
1566 }
1567 [Experimental("OPENAI001")]
1568 public class ChatCompletionMessageListDatum : IJsonModel<ChatCompletionMessageListDatum>, IPersistableModel<ChatCompletionMessageListDatum> {
1569 public IReadOnlyList<ChatMessageAnnotation> Annotations { get; }
1570 public string Content { get; }
1571 public string Id { get; }
1572 public ChatOutputAudio OutputAudio { get; }
1573 public string Refusal { get; }
1574 public IReadOnlyList<ChatToolCall> ToolCalls { get; }
1575 protected virtual ChatCompletionMessageListDatum JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
1576 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
1577 protected virtual ChatCompletionMessageListDatum PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
1578 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
1579 }
1580 public class ChatCompletionOptions : IJsonModel<ChatCompletionOptions>, IPersistableModel<ChatCompletionOptions> {
1581 public bool? AllowParallelToolCalls { get; set; }
1582 [Experimental("OPENAI001")]
1583 public ChatAudioOptions AudioOptions { get; set; }
1584 public string EndUserId { get; set; }
1585 public float? FrequencyPenalty { get; set; }
1586 [Obsolete("This property is obsolete. Please use ToolChoice instead.")]
1587 public ChatFunctionChoice FunctionChoice { get; set; }
1588 [Obsolete("This property is obsolete. Please use Tools instead.")]
1589 public IList<ChatFunction> Functions { get; }
1590 public bool? IncludeLogProbabilities { get; set; }
1591 public IDictionary<int, int> LogitBiases { get; }
1592 public int? MaxOutputTokenCount { get; set; }
1593 public IDictionary<string, string> Metadata { get; }
1594 [Experimental("OPENAI001")]
1595 public ChatOutputPrediction OutputPrediction { get; set; }
1596 public float? PresencePenalty { get; set; }
1597 [Experimental("OPENAI001")]
1598 public ChatReasoningEffortLevel? ReasoningEffortLevel { get; set; }
1599 public ChatResponseFormat ResponseFormat { get; set; }
1600 [Experimental("OPENAI001")]
1601 public ChatResponseModalities ResponseModalities { get; set; }
1602 [Experimental("OPENAI001")]
1603 public long? Seed { get; set; }
1604 public IList<string> StopSequences { get; }
1605 public bool? StoredOutputEnabled { get; set; }
1606 public float? Temperature { get; set; }
1607 public ChatToolChoice ToolChoice { get; set; }
1608 public IList<ChatTool> Tools { get; }
1609 public int? TopLogProbabilityCount { get; set; }
1610 public float? TopP { get; set; }
1611 [Experimental("OPENAI001")]
1612 public ChatWebSearchOptions WebSearchOptions { get; set; }
1613 [Experimental("OPENAI001")]
1614 protected virtual ChatCompletionOptions JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
1615 [Experimental("OPENAI001")]
1616 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
1617 [Experimental("OPENAI001")]
1618 protected virtual ChatCompletionOptions PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
1619 [Experimental("OPENAI001")]
1620 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
1621 }
1622 public enum ChatFinishReason {
1623 Stop = 0,
1624 Length = 1,
1625 ContentFilter = 2,
1626 ToolCalls = 3,
1627 FunctionCall = 4
1628 }
1629 [Obsolete("This class is obsolete. Please use ChatTool instead.")]
1630 public class ChatFunction : IJsonModel<ChatFunction>, IPersistableModel<ChatFunction> {
1631 public ChatFunction(string functionName);
1632 public string FunctionDescription { get; set; }
1633 public string FunctionName { get; }
1634 public BinaryData FunctionParameters { get; set; }
1635 [Experimental("OPENAI001")]
1636 protected virtual ChatFunction JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
1637 [Experimental("OPENAI001")]
1638 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
1639 [Experimental("OPENAI001")]
1640 protected virtual ChatFunction PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
1641 [Experimental("OPENAI001")]
1642 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
1643 }
1644 [Obsolete("This class is obsolete. Please use ChatToolCall instead.")]
1645 public class ChatFunctionCall : IJsonModel<ChatFunctionCall>, IPersistableModel<ChatFunctionCall> {
1646 public ChatFunctionCall(string functionName, BinaryData functionArguments);
1647 public BinaryData FunctionArguments { get; }
1648 public string FunctionName { get; }
1649 [Experimental("OPENAI001")]
1650 protected virtual ChatFunctionCall JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
1651 [Experimental("OPENAI001")]
1652 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
1653 [Experimental("OPENAI001")]
1654 protected virtual ChatFunctionCall PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
1655 [Experimental("OPENAI001")]
1656 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
1657 }
1658 [Obsolete("This class is obsolete. Please use ChatToolChoice instead.")]
1659 public class ChatFunctionChoice : IJsonModel<ChatFunctionChoice>, IPersistableModel<ChatFunctionChoice> {
1660 public static ChatFunctionChoice CreateAutoChoice();
1661 public static ChatFunctionChoice CreateNamedChoice(string functionName);
1662 public static ChatFunctionChoice CreateNoneChoice();
1663 [Experimental("OPENAI001")]
1664 protected virtual ChatFunctionChoice JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
1665 [Experimental("OPENAI001")]
1666 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
1667 [Experimental("OPENAI001")]
1668 protected virtual ChatFunctionChoice PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
1669 [Experimental("OPENAI001")]
1670 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
1671 }
1672 public readonly partial struct ChatImageDetailLevel : IEquatable<ChatImageDetailLevel> {
1673 public ChatImageDetailLevel(string value);
1674 public static ChatImageDetailLevel Auto { get; }
1675 public static ChatImageDetailLevel High { get; }
1676 public static ChatImageDetailLevel Low { get; }
1677 public readonly bool Equals(ChatImageDetailLevel other);
1678 [EditorBrowsable(EditorBrowsableState.Never)]
1679 public override readonly bool Equals(object obj);
1680 [EditorBrowsable(EditorBrowsableState.Never)]
1681 public override readonly int GetHashCode();
1682 public static bool operator ==(ChatImageDetailLevel left, ChatImageDetailLevel right);
1683 public static implicit operator ChatImageDetailLevel(string value);
1684 public static bool operator !=(ChatImageDetailLevel left, ChatImageDetailLevel right);
1685 public override readonly string ToString();
1686 }
1687 [Experimental("OPENAI001")]
1688 public readonly partial struct ChatInputAudioFormat : IEquatable<ChatInputAudioFormat> {
1689 public ChatInputAudioFormat(string value);
1690 public static ChatInputAudioFormat Mp3 { get; }
1691 public static ChatInputAudioFormat Wav { get; }
1692 public readonly bool Equals(ChatInputAudioFormat other);
1693 [EditorBrowsable(EditorBrowsableState.Never)]
1694 public override readonly bool Equals(object obj);
1695 [EditorBrowsable(EditorBrowsableState.Never)]
1696 public override readonly int GetHashCode();
1697 public static bool operator ==(ChatInputAudioFormat left, ChatInputAudioFormat right);
1698 public static implicit operator ChatInputAudioFormat(string value);
1699 public static bool operator !=(ChatInputAudioFormat left, ChatInputAudioFormat right);
1700 public override readonly string ToString();
1701 }
1702 public class ChatInputTokenUsageDetails : IJsonModel<ChatInputTokenUsageDetails>, IPersistableModel<ChatInputTokenUsageDetails> {
1703 public int AudioTokenCount { get; }
1704 public int CachedTokenCount { get; }
1705 [Experimental("OPENAI001")]
1706 protected virtual ChatInputTokenUsageDetails JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
1707 [Experimental("OPENAI001")]
1708 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
1709 [Experimental("OPENAI001")]
1710 protected virtual ChatInputTokenUsageDetails PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
1711 [Experimental("OPENAI001")]
1712 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
1713 }
1714 public class ChatMessage : IJsonModel<ChatMessage>, IPersistableModel<ChatMessage> {
1715 public ChatMessageContent Content { get; }
1716 public static AssistantChatMessage CreateAssistantMessage(ChatCompletion chatCompletion);
1717 public static AssistantChatMessage CreateAssistantMessage(ChatFunctionCall functionCall);
1718 public static AssistantChatMessage CreateAssistantMessage(params ChatMessageContentPart[] contentParts);
1719 [Experimental("OPENAI001")]
1720 public static AssistantChatMessage CreateAssistantMessage(ChatOutputAudioReference outputAudioReference);
1721 public static AssistantChatMessage CreateAssistantMessage(IEnumerable<ChatMessageContentPart> contentParts);
1722 public static AssistantChatMessage CreateAssistantMessage(IEnumerable<ChatToolCall> toolCalls);
1723 public static AssistantChatMessage CreateAssistantMessage(string content);
1724 [Experimental("OPENAI001")]
1725 public static DeveloperChatMessage CreateDeveloperMessage(params ChatMessageContentPart[] contentParts);
1726 [Experimental("OPENAI001")]
1727 public static DeveloperChatMessage CreateDeveloperMessage(IEnumerable<ChatMessageContentPart> contentParts);
1728 [Experimental("OPENAI001")]
1729 public static DeveloperChatMessage CreateDeveloperMessage(string content);
1730 [Obsolete("This method is obsolete. Please use CreateToolMessage instead.")]
1731 public static FunctionChatMessage CreateFunctionMessage(string functionName, string content);
1732 public static SystemChatMessage CreateSystemMessage(params ChatMessageContentPart[] contentParts);
1733 public static SystemChatMessage CreateSystemMessage(IEnumerable<ChatMessageContentPart> contentParts);
1734 public static SystemChatMessage CreateSystemMessage(string content);
1735 public static ToolChatMessage CreateToolMessage(string toolCallId, params ChatMessageContentPart[] contentParts);
1736 public static ToolChatMessage CreateToolMessage(string toolCallId, IEnumerable<ChatMessageContentPart> contentParts);
1737 public static ToolChatMessage CreateToolMessage(string toolCallId, string content);
1738 public static UserChatMessage CreateUserMessage(params ChatMessageContentPart[] contentParts);
1739 public static UserChatMessage CreateUserMessage(IEnumerable<ChatMessageContentPart> contentParts);
1740 public static UserChatMessage CreateUserMessage(string content);
1741 [Experimental("OPENAI001")]
1742 protected virtual ChatMessage JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
1743 [Experimental("OPENAI001")]
1744 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
1745 public static implicit operator ChatMessage(string content);
1746 [Experimental("OPENAI001")]
1747 protected virtual ChatMessage PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
1748 [Experimental("OPENAI001")]
1749 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
1750 }
1751 [Experimental("OPENAI001")]
1752 public class ChatMessageAnnotation : IJsonModel<ChatMessageAnnotation>, IPersistableModel<ChatMessageAnnotation> {
1753 public int EndIndex { get; }
1754 public int StartIndex { get; }
1755 public string WebResourceTitle { get; }
1756 public Uri WebResourceUri { get; }
1757 protected virtual ChatMessageAnnotation JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
1758 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
1759 protected virtual ChatMessageAnnotation PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
1760 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
1761 }
1762 public class ChatMessageContent : ObjectModel.Collection<ChatMessageContentPart> {
1763 public ChatMessageContent();
1764 public ChatMessageContent(params ChatMessageContentPart[] contentParts);
1765 public ChatMessageContent(IEnumerable<ChatMessageContentPart> contentParts);
1766 public ChatMessageContent(string content);
1767 }
1768 public class ChatMessageContentPart : IJsonModel<ChatMessageContentPart>, IPersistableModel<ChatMessageContentPart> {
1769 [Experimental("OPENAI001")]
1770 public BinaryData FileBytes { get; }
1771 [Experimental("OPENAI001")]
1772 public string FileBytesMediaType { get; }
1773 [Experimental("OPENAI001")]
1774 public string FileId { get; }
1775 [Experimental("OPENAI001")]
1776 public string Filename { get; }
1777 public BinaryData ImageBytes { get; }
1778 public string ImageBytesMediaType { get; }
1779 public ChatImageDetailLevel? ImageDetailLevel { get; }
1780 public Uri ImageUri { get; }
1781 [Experimental("OPENAI001")]
1782 public BinaryData InputAudioBytes { get; }
1783 [Experimental("OPENAI001")]
1784 public ChatInputAudioFormat? InputAudioFormat { get; }
1785 public ChatMessageContentPartKind Kind { get; }
1786 public string Refusal { get; }
1787 public string Text { get; }
1788 [Experimental("OPENAI001")]
1789 public static ChatMessageContentPart CreateFilePart(BinaryData fileBytes, string fileBytesMediaType, string filename);
1790 [Experimental("OPENAI001")]
1791 public static ChatMessageContentPart CreateFilePart(string fileId);
1792 public static ChatMessageContentPart CreateImagePart(BinaryData imageBytes, string imageBytesMediaType, ChatImageDetailLevel? imageDetailLevel = null);
1793 public static ChatMessageContentPart CreateImagePart(Uri imageUri, ChatImageDetailLevel? imageDetailLevel = null);
1794 [Experimental("OPENAI001")]
1795 public static ChatMessageContentPart CreateInputAudioPart(BinaryData inputAudioBytes, ChatInputAudioFormat inputAudioFormat);
1796 public static ChatMessageContentPart CreateRefusalPart(string refusal);
1797 public static ChatMessageContentPart CreateTextPart(string text);
1798 [Experimental("OPENAI001")]
1799 protected virtual ChatMessageContentPart JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
1800 [Experimental("OPENAI001")]
1801 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
1802 public static implicit operator ChatMessageContentPart(string text);
1803 [Experimental("OPENAI001")]
1804 protected virtual ChatMessageContentPart PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
1805 [Experimental("OPENAI001")]
1806 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
1807 }
1808 public enum ChatMessageContentPartKind {
1809 Text = 0,
1810 Refusal = 1,
1811 Image = 2,
1812 InputAudio = 3,
1813 File = 4
1814 }
1815 public enum ChatMessageRole {
1816 System = 0,
1817 User = 1,
1818 Assistant = 2,
1819 Tool = 3,
1820 Function = 4,
1821 Developer = 5
1822 }
1823 [Experimental("OPENAI001")]
1824 public class ChatOutputAudio : IJsonModel<ChatOutputAudio>, IPersistableModel<ChatOutputAudio> {
1825 public BinaryData AudioBytes { get; }
1826 public DateTimeOffset ExpiresAt { get; }
1827 public string Id { get; }
1828 public string Transcript { get; }
1829 protected virtual ChatOutputAudio JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
1830 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
1831 protected virtual ChatOutputAudio PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
1832 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
1833 }
1834 [Experimental("OPENAI001")]
1835 public readonly partial struct ChatOutputAudioFormat : IEquatable<ChatOutputAudioFormat> {
1836 public ChatOutputAudioFormat(string value);
1837 public static ChatOutputAudioFormat Aac { get; }
1838 public static ChatOutputAudioFormat Flac { get; }
1839 public static ChatOutputAudioFormat Mp3 { get; }
1840 public static ChatOutputAudioFormat Opus { get; }
1841 public static ChatOutputAudioFormat Pcm16 { get; }
1842 public static ChatOutputAudioFormat Wav { get; }
1843 public readonly bool Equals(ChatOutputAudioFormat other);
1844 [EditorBrowsable(EditorBrowsableState.Never)]
1845 public override readonly bool Equals(object obj);
1846 [EditorBrowsable(EditorBrowsableState.Never)]
1847 public override readonly int GetHashCode();
1848 public static bool operator ==(ChatOutputAudioFormat left, ChatOutputAudioFormat right);
1849 public static implicit operator ChatOutputAudioFormat(string value);
1850 public static bool operator !=(ChatOutputAudioFormat left, ChatOutputAudioFormat right);
1851 public override readonly string ToString();
1852 }
1853 [Experimental("OPENAI001")]
1854 public class ChatOutputAudioReference : IJsonModel<ChatOutputAudioReference>, IPersistableModel<ChatOutputAudioReference> {
1855 public ChatOutputAudioReference(string id);
1856 public string Id { get; }
1857 protected virtual ChatOutputAudioReference JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
1858 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
1859 protected virtual ChatOutputAudioReference PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
1860 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
1861 }
1862 [Experimental("OPENAI001")]
1863 public readonly partial struct ChatOutputAudioVoice : IEquatable<ChatOutputAudioVoice> {
1864 public ChatOutputAudioVoice(string value);
1865 public static ChatOutputAudioVoice Alloy { get; }
1866 public static ChatOutputAudioVoice Ash { get; }
1867 public static ChatOutputAudioVoice Ballad { get; }
1868 public static ChatOutputAudioVoice Coral { get; }
1869 public static ChatOutputAudioVoice Echo { get; }
1870 public static ChatOutputAudioVoice Fable { get; }
1871 public static ChatOutputAudioVoice Nova { get; }
1872 public static ChatOutputAudioVoice Onyx { get; }
1873 public static ChatOutputAudioVoice Sage { get; }
1874 public static ChatOutputAudioVoice Shimmer { get; }
1875 public static ChatOutputAudioVoice Verse { get; }
1876 public readonly bool Equals(ChatOutputAudioVoice other);
1877 [EditorBrowsable(EditorBrowsableState.Never)]
1878 public override readonly bool Equals(object obj);
1879 [EditorBrowsable(EditorBrowsableState.Never)]
1880 public override readonly int GetHashCode();
1881 public static bool operator ==(ChatOutputAudioVoice left, ChatOutputAudioVoice right);
1882 public static implicit operator ChatOutputAudioVoice(string value);
1883 public static bool operator !=(ChatOutputAudioVoice left, ChatOutputAudioVoice right);
1884 public override readonly string ToString();
1885 }
1886 [Experimental("OPENAI001")]
1887 public class ChatOutputPrediction : IJsonModel<ChatOutputPrediction>, IPersistableModel<ChatOutputPrediction> {
1888 public static ChatOutputPrediction CreateStaticContentPrediction(IEnumerable<ChatMessageContentPart> staticContentParts);
1889 public static ChatOutputPrediction CreateStaticContentPrediction(string staticContent);
1890 protected virtual ChatOutputPrediction JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
1891 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
1892 protected virtual ChatOutputPrediction PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
1893 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
1894 }
1895 public class ChatOutputTokenUsageDetails : IJsonModel<ChatOutputTokenUsageDetails>, IPersistableModel<ChatOutputTokenUsageDetails> {
1896 [Experimental("OPENAI001")]
1897 public int AcceptedPredictionTokenCount { get; }
1898 public int AudioTokenCount { get; }
1899 public int ReasoningTokenCount { get; }
1900 [Experimental("OPENAI001")]
1901 public int RejectedPredictionTokenCount { get; }
1902 [Experimental("OPENAI001")]
1903 protected virtual ChatOutputTokenUsageDetails JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
1904 [Experimental("OPENAI001")]
1905 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
1906 [Experimental("OPENAI001")]
1907 protected virtual ChatOutputTokenUsageDetails PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
1908 [Experimental("OPENAI001")]
1909 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
1910 }
1911 [Experimental("OPENAI001")]
1912 public readonly partial struct ChatReasoningEffortLevel : IEquatable<ChatReasoningEffortLevel> {
1913 public ChatReasoningEffortLevel(string value);
1914 public static ChatReasoningEffortLevel High { get; }
1915 public static ChatReasoningEffortLevel Low { get; }
1916 public static ChatReasoningEffortLevel Medium { get; }
1917 public readonly bool Equals(ChatReasoningEffortLevel other);
1918 [EditorBrowsable(EditorBrowsableState.Never)]
1919 public override readonly bool Equals(object obj);
1920 [EditorBrowsable(EditorBrowsableState.Never)]
1921 public override readonly int GetHashCode();
1922 public static bool operator ==(ChatReasoningEffortLevel left, ChatReasoningEffortLevel right);
1923 public static implicit operator ChatReasoningEffortLevel(string value);
1924 public static bool operator !=(ChatReasoningEffortLevel left, ChatReasoningEffortLevel right);
1925 public override readonly string ToString();
1926 }
1927 public class ChatResponseFormat : IJsonModel<ChatResponseFormat>, IPersistableModel<ChatResponseFormat> {
1928 public static ChatResponseFormat CreateJsonObjectFormat();
1929 public static ChatResponseFormat CreateJsonSchemaFormat(string jsonSchemaFormatName, BinaryData jsonSchema, string jsonSchemaFormatDescription = null, bool? jsonSchemaIsStrict = null);
1930 public static ChatResponseFormat CreateTextFormat();
1931 [Experimental("OPENAI001")]
1932 protected virtual ChatResponseFormat JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
1933 [Experimental("OPENAI001")]
1934 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
1935 [Experimental("OPENAI001")]
1936 protected virtual ChatResponseFormat PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
1937 [Experimental("OPENAI001")]
1938 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
1939 }
1940 [Experimental("OPENAI001")]
1941 [Flags]
1942 public enum ChatResponseModalities {
1943 Default = 0,
1944 Text = 1,
1945 Audio = 2
1946 }
1947 public class ChatTokenLogProbabilityDetails : IJsonModel<ChatTokenLogProbabilityDetails>, IPersistableModel<ChatTokenLogProbabilityDetails> {
1948 public float LogProbability { get; }
1949 public string Token { get; }
1950 public IReadOnlyList<ChatTokenTopLogProbabilityDetails> TopLogProbabilities { get; }
1951 public ReadOnlyMemory<byte>? Utf8Bytes { get; }
1952 [Experimental("OPENAI001")]
1953 protected virtual ChatTokenLogProbabilityDetails JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
1954 [Experimental("OPENAI001")]
1955 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
1956 [Experimental("OPENAI001")]
1957 protected virtual ChatTokenLogProbabilityDetails PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
1958 [Experimental("OPENAI001")]
1959 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
1960 }
1961 public class ChatTokenTopLogProbabilityDetails : IJsonModel<ChatTokenTopLogProbabilityDetails>, IPersistableModel<ChatTokenTopLogProbabilityDetails> {
1962 public float LogProbability { get; }
1963 public string Token { get; }
1964 public ReadOnlyMemory<byte>? Utf8Bytes { get; }
1965 [Experimental("OPENAI001")]
1966 protected virtual ChatTokenTopLogProbabilityDetails JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
1967 [Experimental("OPENAI001")]
1968 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
1969 [Experimental("OPENAI001")]
1970 protected virtual ChatTokenTopLogProbabilityDetails PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
1971 [Experimental("OPENAI001")]
1972 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
1973 }
1974 public class ChatTokenUsage : IJsonModel<ChatTokenUsage>, IPersistableModel<ChatTokenUsage> {
1975 public int InputTokenCount { get; }
1976 public ChatInputTokenUsageDetails InputTokenDetails { get; }
1977 public int OutputTokenCount { get; }
1978 public ChatOutputTokenUsageDetails OutputTokenDetails { get; }
1979 public int TotalTokenCount { get; }
1980 [Experimental("OPENAI001")]
1981 protected virtual ChatTokenUsage JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
1982 [Experimental("OPENAI001")]
1983 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
1984 [Experimental("OPENAI001")]
1985 protected virtual ChatTokenUsage PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
1986 [Experimental("OPENAI001")]
1987 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
1988 }
1989 public class ChatTool : IJsonModel<ChatTool>, IPersistableModel<ChatTool> {
1990 public string FunctionDescription { get; }
1991 public string FunctionName { get; }
1992 public BinaryData FunctionParameters { get; }
1993 public bool? FunctionSchemaIsStrict { get; }
1994 public ChatToolKind Kind { get; }
1995 public static ChatTool CreateFunctionTool(string functionName, string functionDescription = null, BinaryData functionParameters = null, bool? functionSchemaIsStrict = null);
1996 [Experimental("OPENAI001")]
1997 protected virtual ChatTool JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
1998 [Experimental("OPENAI001")]
1999 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
2000 [Experimental("OPENAI001")]
2001 protected virtual ChatTool PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
2002 [Experimental("OPENAI001")]
2003 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
2004 }
2005 public class ChatToolCall : IJsonModel<ChatToolCall>, IPersistableModel<ChatToolCall> {
2006 public BinaryData FunctionArguments { get; }
2007 public string FunctionName { get; }
2008 public string Id { get; set; }
2009 public ChatToolCallKind Kind { get; }
2010 public static ChatToolCall CreateFunctionToolCall(string id, string functionName, BinaryData functionArguments);
2011 [Experimental("OPENAI001")]
2012 protected virtual ChatToolCall JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
2013 [Experimental("OPENAI001")]
2014 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
2015 [Experimental("OPENAI001")]
2016 protected virtual ChatToolCall PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
2017 [Experimental("OPENAI001")]
2018 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
2019 }
2020 public enum ChatToolCallKind {
2021 Function = 0
2022 }
2023 public class ChatToolChoice : IJsonModel<ChatToolChoice>, IPersistableModel<ChatToolChoice> {
2024 public static ChatToolChoice CreateAutoChoice();
2025 public static ChatToolChoice CreateFunctionChoice(string functionName);
2026 public static ChatToolChoice CreateNoneChoice();
2027 public static ChatToolChoice CreateRequiredChoice();
2028 [Experimental("OPENAI001")]
2029 protected virtual ChatToolChoice JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
2030 [Experimental("OPENAI001")]
2031 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
2032 [Experimental("OPENAI001")]
2033 protected virtual ChatToolChoice PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
2034 [Experimental("OPENAI001")]
2035 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
2036 }
2037 public enum ChatToolKind {
2038 Function = 0
2039 }
2040 [Experimental("OPENAI001")]
2041 public class ChatWebSearchOptions : IJsonModel<ChatWebSearchOptions>, IPersistableModel<ChatWebSearchOptions> {
2042 protected virtual ChatWebSearchOptions JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
2043 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
2044 protected virtual ChatWebSearchOptions PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
2045 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
2046 }
2047 [Experimental("OPENAI001")]
2048 public class DeveloperChatMessage : ChatMessage, IJsonModel<DeveloperChatMessage>, IPersistableModel<DeveloperChatMessage> {
2049 public DeveloperChatMessage(params ChatMessageContentPart[] contentParts);
2050 public DeveloperChatMessage(IEnumerable<ChatMessageContentPart> contentParts);
2051 public DeveloperChatMessage(string content);
2052 public string ParticipantName { get; set; }
2053 protected override ChatMessage JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
2054 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
2055 protected override ChatMessage PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
2056 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
2057 }
2058 [Obsolete("This class is obsolete. Please use ToolChatMessage instead.")]
2059 public class FunctionChatMessage : ChatMessage, IJsonModel<FunctionChatMessage>, IPersistableModel<FunctionChatMessage> {
2060 public FunctionChatMessage(string functionName, string content);
2061 public string FunctionName { get; }
2062 [Experimental("OPENAI001")]
2063 protected override ChatMessage JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
2064 [Experimental("OPENAI001")]
2065 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
2066 [Experimental("OPENAI001")]
2067 protected override ChatMessage PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
2068 [Experimental("OPENAI001")]
2069 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
2070 }
2071 public static class OpenAIChatModelFactory {
2072 [Experimental("OPENAI001")]
2073 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, string systemFingerprint = null, ChatTokenUsage usage = null, ChatOutputAudio outputAudio = null, IEnumerable<ChatMessageAnnotation> messageAnnotations = null);
2074 [EditorBrowsable(EditorBrowsableState.Never)]
2075 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);
2076 public static ChatInputTokenUsageDetails ChatInputTokenUsageDetails(int audioTokenCount = 0, int cachedTokenCount = 0);
2077 [Experimental("OPENAI001")]
2078 public static ChatMessageAnnotation ChatMessageAnnotation(int startIndex = 0, int endIndex = 0, Uri webResourceUri = null, string webResourceTitle = null);
2079 [Experimental("OPENAI001")]
2080 public static ChatOutputAudio ChatOutputAudio(BinaryData audioBytes, string id = null, string transcript = null, DateTimeOffset expiresAt = default);
2081 [Experimental("OPENAI001")]
2082 public static ChatOutputTokenUsageDetails ChatOutputTokenUsageDetails(int reasoningTokenCount = 0, int audioTokenCount = 0, int acceptedPredictionTokenCount = 0, int rejectedPredictionTokenCount = 0);
2083 [EditorBrowsable(EditorBrowsableState.Never)]
2084 public static ChatOutputTokenUsageDetails ChatOutputTokenUsageDetails(int reasoningTokenCount, int audioTokenCount);
2085 [EditorBrowsable(EditorBrowsableState.Never)]
2086 public static ChatOutputTokenUsageDetails ChatOutputTokenUsageDetails(int reasoningTokenCount);
2087 public static ChatTokenLogProbabilityDetails ChatTokenLogProbabilityDetails(string token = null, float logProbability = 0, ReadOnlyMemory<byte>? utf8Bytes = null, IEnumerable<ChatTokenTopLogProbabilityDetails> topLogProbabilities = null);
2088 public static ChatTokenTopLogProbabilityDetails ChatTokenTopLogProbabilityDetails(string token = null, float logProbability = 0, ReadOnlyMemory<byte>? utf8Bytes = null);
2089 public static ChatTokenUsage ChatTokenUsage(int outputTokenCount = 0, int inputTokenCount = 0, int totalTokenCount = 0, ChatOutputTokenUsageDetails outputTokenDetails = null, ChatInputTokenUsageDetails inputTokenDetails = null);
2090 [EditorBrowsable(EditorBrowsableState.Never)]
2091 public static ChatTokenUsage ChatTokenUsage(int outputTokenCount, int inputTokenCount, int totalTokenCount, ChatOutputTokenUsageDetails outputTokenDetails);
2092 [Experimental("OPENAI001")]
2093 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, string systemFingerprint = null, ChatTokenUsage usage = null, StreamingChatOutputAudioUpdate outputAudioUpdate = null);
2094 [EditorBrowsable(EditorBrowsableState.Never)]
2095 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);
2096 [Obsolete("This class is obsolete. Please use StreamingChatToolCallUpdate instead.")]
2097 public static StreamingChatFunctionCallUpdate StreamingChatFunctionCallUpdate(string functionName = null, BinaryData functionArgumentsUpdate = null);
2098 [Experimental("OPENAI001")]
2099 public static StreamingChatOutputAudioUpdate StreamingChatOutputAudioUpdate(string id = null, DateTimeOffset? expiresAt = null, string transcriptUpdate = null, BinaryData audioBytesUpdate = null);
2100 public static StreamingChatToolCallUpdate StreamingChatToolCallUpdate(int index = 0, string toolCallId = null, ChatToolCallKind kind = ChatToolCallKind.Function, string functionName = null, BinaryData functionArgumentsUpdate = null);
2101 }
2102 public class StreamingChatCompletionUpdate : IJsonModel<StreamingChatCompletionUpdate>, IPersistableModel<StreamingChatCompletionUpdate> {
2103 public string CompletionId { get; }
2104 public IReadOnlyList<ChatTokenLogProbabilityDetails> ContentTokenLogProbabilities { get; }
2105 public ChatMessageContent ContentUpdate { get; }
2106 public DateTimeOffset CreatedAt { get; }
2107 public ChatFinishReason? FinishReason { get; }
2108 [Obsolete("This property is obsolete. Please use ToolCallUpdates instead.")]
2109 public StreamingChatFunctionCallUpdate FunctionCallUpdate { get; }
2110 public string Model { get; }
2111 [Experimental("OPENAI001")]
2112 public StreamingChatOutputAudioUpdate OutputAudioUpdate { get; }
2113 public IReadOnlyList<ChatTokenLogProbabilityDetails> RefusalTokenLogProbabilities { get; }
2114 public string RefusalUpdate { get; }
2115 public ChatMessageRole? Role { get; }
2116 public string SystemFingerprint { get; }
2117 public IReadOnlyList<StreamingChatToolCallUpdate> ToolCallUpdates { get; }
2118 public ChatTokenUsage Usage { get; }
2119 [Experimental("OPENAI001")]
2120 protected virtual StreamingChatCompletionUpdate JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
2121 [Experimental("OPENAI001")]
2122 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
2123 [Experimental("OPENAI001")]
2124 protected virtual StreamingChatCompletionUpdate PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
2125 [Experimental("OPENAI001")]
2126 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
2127 }
2128 [Obsolete("This class is obsolete. Please use StreamingChatToolCallUpdate instead.")]
2129 public class StreamingChatFunctionCallUpdate : IJsonModel<StreamingChatFunctionCallUpdate>, IPersistableModel<StreamingChatFunctionCallUpdate> {
2130 public BinaryData FunctionArgumentsUpdate { get; }
2131 public string FunctionName { get; }
2132 [Experimental("OPENAI001")]
2133 protected virtual StreamingChatFunctionCallUpdate JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
2134 [Experimental("OPENAI001")]
2135 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
2136 [Experimental("OPENAI001")]
2137 protected virtual StreamingChatFunctionCallUpdate PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
2138 [Experimental("OPENAI001")]
2139 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
2140 }
2141 [Experimental("OPENAI001")]
2142 public class StreamingChatOutputAudioUpdate : IJsonModel<StreamingChatOutputAudioUpdate>, IPersistableModel<StreamingChatOutputAudioUpdate> {
2143 public BinaryData AudioBytesUpdate { get; }
2144 public DateTimeOffset? ExpiresAt { get; }
2145 public string Id { get; }
2146 public string TranscriptUpdate { get; }
2147 protected virtual StreamingChatOutputAudioUpdate JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
2148 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
2149 protected virtual StreamingChatOutputAudioUpdate PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
2150 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
2151 }
2152 public class StreamingChatToolCallUpdate : IJsonModel<StreamingChatToolCallUpdate>, IPersistableModel<StreamingChatToolCallUpdate> {
2153 public BinaryData FunctionArgumentsUpdate { get; }
2154 public string FunctionName { get; }
2155 public int Index { get; }
2156 public ChatToolCallKind Kind { get; }
2157 public string ToolCallId { get; }
2158 [Experimental("OPENAI001")]
2159 protected virtual StreamingChatToolCallUpdate JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
2160 [Experimental("OPENAI001")]
2161 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
2162 [Experimental("OPENAI001")]
2163 protected virtual StreamingChatToolCallUpdate PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
2164 [Experimental("OPENAI001")]
2165 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
2166 }
2167 public class SystemChatMessage : ChatMessage, IJsonModel<SystemChatMessage>, IPersistableModel<SystemChatMessage> {
2168 public SystemChatMessage(params ChatMessageContentPart[] contentParts);
2169 public SystemChatMessage(IEnumerable<ChatMessageContentPart> contentParts);
2170 public SystemChatMessage(string content);
2171 public string ParticipantName { get; set; }
2172 [Experimental("OPENAI001")]
2173 protected override ChatMessage JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
2174 [Experimental("OPENAI001")]
2175 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
2176 [Experimental("OPENAI001")]
2177 protected override ChatMessage PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
2178 [Experimental("OPENAI001")]
2179 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
2180 }
2181 public class ToolChatMessage : ChatMessage, IJsonModel<ToolChatMessage>, IPersistableModel<ToolChatMessage> {
2182 public ToolChatMessage(string toolCallId, params ChatMessageContentPart[] contentParts);
2183 public ToolChatMessage(string toolCallId, IEnumerable<ChatMessageContentPart> contentParts);
2184 public ToolChatMessage(string toolCallId, string content);
2185 public string ToolCallId { get; }
2186 [Experimental("OPENAI001")]
2187 protected override ChatMessage JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
2188 [Experimental("OPENAI001")]
2189 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
2190 [Experimental("OPENAI001")]
2191 protected override ChatMessage PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
2192 [Experimental("OPENAI001")]
2193 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
2194 }
2195 public class UserChatMessage : ChatMessage, IJsonModel<UserChatMessage>, IPersistableModel<UserChatMessage> {
2196 public UserChatMessage(params ChatMessageContentPart[] contentParts);
2197 public UserChatMessage(IEnumerable<ChatMessageContentPart> contentParts);
2198 public UserChatMessage(string content);
2199 public string ParticipantName { get; set; }
2200 [Experimental("OPENAI001")]
2201 protected override ChatMessage JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
2202 [Experimental("OPENAI001")]
2203 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
2204 [Experimental("OPENAI001")]
2205 protected override ChatMessage PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
2206 [Experimental("OPENAI001")]
2207 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
2208 }
2209}
2210namespace OpenAI.Containers {
2211 [Experimental("OPENAI001")]
2212 public class ContainerClient {
2213 protected ContainerClient();
2214 public ContainerClient(ApiKeyCredential credential, OpenAIClientOptions options);
2215 public ContainerClient(ApiKeyCredential credential);
2216 public ContainerClient(AuthenticationPolicy authenticationPolicy, OpenAIClientOptions options);
2217 public ContainerClient(AuthenticationPolicy authenticationPolicy);
2218 protected internal ContainerClient(ClientPipeline pipeline, OpenAIClientOptions options);
2219 public ContainerClient(string apiKey);
2220 public ClientPipeline Pipeline { get; }
2221 public virtual ClientResult CreateContainer(BinaryContent content, RequestOptions options = null);
2222 public virtual Task<ClientResult> CreateContainerAsync(BinaryContent content, RequestOptions options = null);
2223 public virtual ClientResult CreateContainerFile(string containerId, BinaryContent content, string contentType, RequestOptions options = null);
2224 public virtual Task<ClientResult> CreateContainerFileAsync(string containerId, BinaryContent content, string contentType, RequestOptions options = null);
2225 public virtual ClientResult DeleteContainer(string containerId, RequestOptions options = null);
2226 public virtual Task<ClientResult> DeleteContainerAsync(string containerId, RequestOptions options = null);
2227 public virtual ClientResult DeleteContainerFile(string containerId, string fileId, RequestOptions options = null);
2228 public virtual Task<ClientResult> DeleteContainerFileAsync(string containerId, string fileId, RequestOptions options = null);
2229 public virtual ClientResult GetContainer(string containerId, RequestOptions options = null);
2230 public virtual Task<ClientResult> GetContainerAsync(string containerId, RequestOptions options = null);
2231 public virtual ClientResult GetContainerFile(string containerId, string fileId, RequestOptions options = null);
2232 public virtual Task<ClientResult> GetContainerFileAsync(string containerId, string fileId, RequestOptions options = null);
2233 public virtual ClientResult GetContainerFileContent(string containerId, string fileId, RequestOptions options = null);
2234 public virtual Task<ClientResult> GetContainerFileContentAsync(string containerId, string fileId, RequestOptions options = null);
2235 public virtual ClientResult GetContainerFiles(string containerId, int? limit = null, string order = null, string after = null, RequestOptions options = null);
2236 public virtual Task<ClientResult> GetContainerFilesAsync(string containerId, int? limit = null, string order = null, string after = null, RequestOptions options = null);
2237 public virtual ClientResult GetContainers(int? limit = null, string order = null, string after = null, RequestOptions options = null);
2238 public virtual Task<ClientResult> GetContainersAsync(int? limit = null, string order = null, string after = null, RequestOptions options = null);
2239 }
2240 [Experimental("OPENAI001")]
2241 public class ContainerFileListResource : IJsonModel<ContainerFileListResource>, IPersistableModel<ContainerFileListResource> {
2242 public IList<ContainerFileResource> Data { get; }
2243 public string FirstId { get; }
2244 public bool HasMore { get; }
2245 public string LastId { get; }
2246 public string Object { get; }
2247 protected virtual ContainerFileListResource JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
2248 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
2249 protected virtual ContainerFileListResource PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
2250 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
2251 }
2252 [Experimental("OPENAI001")]
2253 public class ContainerFileResource : IJsonModel<ContainerFileResource>, IPersistableModel<ContainerFileResource> {
2254 public int Bytes { get; }
2255 public string ContainerId { get; }
2256 public DateTimeOffset CreatedAt { get; }
2257 public string Id { get; }
2258 public string Object { get; }
2259 public string Path { get; }
2260 public string Source { get; }
2261 protected virtual ContainerFileResource JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
2262 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
2263 protected virtual ContainerFileResource PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
2264 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
2265 }
2266 [Experimental("OPENAI001")]
2267 public class ContainerListResource : IJsonModel<ContainerListResource>, IPersistableModel<ContainerListResource> {
2268 public IList<ContainerResource> Data { get; }
2269 public string FirstId { get; }
2270 public bool HasMore { get; }
2271 public string LastId { get; }
2272 public string Object { get; }
2273 protected virtual ContainerListResource JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
2274 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
2275 protected virtual ContainerListResource PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
2276 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
2277 }
2278 [Experimental("OPENAI001")]
2279 public class ContainerResource : IJsonModel<ContainerResource>, IPersistableModel<ContainerResource> {
2280 public DateTimeOffset CreatedAt { get; }
2281 public ContainerResourceExpiresAfter ExpiresAfter { get; }
2282 public string Id { get; }
2283 public string Name { get; }
2284 public string Object { get; }
2285 public string Status { get; }
2286 protected virtual ContainerResource JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
2287 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
2288 protected virtual ContainerResource PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
2289 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
2290 }
2291 [Experimental("OPENAI001")]
2292 public class ContainerResourceExpiresAfter : IJsonModel<ContainerResourceExpiresAfter>, IPersistableModel<ContainerResourceExpiresAfter> {
2293 public string Anchor { get; }
2294 public int? Minutes { get; }
2295 protected virtual ContainerResourceExpiresAfter JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
2296 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
2297 protected virtual ContainerResourceExpiresAfter PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
2298 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
2299 }
2300 [Experimental("OPENAI001")]
2301 public class CreateContainerBody : IJsonModel<CreateContainerBody>, IPersistableModel<CreateContainerBody> {
2302 public CreateContainerBodyExpiresAfter ExpiresAfter { get; }
2303 public IList<string> FileIds { get; }
2304 public string Name { get; }
2305 protected virtual CreateContainerBody JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
2306 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
2307 protected virtual CreateContainerBody PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
2308 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
2309 }
2310 [Experimental("OPENAI001")]
2311 public class CreateContainerBodyExpiresAfter : IJsonModel<CreateContainerBodyExpiresAfter>, IPersistableModel<CreateContainerBodyExpiresAfter> {
2312 public string Anchor { get; }
2313 public int Minutes { get; }
2314 protected virtual CreateContainerBodyExpiresAfter JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
2315 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
2316 protected virtual CreateContainerBodyExpiresAfter PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
2317 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
2318 }
2319 [Experimental("OPENAI001")]
2320 public class CreateContainerFileBody : IJsonModel<CreateContainerFileBody>, IPersistableModel<CreateContainerFileBody> {
2321 public BinaryData File { get; }
2322 public string FileId { get; }
2323 protected virtual CreateContainerFileBody JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
2324 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
2325 protected virtual CreateContainerFileBody PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
2326 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
2327 }
2328 [Experimental("OPENAI001")]
2329 public class DeleteContainerFileResponse : IJsonModel<DeleteContainerFileResponse>, IPersistableModel<DeleteContainerFileResponse> {
2330 public bool Deleted { get; }
2331 public string Id { get; }
2332 public string Object { get; }
2333 protected virtual DeleteContainerFileResponse JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
2334 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
2335 protected virtual DeleteContainerFileResponse PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
2336 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
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 protected virtual DeleteContainerResponse JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
2344 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
2345 protected virtual DeleteContainerResponse PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
2346 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
2347 }
2348}
2349namespace OpenAI.Embeddings {
2350 public class EmbeddingClient {
2351 protected EmbeddingClient();
2352 protected internal EmbeddingClient(ClientPipeline pipeline, string model, OpenAIClientOptions options);
2353 public EmbeddingClient(string model, ApiKeyCredential credential, OpenAIClientOptions options);
2354 public EmbeddingClient(string model, ApiKeyCredential credential);
2355 [Experimental("OPENAI001")]
2356 public EmbeddingClient(string model, AuthenticationPolicy authenticationPolicy, OpenAIClientOptions options);
2357 [Experimental("OPENAI001")]
2358 public EmbeddingClient(string model, AuthenticationPolicy authenticationPolicy);
2359 public EmbeddingClient(string model, string apiKey);
2360 [Experimental("OPENAI001")]
2361 public string Model { get; }
2362 public ClientPipeline Pipeline { get; }
2363 public virtual ClientResult<OpenAIEmbedding> GenerateEmbedding(string input, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = default);
2364 public virtual Task<ClientResult<OpenAIEmbedding>> GenerateEmbeddingAsync(string input, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = default);
2365 public virtual ClientResult GenerateEmbeddings(BinaryContent content, RequestOptions options = null);
2366 public virtual ClientResult<OpenAIEmbeddingCollection> GenerateEmbeddings(IEnumerable<ReadOnlyMemory<int>> inputs, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = default);
2367 public virtual ClientResult<OpenAIEmbeddingCollection> GenerateEmbeddings(IEnumerable<string> inputs, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = default);
2368 public virtual Task<ClientResult> GenerateEmbeddingsAsync(BinaryContent content, RequestOptions options = null);
2369 public virtual Task<ClientResult<OpenAIEmbeddingCollection>> GenerateEmbeddingsAsync(IEnumerable<ReadOnlyMemory<int>> inputs, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = default);
2370 public virtual Task<ClientResult<OpenAIEmbeddingCollection>> GenerateEmbeddingsAsync(IEnumerable<string> inputs, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = default);
2371 }
2372 public class EmbeddingGenerationOptions : IJsonModel<EmbeddingGenerationOptions>, IPersistableModel<EmbeddingGenerationOptions> {
2373 public int? Dimensions { get; set; }
2374 public string EndUserId { get; set; }
2375 [Experimental("OPENAI001")]
2376 protected virtual EmbeddingGenerationOptions JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
2377 [Experimental("OPENAI001")]
2378 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
2379 [Experimental("OPENAI001")]
2380 protected virtual EmbeddingGenerationOptions PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
2381 [Experimental("OPENAI001")]
2382 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
2383 }
2384 public class EmbeddingTokenUsage : IJsonModel<EmbeddingTokenUsage>, IPersistableModel<EmbeddingTokenUsage> {
2385 public int InputTokenCount { get; }
2386 public int TotalTokenCount { get; }
2387 [Experimental("OPENAI001")]
2388 protected virtual EmbeddingTokenUsage JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
2389 [Experimental("OPENAI001")]
2390 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
2391 [Experimental("OPENAI001")]
2392 protected virtual EmbeddingTokenUsage PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
2393 [Experimental("OPENAI001")]
2394 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
2395 }
2396 public class OpenAIEmbedding : IJsonModel<OpenAIEmbedding>, IPersistableModel<OpenAIEmbedding> {
2397 public int Index { get; }
2398 [Experimental("OPENAI001")]
2399 protected virtual OpenAIEmbedding JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
2400 [Experimental("OPENAI001")]
2401 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
2402 [Experimental("OPENAI001")]
2403 protected virtual OpenAIEmbedding PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
2404 [Experimental("OPENAI001")]
2405 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
2406 public ReadOnlyMemory<float> ToFloats();
2407 }
2408 public class OpenAIEmbeddingCollection : ObjectModel.ReadOnlyCollection<OpenAIEmbedding>, IJsonModel<OpenAIEmbeddingCollection>, IPersistableModel<OpenAIEmbeddingCollection> {
2409 public string Model { get; }
2410 public EmbeddingTokenUsage Usage { get; }
2411 [Experimental("OPENAI001")]
2412 protected virtual OpenAIEmbeddingCollection JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
2413 [Experimental("OPENAI001")]
2414 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
2415 [Experimental("OPENAI001")]
2416 protected virtual OpenAIEmbeddingCollection PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
2417 [Experimental("OPENAI001")]
2418 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
2419 }
2420 public static class OpenAIEmbeddingsModelFactory {
2421 public static EmbeddingTokenUsage EmbeddingTokenUsage(int inputTokenCount = 0, int totalTokenCount = 0);
2422 public static OpenAIEmbedding OpenAIEmbedding(int index = 0, IEnumerable<float> vector = null);
2423 public static OpenAIEmbeddingCollection OpenAIEmbeddingCollection(IEnumerable<OpenAIEmbedding> items = null, string model = null, EmbeddingTokenUsage usage = null);
2424 }
2425}
2426namespace OpenAI.Evals {
2427 [Experimental("OPENAI001")]
2428 public class EvaluationClient {
2429 protected EvaluationClient();
2430 public EvaluationClient(ApiKeyCredential credential, OpenAIClientOptions options);
2431 public EvaluationClient(ApiKeyCredential credential);
2432 public EvaluationClient(AuthenticationPolicy authenticationPolicy, OpenAIClientOptions options);
2433 public EvaluationClient(AuthenticationPolicy authenticationPolicy);
2434 protected internal EvaluationClient(ClientPipeline pipeline, OpenAIClientOptions options);
2435 public EvaluationClient(string apiKey);
2436 public ClientPipeline Pipeline { get; }
2437 public virtual ClientResult CancelEvaluationRun(string evaluationId, string evaluationRunId, RequestOptions options);
2438 public virtual Task<ClientResult> CancelEvaluationRunAsync(string evaluationId, string evaluationRunId, RequestOptions options);
2439 public virtual ClientResult CreateEvaluation(BinaryContent content, RequestOptions options = null);
2440 public virtual Task<ClientResult> CreateEvaluationAsync(BinaryContent content, RequestOptions options = null);
2441 public virtual ClientResult CreateEvaluationRun(string evaluationId, BinaryContent content, RequestOptions options = null);
2442 public virtual Task<ClientResult> CreateEvaluationRunAsync(string evaluationId, BinaryContent content, RequestOptions options = null);
2443 public virtual ClientResult DeleteEvaluation(string evaluationId, RequestOptions options);
2444 public virtual Task<ClientResult> DeleteEvaluationAsync(string evaluationId, RequestOptions options);
2445 public virtual ClientResult DeleteEvaluationRun(string evaluationId, string evaluationRunId, RequestOptions options);
2446 public virtual Task<ClientResult> DeleteEvaluationRunAsync(string evaluationId, string evaluationRunId, RequestOptions options);
2447 public virtual ClientResult GetEvaluation(string evaluationId, RequestOptions options);
2448 public virtual Task<ClientResult> GetEvaluationAsync(string evaluationId, RequestOptions options);
2449 public virtual ClientResult GetEvaluationRun(string evaluationId, string evaluationRunId, RequestOptions options);
2450 public virtual Task<ClientResult> GetEvaluationRunAsync(string evaluationId, string evaluationRunId, RequestOptions options);
2451 public virtual ClientResult GetEvaluationRunOutputItem(string evaluationId, string evaluationRunId, string outputItemId, RequestOptions options);
2452 public virtual Task<ClientResult> GetEvaluationRunOutputItemAsync(string evaluationId, string evaluationRunId, string outputItemId, RequestOptions options);
2453 public virtual ClientResult GetEvaluationRunOutputItems(string evaluationId, string evaluationRunId, int? limit, string order, string after, string outputItemStatus, RequestOptions options);
2454 public virtual Task<ClientResult> GetEvaluationRunOutputItemsAsync(string evaluationId, string evaluationRunId, int? limit, string order, string after, string outputItemStatus, RequestOptions options);
2455 public virtual ClientResult GetEvaluationRuns(string evaluationId, int? limit, string order, string after, string evaluationRunStatus, RequestOptions options);
2456 public virtual Task<ClientResult> GetEvaluationRunsAsync(string evaluationId, int? limit, string order, string after, string evaluationRunStatus, RequestOptions options);
2457 public virtual ClientResult GetEvaluations(int? limit, string orderBy, string order, string after, RequestOptions options);
2458 public virtual Task<ClientResult> GetEvaluationsAsync(int? limit, string orderBy, string order, string after, RequestOptions options);
2459 public virtual ClientResult UpdateEvaluation(string evaluationId, BinaryContent content, RequestOptions options = null);
2460 public virtual Task<ClientResult> UpdateEvaluationAsync(string evaluationId, BinaryContent content, RequestOptions options = null);
2461 }
2462}
2463namespace OpenAI.Files {
2464 public class FileDeletionResult : IJsonModel<FileDeletionResult>, IPersistableModel<FileDeletionResult> {
2465 public bool Deleted { get; }
2466 public string FileId { get; }
2467 [Experimental("OPENAI001")]
2468 protected virtual FileDeletionResult JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
2469 [Experimental("OPENAI001")]
2470 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
2471 [Experimental("OPENAI001")]
2472 protected virtual FileDeletionResult PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
2473 [Experimental("OPENAI001")]
2474 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
2475 }
2476 public enum FilePurpose {
2477 Assistants = 0,
2478 AssistantsOutput = 1,
2479 Batch = 2,
2480 BatchOutput = 3,
2481 FineTune = 4,
2482 FineTuneResults = 5,
2483 Vision = 6,
2484 UserData = 7,
2485 Evaluations = 8
2486 }
2487 [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.")]
2488 public enum FileStatus {
2489 Uploaded = 0,
2490 Processed = 1,
2491 Error = 2
2492 }
2493 public readonly partial struct FileUploadPurpose : IEquatable<FileUploadPurpose> {
2494 public FileUploadPurpose(string value);
2495 public static FileUploadPurpose Assistants { get; }
2496 public static FileUploadPurpose Batch { get; }
2497 [Experimental("OPENAI001")]
2498 public static FileUploadPurpose Evaluations { get; }
2499 public static FileUploadPurpose FineTune { get; }
2500 [Experimental("OPENAI001")]
2501 public static FileUploadPurpose UserData { get; }
2502 public static FileUploadPurpose Vision { get; }
2503 public readonly bool Equals(FileUploadPurpose other);
2504 [EditorBrowsable(EditorBrowsableState.Never)]
2505 public override readonly bool Equals(object obj);
2506 [EditorBrowsable(EditorBrowsableState.Never)]
2507 public override readonly int GetHashCode();
2508 public static bool operator ==(FileUploadPurpose left, FileUploadPurpose right);
2509 public static implicit operator FileUploadPurpose(string value);
2510 public static bool operator !=(FileUploadPurpose left, FileUploadPurpose right);
2511 public override readonly string ToString();
2512 }
2513 public class OpenAIFile : IJsonModel<OpenAIFile>, IPersistableModel<OpenAIFile> {
2514 public DateTimeOffset CreatedAt { get; }
2515 [Experimental("OPENAI001")]
2516 public DateTimeOffset? ExpiresAt { get; }
2517 public string Filename { get; }
2518 public string Id { get; }
2519 public FilePurpose Purpose { get; }
2520 [EditorBrowsable(EditorBrowsableState.Never)]
2521 public int? SizeInBytes { get; }
2522 [Experimental("OPENAI001")]
2523 public long? SizeInBytesLong { get; }
2524 [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.")]
2525 public FileStatus Status { get; }
2526 [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.")]
2527 public string StatusDetails { get; }
2528 [Experimental("OPENAI001")]
2529 protected virtual OpenAIFile JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
2530 [Experimental("OPENAI001")]
2531 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
2532 [Experimental("OPENAI001")]
2533 protected virtual OpenAIFile PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
2534 [Experimental("OPENAI001")]
2535 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
2536 }
2537 public class OpenAIFileClient {
2538 protected OpenAIFileClient();
2539 public OpenAIFileClient(ApiKeyCredential credential, OpenAIClientOptions options);
2540 public OpenAIFileClient(ApiKeyCredential credential);
2541 [Experimental("OPENAI001")]
2542 public OpenAIFileClient(AuthenticationPolicy authenticationPolicy, OpenAIClientOptions options);
2543 [Experimental("OPENAI001")]
2544 public OpenAIFileClient(AuthenticationPolicy authenticationPolicy);
2545 protected internal OpenAIFileClient(ClientPipeline pipeline, OpenAIClientOptions options);
2546 public OpenAIFileClient(string apiKey);
2547 public ClientPipeline Pipeline { get; }
2548 [Experimental("OPENAI001")]
2549 public virtual ClientResult AddUploadPart(string uploadId, BinaryContent content, string contentType, RequestOptions options = null);
2550 [Experimental("OPENAI001")]
2551 public virtual Task<ClientResult> AddUploadPartAsync(string uploadId, BinaryContent content, string contentType, RequestOptions options = null);
2552 [Experimental("OPENAI001")]
2553 public virtual ClientResult CancelUpload(string uploadId, RequestOptions options = null);
2554 [Experimental("OPENAI001")]
2555 public virtual Task<ClientResult> CancelUploadAsync(string uploadId, RequestOptions options = null);
2556 [Experimental("OPENAI001")]
2557 public virtual ClientResult CompleteUpload(string uploadId, BinaryContent content, RequestOptions options = null);
2558 [Experimental("OPENAI001")]
2559 public virtual Task<ClientResult> CompleteUploadAsync(string uploadId, BinaryContent content, RequestOptions options = null);
2560 [Experimental("OPENAI001")]
2561 public virtual ClientResult CreateUpload(BinaryContent content, RequestOptions options = null);
2562 [Experimental("OPENAI001")]
2563 public virtual Task<ClientResult> CreateUploadAsync(BinaryContent content, RequestOptions options = null);
2564 public virtual ClientResult DeleteFile(string fileId, RequestOptions options);
2565 public virtual ClientResult<FileDeletionResult> DeleteFile(string fileId, CancellationToken cancellationToken = default);
2566 public virtual Task<ClientResult> DeleteFileAsync(string fileId, RequestOptions options);
2567 public virtual Task<ClientResult<FileDeletionResult>> DeleteFileAsync(string fileId, CancellationToken cancellationToken = default);
2568 public virtual ClientResult DownloadFile(string fileId, RequestOptions options);
2569 public virtual ClientResult<BinaryData> DownloadFile(string fileId, CancellationToken cancellationToken = default);
2570 public virtual Task<ClientResult> DownloadFileAsync(string fileId, RequestOptions options);
2571 public virtual Task<ClientResult<BinaryData>> DownloadFileAsync(string fileId, CancellationToken cancellationToken = default);
2572 public virtual ClientResult GetFile(string fileId, RequestOptions options);
2573 public virtual ClientResult<OpenAIFile> GetFile(string fileId, CancellationToken cancellationToken = default);
2574 public virtual Task<ClientResult> GetFileAsync(string fileId, RequestOptions options);
2575 public virtual Task<ClientResult<OpenAIFile>> GetFileAsync(string fileId, CancellationToken cancellationToken = default);
2576 public virtual ClientResult<OpenAIFileCollection> GetFiles(FilePurpose purpose, CancellationToken cancellationToken = default);
2577 public virtual ClientResult GetFiles(string purpose, RequestOptions options);
2578 public virtual ClientResult<OpenAIFileCollection> GetFiles(CancellationToken cancellationToken = default);
2579 public virtual Task<ClientResult<OpenAIFileCollection>> GetFilesAsync(FilePurpose purpose, CancellationToken cancellationToken = default);
2580 public virtual Task<ClientResult> GetFilesAsync(string purpose, RequestOptions options);
2581 public virtual Task<ClientResult<OpenAIFileCollection>> GetFilesAsync(CancellationToken cancellationToken = default);
2582 public virtual ClientResult<OpenAIFile> UploadFile(BinaryData file, string filename, FileUploadPurpose purpose);
2583 public virtual ClientResult UploadFile(BinaryContent content, string contentType, RequestOptions options = null);
2584 public virtual ClientResult<OpenAIFile> UploadFile(Stream file, string filename, FileUploadPurpose purpose, CancellationToken cancellationToken = default);
2585 public virtual ClientResult<OpenAIFile> UploadFile(string filePath, FileUploadPurpose purpose);
2586 public virtual Task<ClientResult<OpenAIFile>> UploadFileAsync(BinaryData file, string filename, FileUploadPurpose purpose);
2587 public virtual Task<ClientResult> UploadFileAsync(BinaryContent content, string contentType, RequestOptions options = null);
2588 public virtual Task<ClientResult<OpenAIFile>> UploadFileAsync(Stream file, string filename, FileUploadPurpose purpose, CancellationToken cancellationToken = default);
2589 public virtual Task<ClientResult<OpenAIFile>> UploadFileAsync(string filePath, FileUploadPurpose purpose);
2590 }
2591 public class OpenAIFileCollection : ObjectModel.ReadOnlyCollection<OpenAIFile>, IJsonModel<OpenAIFileCollection>, IPersistableModel<OpenAIFileCollection> {
2592 [Experimental("OPENAI001")]
2593 protected virtual OpenAIFileCollection JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
2594 [Experimental("OPENAI001")]
2595 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
2596 [Experimental("OPENAI001")]
2597 protected virtual OpenAIFileCollection PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
2598 [Experimental("OPENAI001")]
2599 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
2600 }
2601 public static class OpenAIFilesModelFactory {
2602 public static FileDeletionResult FileDeletionResult(string fileId = null, bool deleted = false);
2603 public static OpenAIFileCollection OpenAIFileCollection(IEnumerable<OpenAIFile> items = null);
2604 [Experimental("OPENAI001")]
2605 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);
2606 [EditorBrowsable(EditorBrowsableState.Never)]
2607 public static OpenAIFile OpenAIFileInfo(string id, int? sizeInBytes, DateTimeOffset createdAt, string filename, FilePurpose purpose, FileStatus status, string statusDetails);
2608 }
2609}
2610namespace OpenAI.FineTuning {
2611 [Experimental("OPENAI001")]
2612 public class FineTuningCheckpoint : IJsonModel<FineTuningCheckpoint>, IPersistableModel<FineTuningCheckpoint> {
2613 public DateTimeOffset CreatedAt { get; }
2614 public string Id { get; }
2615 public string JobId { get; }
2616 public FineTuningCheckpointMetrics Metrics { get; }
2617 public string ModelId { get; }
2618 public int StepNumber { get; }
2619 protected virtual FineTuningCheckpoint JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
2620 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
2621 protected virtual FineTuningCheckpoint PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
2622 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
2623 public override string ToString();
2624 }
2625 [Experimental("OPENAI001")]
2626 public class FineTuningCheckpointMetrics : IJsonModel<FineTuningCheckpointMetrics>, IPersistableModel<FineTuningCheckpointMetrics> {
2627 public float? FullValidLoss { get; }
2628 public float? FullValidMeanTokenAccuracy { get; }
2629 public int StepNumber { get; }
2630 public float? TrainLoss { get; }
2631 public float? TrainMeanTokenAccuracy { get; }
2632 public float? ValidLoss { get; }
2633 public float? ValidMeanTokenAccuracy { get; }
2634 protected virtual FineTuningCheckpointMetrics JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
2635 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
2636 protected virtual FineTuningCheckpointMetrics PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
2637 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
2638 }
2639 [Experimental("OPENAI001")]
2640 public class FineTuningClient {
2641 protected FineTuningClient();
2642 public FineTuningClient(ApiKeyCredential credential, OpenAIClientOptions options);
2643 public FineTuningClient(ApiKeyCredential credential);
2644 public FineTuningClient(AuthenticationPolicy authenticationPolicy, OpenAIClientOptions options);
2645 public FineTuningClient(AuthenticationPolicy authenticationPolicy);
2646 protected internal FineTuningClient(ClientPipeline pipeline, OpenAIClientOptions options);
2647 protected internal FineTuningClient(ClientPipeline pipeline, Uri endpoint);
2648 public FineTuningClient(string apiKey);
2649 public ClientPipeline Pipeline { get; }
2650 public virtual ClientResult CreateFineTuningCheckpointPermission(string fineTunedModelCheckpoint, BinaryContent content, RequestOptions options = null);
2651 public virtual Task<ClientResult> CreateFineTuningCheckpointPermissionAsync(string fineTunedModelCheckpoint, BinaryContent content, RequestOptions options = null);
2652 public virtual ClientResult DeleteFineTuningCheckpointPermission(string fineTunedModelCheckpoint, string permissionId, RequestOptions options);
2653 public virtual Task<ClientResult> DeleteFineTuningCheckpointPermissionAsync(string fineTunedModelCheckpoint, string permissionId, RequestOptions options);
2654 public virtual FineTuningJob FineTune(BinaryContent content, bool waitUntilCompleted, RequestOptions options);
2655 public virtual FineTuningJob FineTune(string baseModel, string trainingFileId, bool waitUntilCompleted, FineTuningOptions options = null, CancellationToken cancellationToken = default);
2656 public virtual Task<FineTuningJob> FineTuneAsync(BinaryContent content, bool waitUntilCompleted, RequestOptions options);
2657 public virtual Task<FineTuningJob> FineTuneAsync(string baseModel, string trainingFileId, bool waitUntilCompleted, FineTuningOptions options = null, CancellationToken cancellationToken = default);
2658 public virtual ClientResult GetFineTuningCheckpointPermissions(string fineTunedModelCheckpoint, string after, int? limit, string order, string projectId, RequestOptions options);
2659 public virtual Task<ClientResult> GetFineTuningCheckpointPermissionsAsync(string fineTunedModelCheckpoint, string after, int? limit, string order, string projectId, RequestOptions options);
2660 public virtual FineTuningJob GetJob(string jobId, CancellationToken cancellationToken = default);
2661 public virtual Task<FineTuningJob> GetJobAsync(string jobId, CancellationToken cancellationToken = default);
2662 public virtual CollectionResult<FineTuningJob> GetJobs(FineTuningJobCollectionOptions options = null, CancellationToken cancellationToken = default);
2663 public virtual AsyncCollectionResult<FineTuningJob> GetJobsAsync(FineTuningJobCollectionOptions options = null, CancellationToken cancellationToken = default);
2664 public virtual ClientResult PauseFineTuningJob(string fineTuningJobId, RequestOptions options);
2665 public virtual Task<ClientResult> PauseFineTuningJobAsync(string fineTuningJobId, RequestOptions options);
2666 public virtual ClientResult ResumeFineTuningJob(string fineTuningJobId, RequestOptions options);
2667 public virtual Task<ClientResult> ResumeFineTuningJobAsync(string fineTuningJobId, RequestOptions options);
2668 }
2669 [Experimental("OPENAI001")]
2670 public class FineTuningError : IJsonModel<FineTuningError>, IPersistableModel<FineTuningError> {
2671 public string Code { get; }
2672 public string InvalidParameter { get; }
2673 public string Message { get; }
2674 protected virtual FineTuningError JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
2675 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
2676 protected virtual FineTuningError PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
2677 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
2678 }
2679 [Experimental("OPENAI001")]
2680 public class FineTuningEvent : IJsonModel<FineTuningEvent>, IPersistableModel<FineTuningEvent> {
2681 public string Level;
2682 public DateTimeOffset CreatedAt { get; }
2683 public BinaryData Data { get; }
2684 public string Id { get; }
2685 public FineTuningJobEventKind? Kind { get; }
2686 public string Message { get; }
2687 protected virtual FineTuningEvent JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
2688 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
2689 protected virtual FineTuningEvent PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
2690 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
2691 }
2692 [Experimental("OPENAI001")]
2693 public readonly partial struct FineTuningHyperparameters : IJsonModel<FineTuningHyperparameters>, IPersistableModel<FineTuningHyperparameters>, IJsonModel<object>, IPersistableModel<object> {
2694 public int BatchSize { get; }
2695 public int EpochCount { get; }
2696 public float LearningRateMultiplier { get; }
2697 }
2698 [Experimental("OPENAI001")]
2699 public class FineTuningIntegration : IJsonModel<FineTuningIntegration>, IPersistableModel<FineTuningIntegration> {
2700 protected virtual FineTuningIntegration JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
2701 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
2702 protected virtual FineTuningIntegration PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
2703 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
2704 }
2705 [Experimental("OPENAI001")]
2706 public class FineTuningJob : OperationResult {
2707 public string? Value;
2708 public string BaseModel { get; }
2709 public int BillableTrainedTokenCount { get; }
2710 public DateTimeOffset? EstimatedFinishAt { get; }
2711 [Obsolete("This property is deprecated. Use the MethodHyperparameters property instead.")]
2712 public FineTuningHyperparameters Hyperparameters { get; }
2713 public IReadOnlyList<FineTuningIntegration> Integrations { get; }
2714 public string JobId { get; }
2715 public IDictionary<string, string> Metadata { get; }
2716 public MethodHyperparameters? MethodHyperparameters { get; }
2717 public override ContinuationToken? RehydrationToken { get; protected set; }
2718 public IReadOnlyList<string> ResultFileIds { get; }
2719 public int? Seed { get; }
2720 public FineTuningStatus Status { get; }
2721 public string TrainingFileId { get; }
2722 public FineTuningTrainingMethod? TrainingMethod { get; }
2723 public string? UserProvidedSuffix { get; }
2724 public string ValidationFileId { get; }
2725 public virtual ClientResult Cancel(RequestOptions options);
2726 public virtual ClientResult CancelAndUpdate(CancellationToken cancellationToken = default);
2727 public virtual Task<ClientResult> CancelAndUpdateAsync(CancellationToken cancellationToken = default);
2728 public virtual Task<ClientResult> CancelAsync(RequestOptions options);
2729 public virtual CollectionResult<FineTuningCheckpoint> GetCheckpoints(GetCheckpointsOptions? options = null, CancellationToken cancellationToken = default);
2730 public virtual CollectionResult GetCheckpoints(string? after, int? limit, RequestOptions? options);
2731 public virtual AsyncCollectionResult<FineTuningCheckpoint> GetCheckpointsAsync(GetCheckpointsOptions? options = null, CancellationToken cancellationToken = default);
2732 public virtual AsyncCollectionResult GetCheckpointsAsync(string? after, int? limit, RequestOptions? options);
2733 public virtual CollectionResult<FineTuningEvent> GetEvents(GetEventsOptions options, CancellationToken cancellationToken = default);
2734 public virtual CollectionResult GetEvents(string? after, int? limit, RequestOptions options);
2735 public virtual AsyncCollectionResult<FineTuningEvent> GetEventsAsync(GetEventsOptions options, CancellationToken cancellationToken = default);
2736 public virtual AsyncCollectionResult GetEventsAsync(string? after, int? limit, RequestOptions options);
2737 public static FineTuningJob Rehydrate(FineTuningClient client, ContinuationToken rehydrationToken, RequestOptions options);
2738 public static FineTuningJob Rehydrate(FineTuningClient client, ContinuationToken rehydrationToken, CancellationToken cancellationToken = default);
2739 public static FineTuningJob Rehydrate(FineTuningClient client, string JobId, RequestOptions options);
2740 public static FineTuningJob Rehydrate(FineTuningClient client, string JobId, CancellationToken cancellationToken = default);
2741 public static Task<FineTuningJob> RehydrateAsync(FineTuningClient client, ContinuationToken rehydrationToken, RequestOptions options);
2742 public static Task<FineTuningJob> RehydrateAsync(FineTuningClient client, ContinuationToken rehydrationToken, CancellationToken cancellationToken = default);
2743 public static Task<FineTuningJob> RehydrateAsync(FineTuningClient client, string JobId, RequestOptions options);
2744 public static Task<FineTuningJob> RehydrateAsync(FineTuningClient client, string JobId, CancellationToken cancellationToken = default);
2745 public override ClientResult UpdateStatus(RequestOptions? options);
2746 public ClientResult UpdateStatus(CancellationToken cancellationToken = default);
2747 public override ValueTask<ClientResult> UpdateStatusAsync(RequestOptions? options);
2748 public ValueTask<ClientResult> UpdateStatusAsync(CancellationToken cancellationToken = default);
2749 public override void WaitForCompletion(CancellationToken cancellationToken = default);
2750 public override ValueTask WaitForCompletionAsync(CancellationToken cancellationToken = default);
2751 }
2752 [Experimental("OPENAI001")]
2753 public class FineTuningJobCollectionOptions {
2754 public string AfterJobId { get; set; }
2755 public int? PageSize { get; set; }
2756 }
2757 [Experimental("OPENAI001")]
2758 public readonly partial struct FineTuningJobEventKind : IEquatable<FineTuningJobEventKind> {
2759 public FineTuningJobEventKind(string value);
2760 public static FineTuningJobEventKind Message { get; }
2761 public static FineTuningJobEventKind Metrics { get; }
2762 public readonly bool Equals(FineTuningJobEventKind other);
2763 [EditorBrowsable(EditorBrowsableState.Never)]
2764 public override readonly bool Equals(object obj);
2765 [EditorBrowsable(EditorBrowsableState.Never)]
2766 public override readonly int GetHashCode();
2767 public static bool operator ==(FineTuningJobEventKind left, FineTuningJobEventKind right);
2768 public static implicit operator FineTuningJobEventKind(string value);
2769 public static bool operator !=(FineTuningJobEventKind left, FineTuningJobEventKind right);
2770 public override readonly string ToString();
2771 }
2772 [Experimental("OPENAI001")]
2773 public class FineTuningOptions : IJsonModel<FineTuningOptions>, IPersistableModel<FineTuningOptions> {
2774 public IList<FineTuningIntegration> Integrations { get; }
2775 public IDictionary<string, string> Metadata { get; }
2776 public int? Seed { get; set; }
2777 public string Suffix { get; set; }
2778 public FineTuningTrainingMethod TrainingMethod { get; set; }
2779 public string ValidationFile { get; set; }
2780 protected virtual FineTuningOptions JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
2781 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
2782 protected virtual FineTuningOptions PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
2783 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
2784 }
2785 [Experimental("OPENAI001")]
2786 public readonly partial struct FineTuningStatus : IEquatable<string>, IEquatable<FineTuningStatus> {
2787 public FineTuningStatus(string value);
2788 public static FineTuningStatus Cancelled { get; }
2789 public static FineTuningStatus Failed { get; }
2790 public bool InProgress { get; }
2791 public static FineTuningStatus Queued { get; }
2792 public static FineTuningStatus Running { get; }
2793 public static FineTuningStatus Succeeded { get; }
2794 public static FineTuningStatus ValidatingFiles { get; }
2795 public readonly bool Equals(FineTuningStatus other);
2796 [EditorBrowsable(EditorBrowsableState.Never)]
2797 public override readonly bool Equals(object obj);
2798 public readonly bool Equals(string other);
2799 [EditorBrowsable(EditorBrowsableState.Never)]
2800 public override readonly int GetHashCode();
2801 public static bool operator ==(FineTuningStatus left, FineTuningStatus right);
2802 public static implicit operator FineTuningStatus(string value);
2803 public static bool operator !=(FineTuningStatus left, FineTuningStatus right);
2804 public override readonly string ToString();
2805 }
2806 [Experimental("OPENAI001")]
2807 public class FineTuningTrainingMethod : IJsonModel<FineTuningTrainingMethod>, IPersistableModel<FineTuningTrainingMethod> {
2808 public static FineTuningTrainingMethod CreateDirectPreferenceOptimization(HyperparameterBatchSize batchSize = null, HyperparameterEpochCount epochCount = null, HyperparameterLearningRate learningRate = null, HyperparameterBetaFactor betaFactor = null);
2809 public static FineTuningTrainingMethod CreateSupervised(HyperparameterBatchSize batchSize = null, HyperparameterEpochCount epochCount = null, HyperparameterLearningRate learningRate = null);
2810 protected virtual FineTuningTrainingMethod JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
2811 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
2812 protected virtual FineTuningTrainingMethod PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
2813 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
2814 }
2815 [Experimental("OPENAI001")]
2816 public class GetCheckpointsOptions {
2817 public string AfterCheckpointId { get; set; }
2818 public int? PageSize { get; set; }
2819 }
2820 [Experimental("OPENAI001")]
2821 public class GetEventsOptions {
2822 public string AfterEventId { get; set; }
2823 public int? PageSize { get; set; }
2824 }
2825 [Experimental("OPENAI001")]
2826 public class HyperparameterBatchSize : IEquatable<int>, IEquatable<string>, IJsonModel<HyperparameterBatchSize>, IPersistableModel<HyperparameterBatchSize> {
2827 public HyperparameterBatchSize(int batchSize);
2828 public static HyperparameterBatchSize CreateAuto();
2829 public static HyperparameterBatchSize CreateSize(int batchSize);
2830 [EditorBrowsable(EditorBrowsableState.Never)]
2831 public bool Equals(int other);
2832 [EditorBrowsable(EditorBrowsableState.Never)]
2833 public override bool Equals(object other);
2834 [EditorBrowsable(EditorBrowsableState.Never)]
2835 public bool Equals(string other);
2836 [EditorBrowsable(EditorBrowsableState.Never)]
2837 public override int GetHashCode();
2838 [EditorBrowsable(EditorBrowsableState.Never)]
2839 public static bool operator ==(HyperparameterBatchSize first, HyperparameterBatchSize second);
2840 public static implicit operator HyperparameterBatchSize(int batchSize);
2841 [EditorBrowsable(EditorBrowsableState.Never)]
2842 public static bool operator !=(HyperparameterBatchSize first, HyperparameterBatchSize second);
2843 }
2844 [Experimental("OPENAI001")]
2845 public class HyperparameterBetaFactor : IEquatable<int>, IEquatable<string>, IJsonModel<HyperparameterBetaFactor>, IPersistableModel<HyperparameterBetaFactor> {
2846 public HyperparameterBetaFactor(int beta);
2847 public static HyperparameterBetaFactor CreateAuto();
2848 public static HyperparameterBetaFactor CreateBeta(int beta);
2849 [EditorBrowsable(EditorBrowsableState.Never)]
2850 public bool Equals(int other);
2851 [EditorBrowsable(EditorBrowsableState.Never)]
2852 public override bool Equals(object other);
2853 [EditorBrowsable(EditorBrowsableState.Never)]
2854 public bool Equals(string other);
2855 [EditorBrowsable(EditorBrowsableState.Never)]
2856 public override int GetHashCode();
2857 [EditorBrowsable(EditorBrowsableState.Never)]
2858 public static bool operator ==(HyperparameterBetaFactor first, HyperparameterBetaFactor second);
2859 public static implicit operator HyperparameterBetaFactor(int beta);
2860 [EditorBrowsable(EditorBrowsableState.Never)]
2861 public static bool operator !=(HyperparameterBetaFactor first, HyperparameterBetaFactor second);
2862 }
2863 [Experimental("OPENAI001")]
2864 public class HyperparameterEpochCount : IEquatable<int>, IEquatable<string>, IJsonModel<HyperparameterEpochCount>, IPersistableModel<HyperparameterEpochCount> {
2865 public HyperparameterEpochCount(int epochCount);
2866 public static HyperparameterEpochCount CreateAuto();
2867 public static HyperparameterEpochCount CreateEpochCount(int epochCount);
2868 [EditorBrowsable(EditorBrowsableState.Never)]
2869 public bool Equals(int other);
2870 [EditorBrowsable(EditorBrowsableState.Never)]
2871 public override bool Equals(object other);
2872 [EditorBrowsable(EditorBrowsableState.Never)]
2873 public bool Equals(string other);
2874 [EditorBrowsable(EditorBrowsableState.Never)]
2875 public override int GetHashCode();
2876 [EditorBrowsable(EditorBrowsableState.Never)]
2877 public static bool operator ==(HyperparameterEpochCount first, HyperparameterEpochCount second);
2878 public static implicit operator HyperparameterEpochCount(int epochCount);
2879 [EditorBrowsable(EditorBrowsableState.Never)]
2880 public static bool operator !=(HyperparameterEpochCount first, HyperparameterEpochCount second);
2881 }
2882 [Experimental("OPENAI001")]
2883 public class HyperparameterLearningRate : IEquatable<double>, IEquatable<int>, IEquatable<string>, IJsonModel<HyperparameterLearningRate>, IPersistableModel<HyperparameterLearningRate> {
2884 public HyperparameterLearningRate(double learningRateMultiplier);
2885 public static HyperparameterLearningRate CreateAuto();
2886 public static HyperparameterLearningRate CreateMultiplier(double learningRateMultiplier);
2887 [EditorBrowsable(EditorBrowsableState.Never)]
2888 public bool Equals(double other);
2889 [EditorBrowsable(EditorBrowsableState.Never)]
2890 public bool Equals(int other);
2891 [EditorBrowsable(EditorBrowsableState.Never)]
2892 public override bool Equals(object other);
2893 [EditorBrowsable(EditorBrowsableState.Never)]
2894 public bool Equals(string other);
2895 [EditorBrowsable(EditorBrowsableState.Never)]
2896 public override int GetHashCode();
2897 [EditorBrowsable(EditorBrowsableState.Never)]
2898 public static bool operator ==(HyperparameterLearningRate first, HyperparameterLearningRate second);
2899 public static implicit operator HyperparameterLearningRate(double learningRateMultiplier);
2900 [EditorBrowsable(EditorBrowsableState.Never)]
2901 public static bool operator !=(HyperparameterLearningRate first, HyperparameterLearningRate second);
2902 }
2903 [Experimental("OPENAI001")]
2904 public class HyperparametersForDPO : MethodHyperparameters, IJsonModel<HyperparametersForDPO>, IPersistableModel<HyperparametersForDPO> {
2905 public int BatchSize { get; }
2906 public float Beta { get; }
2907 public int EpochCount { get; }
2908 public float LearningRateMultiplier { get; }
2909 protected virtual HyperparametersForDPO JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
2910 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
2911 protected virtual HyperparametersForDPO PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
2912 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
2913 }
2914 [Experimental("OPENAI001")]
2915 public class HyperparametersForSupervised : MethodHyperparameters, IJsonModel<HyperparametersForSupervised>, IPersistableModel<HyperparametersForSupervised> {
2916 public int BatchSize { get; }
2917 public int EpochCount { get; }
2918 public float LearningRateMultiplier { get; }
2919 protected virtual HyperparametersForSupervised JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
2920 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
2921 protected virtual HyperparametersForSupervised PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
2922 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
2923 }
2924 [Experimental("OPENAI001")]
2925 public class MethodHyperparameters {
2926 }
2927 [Experimental("OPENAI001")]
2928 public class WeightsAndBiasesIntegration : FineTuningIntegration, IJsonModel<WeightsAndBiasesIntegration>, IPersistableModel<WeightsAndBiasesIntegration> {
2929 public WeightsAndBiasesIntegration(string projectName);
2930 public string DisplayName { get; set; }
2931 public string EntityName { get; set; }
2932 public string ProjectName { get; set; }
2933 public IList<string> Tags { get; }
2934 protected override FineTuningIntegration JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
2935 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
2936 protected override FineTuningIntegration PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
2937 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
2938 }
2939}
2940namespace OpenAI.Graders {
2941 [Experimental("OPENAI001")]
2942 public class FineTuneReinforcementHyperparameters : IJsonModel<FineTuneReinforcementHyperparameters>, IPersistableModel<FineTuneReinforcementHyperparameters> {
2943 public BinaryData BatchSize { get; set; }
2944 public BinaryData ComputeMultiplier { get; set; }
2945 public BinaryData EvalInterval { get; set; }
2946 public BinaryData EvalSamples { get; set; }
2947 public BinaryData LearningRateMultiplier { get; set; }
2948 public BinaryData NEpochs { get; set; }
2949 protected virtual FineTuneReinforcementHyperparameters JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
2950 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
2951 protected virtual FineTuneReinforcementHyperparameters PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
2952 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
2953 }
2954 [Experimental("OPENAI001")]
2955 [PersistableModelProxy(typeof(UnknownGrader))]
2956 public class Grader : IJsonModel<Grader>, IPersistableModel<Grader> {
2957 protected virtual Grader JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
2958 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
2959 protected virtual Grader PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
2960 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
2961 }
2962 [Experimental("OPENAI001")]
2963 public class GraderClient {
2964 protected GraderClient();
2965 public GraderClient(ApiKeyCredential credential, OpenAIClientOptions options);
2966 public GraderClient(ApiKeyCredential credential);
2967 public GraderClient(AuthenticationPolicy authenticationPolicy, OpenAIClientOptions options);
2968 public GraderClient(AuthenticationPolicy authenticationPolicy);
2969 protected internal GraderClient(ClientPipeline pipeline, OpenAIClientOptions options);
2970 public GraderClient(string apiKey);
2971 public ClientPipeline Pipeline { get; }
2972 public virtual ClientResult RunGrader(BinaryContent content, RequestOptions options = null);
2973 public virtual Task<ClientResult> RunGraderAsync(BinaryContent content, RequestOptions options = null);
2974 public virtual ClientResult ValidateGrader(BinaryContent content, RequestOptions options = null);
2975 public virtual Task<ClientResult> ValidateGraderAsync(BinaryContent content, RequestOptions options = null);
2976 }
2977 [Experimental("OPENAI001")]
2978 public class GraderLabelModel : Grader, IJsonModel<GraderLabelModel>, IPersistableModel<GraderLabelModel> {
2979 public IList<string> Labels { get; }
2980 public string Model { get; set; }
2981 public string Name { get; set; }
2982 public IList<string> PassingLabels { get; }
2983 protected override Grader JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
2984 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
2985 protected override Grader PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
2986 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
2987 }
2988 [Experimental("OPENAI001")]
2989 public class GraderMulti : Grader, IJsonModel<GraderMulti>, IPersistableModel<GraderMulti> {
2990 public GraderMulti(string name, BinaryData graders, string calculateOutput);
2991 public string CalculateOutput { get; set; }
2992 public BinaryData Graders { get; set; }
2993 public string Name { get; set; }
2994 protected override Grader JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
2995 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
2996 protected override Grader PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
2997 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
2998 }
2999 [Experimental("OPENAI001")]
3000 public class GraderPython : Grader, IJsonModel<GraderPython>, IPersistableModel<GraderPython> {
3001 public GraderPython(string name, string source);
3002 public string ImageTag { get; set; }
3003 public string Name { get; set; }
3004 public string Source { get; set; }
3005 protected override Grader JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
3006 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
3007 protected override Grader PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
3008 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
3009 }
3010 [Experimental("OPENAI001")]
3011 public class GraderScoreModel : Grader, IJsonModel<GraderScoreModel>, IPersistableModel<GraderScoreModel> {
3012 public string Model { get; set; }
3013 public string Name { get; set; }
3014 public IList<float> Range { get; }
3015 public BinaryData SamplingParams { get; set; }
3016 protected override Grader JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
3017 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
3018 protected override Grader PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
3019 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
3020 }
3021 [Experimental("OPENAI001")]
3022 public class GraderStringCheck : Grader, IJsonModel<GraderStringCheck>, IPersistableModel<GraderStringCheck> {
3023 public GraderStringCheck(string name, string input, string reference, GraderStringCheckOperation operation);
3024 public string Input { get; set; }
3025 public string Name { get; set; }
3026 public GraderStringCheckOperation Operation { get; set; }
3027 public string Reference { get; set; }
3028 protected override Grader JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
3029 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
3030 protected override Grader PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
3031 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
3032 }
3033 [Experimental("OPENAI001")]
3034 public readonly partial struct GraderStringCheckOperation : IEquatable<GraderStringCheckOperation> {
3035 public GraderStringCheckOperation(string value);
3036 public static GraderStringCheckOperation Eq { get; }
3037 public static GraderStringCheckOperation Ilike { get; }
3038 public static GraderStringCheckOperation Like { get; }
3039 public static GraderStringCheckOperation Ne { get; }
3040 public readonly bool Equals(GraderStringCheckOperation other);
3041 [EditorBrowsable(EditorBrowsableState.Never)]
3042 public override readonly bool Equals(object obj);
3043 [EditorBrowsable(EditorBrowsableState.Never)]
3044 public override readonly int GetHashCode();
3045 public static bool operator ==(GraderStringCheckOperation left, GraderStringCheckOperation right);
3046 public static implicit operator GraderStringCheckOperation(string value);
3047 public static bool operator !=(GraderStringCheckOperation left, GraderStringCheckOperation right);
3048 public override readonly string ToString();
3049 }
3050 [Experimental("OPENAI001")]
3051 public class GraderTextSimilarity : Grader, IJsonModel<GraderTextSimilarity>, IPersistableModel<GraderTextSimilarity> {
3052 public GraderTextSimilarity(string name, string input, string reference, GraderTextSimilarityEvaluationMetric evaluationMetric);
3053 public GraderTextSimilarityEvaluationMetric EvaluationMetric { get; set; }
3054 public string Input { get; set; }
3055 public string Name { get; set; }
3056 public string Reference { get; set; }
3057 protected override Grader JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
3058 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
3059 protected override Grader PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
3060 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
3061 }
3062 [Experimental("OPENAI001")]
3063 public readonly partial struct GraderTextSimilarityEvaluationMetric : IEquatable<GraderTextSimilarityEvaluationMetric> {
3064 public GraderTextSimilarityEvaluationMetric(string value);
3065 public static GraderTextSimilarityEvaluationMetric Bleu { get; }
3066 public static GraderTextSimilarityEvaluationMetric FuzzyMatch { get; }
3067 public static GraderTextSimilarityEvaluationMetric Gleu { get; }
3068 public static GraderTextSimilarityEvaluationMetric Meteor { get; }
3069 public static GraderTextSimilarityEvaluationMetric Rouge1 { get; }
3070 public static GraderTextSimilarityEvaluationMetric Rouge2 { get; }
3071 public static GraderTextSimilarityEvaluationMetric Rouge3 { get; }
3072 public static GraderTextSimilarityEvaluationMetric Rouge4 { get; }
3073 public static GraderTextSimilarityEvaluationMetric Rouge5 { get; }
3074 public static GraderTextSimilarityEvaluationMetric RougeL { get; }
3075 public readonly bool Equals(GraderTextSimilarityEvaluationMetric other);
3076 [EditorBrowsable(EditorBrowsableState.Never)]
3077 public override readonly bool Equals(object obj);
3078 [EditorBrowsable(EditorBrowsableState.Never)]
3079 public override readonly int GetHashCode();
3080 public static bool operator ==(GraderTextSimilarityEvaluationMetric left, GraderTextSimilarityEvaluationMetric right);
3081 public static implicit operator GraderTextSimilarityEvaluationMetric(string value);
3082 public static bool operator !=(GraderTextSimilarityEvaluationMetric left, GraderTextSimilarityEvaluationMetric right);
3083 public override readonly string ToString();
3084 }
3085 [Experimental("OPENAI001")]
3086 public readonly partial struct GraderType : IEquatable<GraderType> {
3087 public GraderType(string value);
3088 public static GraderType LabelModel { get; }
3089 public static GraderType Multi { get; }
3090 public static GraderType Python { get; }
3091 public static GraderType ScoreModel { get; }
3092 public static GraderType StringCheck { get; }
3093 public static GraderType TextSimilarity { get; }
3094 public readonly bool Equals(GraderType other);
3095 [EditorBrowsable(EditorBrowsableState.Never)]
3096 public override readonly bool Equals(object obj);
3097 [EditorBrowsable(EditorBrowsableState.Never)]
3098 public override readonly int GetHashCode();
3099 public static bool operator ==(GraderType left, GraderType right);
3100 public static implicit operator GraderType(string value);
3101 public static bool operator !=(GraderType left, GraderType right);
3102 public override readonly string ToString();
3103 }
3104 [Experimental("OPENAI001")]
3105 public class RunGraderRequest : IJsonModel<RunGraderRequest>, IPersistableModel<RunGraderRequest> {
3106 public BinaryData Grader { get; }
3107 public BinaryData Item { get; }
3108 public string ModelSample { get; }
3109 protected virtual RunGraderRequest JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
3110 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
3111 protected virtual RunGraderRequest PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
3112 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
3113 }
3114 [Experimental("OPENAI001")]
3115 public class RunGraderResponse : IJsonModel<RunGraderResponse>, IPersistableModel<RunGraderResponse> {
3116 public RunGraderResponseMetadata Metadata { get; }
3117 public BinaryData ModelGraderTokenUsagePerModel { get; }
3118 public float Reward { get; }
3119 public BinaryData SubRewards { get; }
3120 protected virtual RunGraderResponse JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
3121 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
3122 protected virtual RunGraderResponse PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
3123 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
3124 }
3125 [Experimental("OPENAI001")]
3126 public class RunGraderResponseMetadata : IJsonModel<RunGraderResponseMetadata>, IPersistableModel<RunGraderResponseMetadata> {
3127 public RunGraderResponseMetadataErrors Errors { get; }
3128 public float ExecutionTime { get; }
3129 public string Kind { get; }
3130 public string Name { get; }
3131 public string SampledModelName { get; }
3132 public BinaryData Scores { get; }
3133 public int? TokenUsage { get; }
3134 protected virtual RunGraderResponseMetadata JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
3135 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
3136 protected virtual RunGraderResponseMetadata PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
3137 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
3138 }
3139 [Experimental("OPENAI001")]
3140 public class RunGraderResponseMetadataErrors : IJsonModel<RunGraderResponseMetadataErrors>, IPersistableModel<RunGraderResponseMetadataErrors> {
3141 public bool FormulaParseError { get; }
3142 public bool InvalidVariableError { get; }
3143 public bool ModelGraderParseError { get; }
3144 public bool ModelGraderRefusalError { get; }
3145 public bool ModelGraderServerError { get; }
3146 public string ModelGraderServerErrorDetails { get; }
3147 public bool OtherError { get; }
3148 public bool PythonGraderRuntimeError { get; }
3149 public string PythonGraderRuntimeErrorDetails { get; }
3150 public bool PythonGraderServerError { get; }
3151 public string PythonGraderServerErrorType { get; }
3152 public bool SampleParseError { get; }
3153 public bool TruncatedObservationError { get; }
3154 public bool UnresponsiveRewardError { get; }
3155 protected virtual RunGraderResponseMetadataErrors JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
3156 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
3157 protected virtual RunGraderResponseMetadataErrors PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
3158 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
3159 }
3160 [Experimental("OPENAI001")]
3161 public class UnknownGrader : Grader, IJsonModel<Grader>, IPersistableModel<Grader> {
3162 protected override Grader JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
3163 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
3164 protected override Grader PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
3165 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
3166 }
3167 [Experimental("OPENAI001")]
3168 public class ValidateGraderRequest : IJsonModel<ValidateGraderRequest>, IPersistableModel<ValidateGraderRequest> {
3169 public BinaryData Grader { get; }
3170 protected virtual ValidateGraderRequest JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
3171 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
3172 protected virtual ValidateGraderRequest PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
3173 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
3174 }
3175 [Experimental("OPENAI001")]
3176 public class ValidateGraderResponse : IJsonModel<ValidateGraderResponse>, IPersistableModel<ValidateGraderResponse> {
3177 public BinaryData Grader { get; }
3178 protected virtual ValidateGraderResponse JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
3179 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
3180 protected virtual ValidateGraderResponse PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
3181 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
3182 }
3183}
3184namespace OpenAI.Images {
3185 public class GeneratedImage : IJsonModel<GeneratedImage>, IPersistableModel<GeneratedImage> {
3186 public BinaryData ImageBytes { get; }
3187 public Uri ImageUri { get; }
3188 public string RevisedPrompt { get; }
3189 [Experimental("OPENAI001")]
3190 protected virtual GeneratedImage JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
3191 [Experimental("OPENAI001")]
3192 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
3193 [Experimental("OPENAI001")]
3194 protected virtual GeneratedImage PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
3195 [Experimental("OPENAI001")]
3196 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
3197 }
3198 [Experimental("OPENAI001")]
3199 public readonly partial struct GeneratedImageBackground : IEquatable<GeneratedImageBackground> {
3200 public GeneratedImageBackground(string value);
3201 public static GeneratedImageBackground Auto { get; }
3202 public static GeneratedImageBackground Opaque { get; }
3203 public static GeneratedImageBackground Transparent { get; }
3204 public readonly bool Equals(GeneratedImageBackground other);
3205 [EditorBrowsable(EditorBrowsableState.Never)]
3206 public override readonly bool Equals(object obj);
3207 [EditorBrowsable(EditorBrowsableState.Never)]
3208 public override readonly int GetHashCode();
3209 public static bool operator ==(GeneratedImageBackground left, GeneratedImageBackground right);
3210 public static implicit operator GeneratedImageBackground(string value);
3211 public static bool operator !=(GeneratedImageBackground left, GeneratedImageBackground right);
3212 public override readonly string ToString();
3213 }
3214 public class GeneratedImageCollection : ObjectModel.ReadOnlyCollection<GeneratedImage>, IJsonModel<GeneratedImageCollection>, IPersistableModel<GeneratedImageCollection> {
3215 public DateTimeOffset CreatedAt { get; }
3216 [Experimental("OPENAI001")]
3217 public ImageTokenUsage Usage { get; }
3218 [Experimental("OPENAI001")]
3219 protected virtual GeneratedImageCollection JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
3220 [Experimental("OPENAI001")]
3221 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
3222 [Experimental("OPENAI001")]
3223 protected virtual GeneratedImageCollection PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
3224 [Experimental("OPENAI001")]
3225 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
3226 }
3227 [Experimental("OPENAI001")]
3228 public readonly partial struct GeneratedImageFileFormat : IEquatable<GeneratedImageFileFormat> {
3229 public GeneratedImageFileFormat(string value);
3230 public static GeneratedImageFileFormat Jpeg { get; }
3231 public static GeneratedImageFileFormat Png { get; }
3232 public static GeneratedImageFileFormat Webp { get; }
3233 public readonly bool Equals(GeneratedImageFileFormat other);
3234 [EditorBrowsable(EditorBrowsableState.Never)]
3235 public override readonly bool Equals(object obj);
3236 [EditorBrowsable(EditorBrowsableState.Never)]
3237 public override readonly int GetHashCode();
3238 public static bool operator ==(GeneratedImageFileFormat left, GeneratedImageFileFormat right);
3239 public static implicit operator GeneratedImageFileFormat(string value);
3240 public static bool operator !=(GeneratedImageFileFormat left, GeneratedImageFileFormat right);
3241 public override readonly string ToString();
3242 }
3243 public readonly partial struct GeneratedImageFormat : IEquatable<GeneratedImageFormat> {
3244 public GeneratedImageFormat(string value);
3245 public static GeneratedImageFormat Bytes { get; }
3246 public static GeneratedImageFormat Uri { get; }
3247 public readonly bool Equals(GeneratedImageFormat other);
3248 [EditorBrowsable(EditorBrowsableState.Never)]
3249 public override readonly bool Equals(object obj);
3250 [EditorBrowsable(EditorBrowsableState.Never)]
3251 public override readonly int GetHashCode();
3252 public static bool operator ==(GeneratedImageFormat left, GeneratedImageFormat right);
3253 public static implicit operator GeneratedImageFormat(string value);
3254 public static bool operator !=(GeneratedImageFormat left, GeneratedImageFormat right);
3255 public override readonly string ToString();
3256 }
3257 [Experimental("OPENAI001")]
3258 public readonly partial struct GeneratedImageModerationLevel : IEquatable<GeneratedImageModerationLevel> {
3259 public GeneratedImageModerationLevel(string value);
3260 public static GeneratedImageModerationLevel Auto { get; }
3261 public static GeneratedImageModerationLevel Low { get; }
3262 public readonly bool Equals(GeneratedImageModerationLevel other);
3263 [EditorBrowsable(EditorBrowsableState.Never)]
3264 public override readonly bool Equals(object obj);
3265 [EditorBrowsable(EditorBrowsableState.Never)]
3266 public override readonly int GetHashCode();
3267 public static bool operator ==(GeneratedImageModerationLevel left, GeneratedImageModerationLevel right);
3268 public static implicit operator GeneratedImageModerationLevel(string value);
3269 public static bool operator !=(GeneratedImageModerationLevel left, GeneratedImageModerationLevel right);
3270 public override readonly string ToString();
3271 }
3272 public readonly partial struct GeneratedImageQuality : IEquatable<GeneratedImageQuality> {
3273 public GeneratedImageQuality(string value);
3274 [Experimental("OPENAI001")]
3275 public static GeneratedImageQuality Auto { get; }
3276 public static GeneratedImageQuality High { get; }
3277 [Experimental("OPENAI001")]
3278 public static GeneratedImageQuality Low { get; }
3279 [Experimental("OPENAI001")]
3280 public static GeneratedImageQuality Medium { get; }
3281 public static GeneratedImageQuality Standard { get; }
3282 public readonly bool Equals(GeneratedImageQuality other);
3283 [EditorBrowsable(EditorBrowsableState.Never)]
3284 public override readonly bool Equals(object obj);
3285 [EditorBrowsable(EditorBrowsableState.Never)]
3286 public override readonly int GetHashCode();
3287 public static bool operator ==(GeneratedImageQuality left, GeneratedImageQuality right);
3288 public static implicit operator GeneratedImageQuality(string value);
3289 public static bool operator !=(GeneratedImageQuality left, GeneratedImageQuality right);
3290 public override readonly string ToString();
3291 }
3292 public readonly partial struct GeneratedImageSize : IEquatable<GeneratedImageSize> {
3293 public static readonly GeneratedImageSize W1024xH1024;
3294 [Experimental("OPENAI001")]
3295 public static readonly GeneratedImageSize W1024xH1536;
3296 public static readonly GeneratedImageSize W1024xH1792;
3297 [Experimental("OPENAI001")]
3298 public static readonly GeneratedImageSize W1536xH1024;
3299 public static readonly GeneratedImageSize W1792xH1024;
3300 public static readonly GeneratedImageSize W256xH256;
3301 public static readonly GeneratedImageSize W512xH512;
3302 public GeneratedImageSize(int width, int height);
3303 [Experimental("OPENAI001")]
3304 public static GeneratedImageSize Auto { get; }
3305 public readonly bool Equals(GeneratedImageSize other);
3306 [EditorBrowsable(EditorBrowsableState.Never)]
3307 public override readonly bool Equals(object obj);
3308 [EditorBrowsable(EditorBrowsableState.Never)]
3309 public override readonly int GetHashCode();
3310 public static bool operator ==(GeneratedImageSize left, GeneratedImageSize right);
3311 public static bool operator !=(GeneratedImageSize left, GeneratedImageSize right);
3312 public override readonly string ToString();
3313 }
3314 public readonly partial struct GeneratedImageStyle : IEquatable<GeneratedImageStyle> {
3315 public GeneratedImageStyle(string value);
3316 public static GeneratedImageStyle Natural { get; }
3317 public static GeneratedImageStyle Vivid { get; }
3318 public readonly bool Equals(GeneratedImageStyle other);
3319 [EditorBrowsable(EditorBrowsableState.Never)]
3320 public override readonly bool Equals(object obj);
3321 [EditorBrowsable(EditorBrowsableState.Never)]
3322 public override readonly int GetHashCode();
3323 public static bool operator ==(GeneratedImageStyle left, GeneratedImageStyle right);
3324 public static implicit operator GeneratedImageStyle(string value);
3325 public static bool operator !=(GeneratedImageStyle left, GeneratedImageStyle right);
3326 public override readonly string ToString();
3327 }
3328 public class ImageClient {
3329 protected ImageClient();
3330 protected internal ImageClient(ClientPipeline pipeline, string model, OpenAIClientOptions options);
3331 public ImageClient(string model, ApiKeyCredential credential, OpenAIClientOptions options);
3332 public ImageClient(string model, ApiKeyCredential credential);
3333 [Experimental("OPENAI001")]
3334 public ImageClient(string model, AuthenticationPolicy authenticationPolicy, OpenAIClientOptions options);
3335 [Experimental("OPENAI001")]
3336 public ImageClient(string model, AuthenticationPolicy authenticationPolicy);
3337 public ImageClient(string model, string apiKey);
3338 [Experimental("OPENAI001")]
3339 public string Model { get; }
3340 public ClientPipeline Pipeline { get; }
3341 public virtual ClientResult<GeneratedImage> GenerateImage(string prompt, ImageGenerationOptions options = null, CancellationToken cancellationToken = default);
3342 public virtual Task<ClientResult<GeneratedImage>> GenerateImageAsync(string prompt, ImageGenerationOptions options = null, CancellationToken cancellationToken = default);
3343 public virtual ClientResult<GeneratedImage> GenerateImageEdit(Stream image, string imageFilename, string prompt, ImageEditOptions options = null, CancellationToken cancellationToken = default);
3344 public virtual ClientResult<GeneratedImage> GenerateImageEdit(Stream image, string imageFilename, string prompt, Stream mask, string maskFilename, ImageEditOptions options = null, CancellationToken cancellationToken = default);
3345 public virtual ClientResult<GeneratedImage> GenerateImageEdit(string imageFilePath, string prompt, ImageEditOptions options = null);
3346 public virtual ClientResult<GeneratedImage> GenerateImageEdit(string imageFilePath, string prompt, string maskFilePath, ImageEditOptions options = null);
3347 public virtual Task<ClientResult<GeneratedImage>> GenerateImageEditAsync(Stream image, string imageFilename, string prompt, ImageEditOptions options = null, CancellationToken cancellationToken = default);
3348 public virtual Task<ClientResult<GeneratedImage>> GenerateImageEditAsync(Stream image, string imageFilename, string prompt, Stream mask, string maskFilename, ImageEditOptions options = null, CancellationToken cancellationToken = default);
3349 public virtual Task<ClientResult<GeneratedImage>> GenerateImageEditAsync(string imageFilePath, string prompt, ImageEditOptions options = null);
3350 public virtual Task<ClientResult<GeneratedImage>> GenerateImageEditAsync(string imageFilePath, string prompt, string maskFilePath, ImageEditOptions options = null);
3351 public virtual ClientResult GenerateImageEdits(BinaryContent content, string contentType, RequestOptions options = null);
3352 public virtual ClientResult<GeneratedImageCollection> GenerateImageEdits(Stream image, string imageFilename, string prompt, int imageCount, ImageEditOptions options = null, CancellationToken cancellationToken = default);
3353 public virtual ClientResult<GeneratedImageCollection> GenerateImageEdits(Stream image, string imageFilename, string prompt, Stream mask, string maskFilename, int imageCount, ImageEditOptions options = null, CancellationToken cancellationToken = default);
3354 public virtual ClientResult<GeneratedImageCollection> GenerateImageEdits(string imageFilePath, string prompt, int imageCount, ImageEditOptions options = null);
3355 public virtual ClientResult<GeneratedImageCollection> GenerateImageEdits(string imageFilePath, string prompt, string maskFilePath, int imageCount, ImageEditOptions options = null);
3356 public virtual Task<ClientResult> GenerateImageEditsAsync(BinaryContent content, string contentType, RequestOptions options = null);
3357 public virtual Task<ClientResult<GeneratedImageCollection>> GenerateImageEditsAsync(Stream image, string imageFilename, string prompt, int imageCount, ImageEditOptions options = null, CancellationToken cancellationToken = default);
3358 public virtual Task<ClientResult<GeneratedImageCollection>> GenerateImageEditsAsync(Stream image, string imageFilename, string prompt, Stream mask, string maskFilename, int imageCount, ImageEditOptions options = null, CancellationToken cancellationToken = default);
3359 public virtual Task<ClientResult<GeneratedImageCollection>> GenerateImageEditsAsync(string imageFilePath, string prompt, int imageCount, ImageEditOptions options = null);
3360 public virtual Task<ClientResult<GeneratedImageCollection>> GenerateImageEditsAsync(string imageFilePath, string prompt, string maskFilePath, int imageCount, ImageEditOptions options = null);
3361 public virtual ClientResult GenerateImages(BinaryContent content, RequestOptions options = null);
3362 public virtual ClientResult<GeneratedImageCollection> GenerateImages(string prompt, int imageCount, ImageGenerationOptions options = null, CancellationToken cancellationToken = default);
3363 public virtual Task<ClientResult> GenerateImagesAsync(BinaryContent content, RequestOptions options = null);
3364 public virtual Task<ClientResult<GeneratedImageCollection>> GenerateImagesAsync(string prompt, int imageCount, ImageGenerationOptions options = null, CancellationToken cancellationToken = default);
3365 public virtual ClientResult<GeneratedImage> GenerateImageVariation(Stream image, string imageFilename, ImageVariationOptions options = null, CancellationToken cancellationToken = default);
3366 public virtual ClientResult<GeneratedImage> GenerateImageVariation(string imageFilePath, ImageVariationOptions options = null);
3367 public virtual Task<ClientResult<GeneratedImage>> GenerateImageVariationAsync(Stream image, string imageFilename, ImageVariationOptions options = null, CancellationToken cancellationToken = default);
3368 public virtual Task<ClientResult<GeneratedImage>> GenerateImageVariationAsync(string imageFilePath, ImageVariationOptions options = null);
3369 public virtual ClientResult GenerateImageVariations(BinaryContent content, string contentType, RequestOptions options = null);
3370 public virtual ClientResult<GeneratedImageCollection> GenerateImageVariations(Stream image, string imageFilename, int imageCount, ImageVariationOptions options = null, CancellationToken cancellationToken = default);
3371 public virtual ClientResult<GeneratedImageCollection> GenerateImageVariations(string imageFilePath, int imageCount, ImageVariationOptions options = null);
3372 public virtual Task<ClientResult> GenerateImageVariationsAsync(BinaryContent content, string contentType, RequestOptions options = null);
3373 public virtual Task<ClientResult<GeneratedImageCollection>> GenerateImageVariationsAsync(Stream image, string imageFilename, int imageCount, ImageVariationOptions options = null, CancellationToken cancellationToken = default);
3374 public virtual Task<ClientResult<GeneratedImageCollection>> GenerateImageVariationsAsync(string imageFilePath, int imageCount, ImageVariationOptions options = null);
3375 }
3376 public class ImageEditOptions : IJsonModel<ImageEditOptions>, IPersistableModel<ImageEditOptions> {
3377 public string EndUserId { get; set; }
3378 public GeneratedImageFormat? ResponseFormat { get; set; }
3379 public GeneratedImageSize? Size { get; set; }
3380 [Experimental("OPENAI001")]
3381 protected virtual ImageEditOptions JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
3382 [Experimental("OPENAI001")]
3383 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
3384 [Experimental("OPENAI001")]
3385 protected virtual ImageEditOptions PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
3386 [Experimental("OPENAI001")]
3387 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
3388 }
3389 public class ImageGenerationOptions : IJsonModel<ImageGenerationOptions>, IPersistableModel<ImageGenerationOptions> {
3390 [Experimental("OPENAI001")]
3391 public GeneratedImageBackground? Background { get; set; }
3392 public string EndUserId { get; set; }
3393 [Experimental("OPENAI001")]
3394 public GeneratedImageModerationLevel? ModerationLevel { get; set; }
3395 [Experimental("OPENAI001")]
3396 public int? OutputCompressionFactor { get; set; }
3397 [Experimental("OPENAI001")]
3398 public GeneratedImageFileFormat? OutputFileFormat { get; set; }
3399 public GeneratedImageQuality? Quality { get; set; }
3400 public GeneratedImageFormat? ResponseFormat { get; set; }
3401 public GeneratedImageSize? Size { get; set; }
3402 public GeneratedImageStyle? Style { get; set; }
3403 [Experimental("OPENAI001")]
3404 protected virtual ImageGenerationOptions JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
3405 [Experimental("OPENAI001")]
3406 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
3407 [Experimental("OPENAI001")]
3408 protected virtual ImageGenerationOptions PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
3409 [Experimental("OPENAI001")]
3410 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
3411 }
3412 [Experimental("OPENAI001")]
3413 public class ImageInputTokenUsageDetails : IJsonModel<ImageInputTokenUsageDetails>, IPersistableModel<ImageInputTokenUsageDetails> {
3414 public int ImageTokenCount { get; }
3415 public int TextTokenCount { get; }
3416 protected virtual ImageInputTokenUsageDetails JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
3417 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
3418 protected virtual ImageInputTokenUsageDetails PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
3419 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
3420 }
3421 [Experimental("OPENAI001")]
3422 public class ImageTokenUsage : IJsonModel<ImageTokenUsage>, IPersistableModel<ImageTokenUsage> {
3423 public int InputTokenCount { get; }
3424 public ImageInputTokenUsageDetails InputTokenDetails { get; }
3425 public int OutputTokenCount { get; }
3426 public int TotalTokenCount { get; }
3427 protected virtual ImageTokenUsage JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
3428 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
3429 protected virtual ImageTokenUsage PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
3430 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
3431 }
3432 public class ImageVariationOptions : IJsonModel<ImageVariationOptions>, IPersistableModel<ImageVariationOptions> {
3433 public string EndUserId { get; set; }
3434 public GeneratedImageFormat? ResponseFormat { get; set; }
3435 public GeneratedImageSize? Size { get; set; }
3436 [Experimental("OPENAI001")]
3437 protected virtual ImageVariationOptions JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
3438 [Experimental("OPENAI001")]
3439 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
3440 [Experimental("OPENAI001")]
3441 protected virtual ImageVariationOptions PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
3442 [Experimental("OPENAI001")]
3443 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
3444 }
3445 public static class OpenAIImagesModelFactory {
3446 public static GeneratedImage GeneratedImage(BinaryData imageBytes = null, Uri imageUri = null, string revisedPrompt = null);
3447 [Experimental("OPENAI001")]
3448 public static GeneratedImageCollection GeneratedImageCollection(DateTimeOffset createdAt = default, IEnumerable<GeneratedImage> items = null, ImageTokenUsage usage = null);
3449 [EditorBrowsable(EditorBrowsableState.Never)]
3450 public static GeneratedImageCollection GeneratedImageCollection(DateTimeOffset createdAt, IEnumerable<GeneratedImage> items);
3451 }
3452}
3453namespace OpenAI.Models {
3454 public class ModelDeletionResult : IJsonModel<ModelDeletionResult>, IPersistableModel<ModelDeletionResult> {
3455 public bool Deleted { get; }
3456 public string ModelId { get; }
3457 [Experimental("OPENAI001")]
3458 protected virtual ModelDeletionResult JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
3459 [Experimental("OPENAI001")]
3460 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
3461 [Experimental("OPENAI001")]
3462 protected virtual ModelDeletionResult PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
3463 [Experimental("OPENAI001")]
3464 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
3465 }
3466 public class OpenAIModel : IJsonModel<OpenAIModel>, IPersistableModel<OpenAIModel> {
3467 public DateTimeOffset CreatedAt { get; }
3468 public string Id { get; }
3469 public string OwnedBy { get; }
3470 [Experimental("OPENAI001")]
3471 protected virtual OpenAIModel JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
3472 [Experimental("OPENAI001")]
3473 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
3474 [Experimental("OPENAI001")]
3475 protected virtual OpenAIModel PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
3476 [Experimental("OPENAI001")]
3477 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
3478 }
3479 public class OpenAIModelClient {
3480 protected OpenAIModelClient();
3481 public OpenAIModelClient(ApiKeyCredential credential, OpenAIClientOptions options);
3482 public OpenAIModelClient(ApiKeyCredential credential);
3483 [Experimental("OPENAI001")]
3484 public OpenAIModelClient(AuthenticationPolicy authenticationPolicy, OpenAIClientOptions options);
3485 [Experimental("OPENAI001")]
3486 public OpenAIModelClient(AuthenticationPolicy authenticationPolicy);
3487 protected internal OpenAIModelClient(ClientPipeline pipeline, OpenAIClientOptions options);
3488 public OpenAIModelClient(string apiKey);
3489 public ClientPipeline Pipeline { get; }
3490 public virtual ClientResult DeleteModel(string model, RequestOptions options);
3491 public virtual ClientResult<ModelDeletionResult> DeleteModel(string model, CancellationToken cancellationToken = default);
3492 public virtual Task<ClientResult> DeleteModelAsync(string model, RequestOptions options);
3493 public virtual Task<ClientResult<ModelDeletionResult>> DeleteModelAsync(string model, CancellationToken cancellationToken = default);
3494 public virtual ClientResult GetModel(string model, RequestOptions options);
3495 public virtual ClientResult<OpenAIModel> GetModel(string model, CancellationToken cancellationToken = default);
3496 public virtual Task<ClientResult> GetModelAsync(string model, RequestOptions options);
3497 public virtual Task<ClientResult<OpenAIModel>> GetModelAsync(string model, CancellationToken cancellationToken = default);
3498 public virtual ClientResult GetModels(RequestOptions options);
3499 public virtual ClientResult<OpenAIModelCollection> GetModels(CancellationToken cancellationToken = default);
3500 public virtual Task<ClientResult> GetModelsAsync(RequestOptions options);
3501 public virtual Task<ClientResult<OpenAIModelCollection>> GetModelsAsync(CancellationToken cancellationToken = default);
3502 }
3503 public class OpenAIModelCollection : ObjectModel.ReadOnlyCollection<OpenAIModel>, IJsonModel<OpenAIModelCollection>, IPersistableModel<OpenAIModelCollection> {
3504 [Experimental("OPENAI001")]
3505 protected virtual OpenAIModelCollection JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
3506 [Experimental("OPENAI001")]
3507 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
3508 [Experimental("OPENAI001")]
3509 protected virtual OpenAIModelCollection PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
3510 [Experimental("OPENAI001")]
3511 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
3512 }
3513 public static class OpenAIModelsModelFactory {
3514 public static ModelDeletionResult ModelDeletionResult(string modelId = null, bool deleted = false);
3515 public static OpenAIModel OpenAIModel(string id = null, DateTimeOffset createdAt = default, string ownedBy = null);
3516 public static OpenAIModelCollection OpenAIModelCollection(IEnumerable<OpenAIModel> items = null);
3517 }
3518}
3519namespace OpenAI.Moderations {
3520 public class ModerationCategory {
3521 public bool Flagged { get; }
3522 public float Score { get; }
3523 }
3524 public class ModerationClient {
3525 protected ModerationClient();
3526 protected internal ModerationClient(ClientPipeline pipeline, string model, OpenAIClientOptions options);
3527 public ModerationClient(string model, ApiKeyCredential credential, OpenAIClientOptions options);
3528 public ModerationClient(string model, ApiKeyCredential credential);
3529 [Experimental("OPENAI001")]
3530 public ModerationClient(string model, AuthenticationPolicy authenticationPolicy, OpenAIClientOptions options);
3531 [Experimental("OPENAI001")]
3532 public ModerationClient(string model, AuthenticationPolicy authenticationPolicy);
3533 public ModerationClient(string model, string apiKey);
3534 [Experimental("OPENAI001")]
3535 public string Model { get; }
3536 public ClientPipeline Pipeline { get; }
3537 public virtual ClientResult ClassifyText(BinaryContent content, RequestOptions options = null);
3538 public virtual ClientResult<ModerationResultCollection> ClassifyText(IEnumerable<string> inputs, CancellationToken cancellationToken = default);
3539 public virtual ClientResult<ModerationResult> ClassifyText(string input, CancellationToken cancellationToken = default);
3540 public virtual Task<ClientResult> ClassifyTextAsync(BinaryContent content, RequestOptions options = null);
3541 public virtual Task<ClientResult<ModerationResultCollection>> ClassifyTextAsync(IEnumerable<string> inputs, CancellationToken cancellationToken = default);
3542 public virtual Task<ClientResult<ModerationResult>> ClassifyTextAsync(string input, CancellationToken cancellationToken = default);
3543 }
3544 public class ModerationResult : IJsonModel<ModerationResult>, IPersistableModel<ModerationResult> {
3545 public bool Flagged { get; }
3546 public ModerationCategory Harassment { get; }
3547 public ModerationCategory HarassmentThreatening { get; }
3548 public ModerationCategory Hate { get; }
3549 public ModerationCategory HateThreatening { get; }
3550 public ModerationCategory Illicit { get; }
3551 public ModerationCategory IllicitViolent { get; }
3552 public ModerationCategory SelfHarm { get; }
3553 public ModerationCategory SelfHarmInstructions { get; }
3554 public ModerationCategory SelfHarmIntent { get; }
3555 public ModerationCategory Sexual { get; }
3556 public ModerationCategory SexualMinors { get; }
3557 public ModerationCategory Violence { get; }
3558 public ModerationCategory ViolenceGraphic { get; }
3559 [Experimental("OPENAI001")]
3560 protected virtual ModerationResult JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
3561 [Experimental("OPENAI001")]
3562 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
3563 [Experimental("OPENAI001")]
3564 protected virtual ModerationResult PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
3565 [Experimental("OPENAI001")]
3566 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
3567 }
3568 public class ModerationResultCollection : ObjectModel.ReadOnlyCollection<ModerationResult>, IJsonModel<ModerationResultCollection>, IPersistableModel<ModerationResultCollection> {
3569 public string Id { get; }
3570 public string Model { get; }
3571 [Experimental("OPENAI001")]
3572 protected virtual ModerationResultCollection JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
3573 [Experimental("OPENAI001")]
3574 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
3575 [Experimental("OPENAI001")]
3576 protected virtual ModerationResultCollection PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
3577 [Experimental("OPENAI001")]
3578 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
3579 }
3580 public static class OpenAIModerationsModelFactory {
3581 public static ModerationCategory ModerationCategory(bool flagged = false, float score = 0);
3582 [Experimental("OPENAI001")]
3583 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);
3584 [EditorBrowsable(EditorBrowsableState.Never)]
3585 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);
3586 public static ModerationResultCollection ModerationResultCollection(string id = null, string model = null, IEnumerable<ModerationResult> items = null);
3587 }
3588}
3589namespace OpenAI.Realtime {
3590 [Experimental("OPENAI002")]
3591 public class ConversationContentPart : IJsonModel<ConversationContentPart>, IPersistableModel<ConversationContentPart> {
3592 public string AudioTranscript { get; }
3593 public string Text { get; }
3594 public static ConversationContentPart CreateInputAudioTranscriptPart(string transcript = null);
3595 public static ConversationContentPart CreateInputTextPart(string text);
3596 public static ConversationContentPart CreateOutputAudioTranscriptPart(string transcript = null);
3597 public static ConversationContentPart CreateOutputTextPart(string text);
3598 protected virtual ConversationContentPart JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
3599 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
3600 public static implicit operator ConversationContentPart(string text);
3601 protected virtual ConversationContentPart PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
3602 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
3603 }
3604 [Experimental("OPENAI002")]
3605 public readonly partial struct ConversationContentPartKind : IEquatable<ConversationContentPartKind> {
3606 public ConversationContentPartKind(string value);
3607 public static ConversationContentPartKind InputAudio { get; }
3608 public static ConversationContentPartKind InputText { get; }
3609 public static ConversationContentPartKind OutputAudio { get; }
3610 public static ConversationContentPartKind OutputText { get; }
3611 public readonly bool Equals(ConversationContentPartKind other);
3612 [EditorBrowsable(EditorBrowsableState.Never)]
3613 public override readonly bool Equals(object obj);
3614 [EditorBrowsable(EditorBrowsableState.Never)]
3615 public override readonly int GetHashCode();
3616 public static bool operator ==(ConversationContentPartKind left, ConversationContentPartKind right);
3617 public static implicit operator ConversationContentPartKind(string value);
3618 public static bool operator !=(ConversationContentPartKind left, ConversationContentPartKind right);
3619 public override readonly string ToString();
3620 }
3621 [Experimental("OPENAI002")]
3622 public class ConversationFunctionTool : ConversationTool, IJsonModel<ConversationFunctionTool>, IPersistableModel<ConversationFunctionTool> {
3623 public ConversationFunctionTool(string name);
3624 public string Description { get; set; }
3625 public string Name { get; set; }
3626 public BinaryData Parameters { get; set; }
3627 protected override ConversationTool JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
3628 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
3629 protected override ConversationTool PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
3630 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
3631 }
3632 [Experimental("OPENAI002")]
3633 public readonly partial struct ConversationIncompleteReason : IEquatable<ConversationIncompleteReason> {
3634 public ConversationIncompleteReason(string value);
3635 public static ConversationIncompleteReason ClientCancelled { get; }
3636 public static ConversationIncompleteReason ContentFilter { get; }
3637 public static ConversationIncompleteReason MaxOutputTokens { get; }
3638 public static ConversationIncompleteReason TurnDetected { get; }
3639 public readonly bool Equals(ConversationIncompleteReason other);
3640 [EditorBrowsable(EditorBrowsableState.Never)]
3641 public override readonly bool Equals(object obj);
3642 [EditorBrowsable(EditorBrowsableState.Never)]
3643 public override readonly int GetHashCode();
3644 public static bool operator ==(ConversationIncompleteReason left, ConversationIncompleteReason right);
3645 public static implicit operator ConversationIncompleteReason(string value);
3646 public static bool operator !=(ConversationIncompleteReason left, ConversationIncompleteReason right);
3647 public override readonly string ToString();
3648 }
3649 [Experimental("OPENAI002")]
3650 public class ConversationInputTokenUsageDetails : IJsonModel<ConversationInputTokenUsageDetails>, IPersistableModel<ConversationInputTokenUsageDetails> {
3651 public int AudioTokenCount { get; }
3652 public int CachedTokenCount { get; }
3653 public int TextTokenCount { get; }
3654 protected virtual ConversationInputTokenUsageDetails JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
3655 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
3656 protected virtual ConversationInputTokenUsageDetails PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
3657 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
3658 }
3659 [Experimental("OPENAI002")]
3660 public readonly partial struct ConversationItemStatus : IEquatable<ConversationItemStatus> {
3661 public ConversationItemStatus(string value);
3662 public static ConversationItemStatus Completed { get; }
3663 public static ConversationItemStatus Incomplete { get; }
3664 public static ConversationItemStatus InProgress { get; }
3665 public readonly bool Equals(ConversationItemStatus other);
3666 [EditorBrowsable(EditorBrowsableState.Never)]
3667 public override readonly bool Equals(object obj);
3668 [EditorBrowsable(EditorBrowsableState.Never)]
3669 public override readonly int GetHashCode();
3670 public static bool operator ==(ConversationItemStatus left, ConversationItemStatus right);
3671 public static implicit operator ConversationItemStatus(string value);
3672 public static bool operator !=(ConversationItemStatus left, ConversationItemStatus right);
3673 public override readonly string ToString();
3674 }
3675 [Experimental("OPENAI002")]
3676 public class ConversationMaxTokensChoice : IJsonModel<ConversationMaxTokensChoice>, IPersistableModel<ConversationMaxTokensChoice> {
3677 public ConversationMaxTokensChoice(int numberValue);
3678 public int? NumericValue { get; }
3679 public static ConversationMaxTokensChoice CreateDefaultMaxTokensChoice();
3680 public static ConversationMaxTokensChoice CreateInfiniteMaxTokensChoice();
3681 public static ConversationMaxTokensChoice CreateNumericMaxTokensChoice(int maxTokens);
3682 public static implicit operator ConversationMaxTokensChoice(int maxTokens);
3683 }
3684 [Experimental("OPENAI002")]
3685 public readonly partial struct ConversationMessageRole : IEquatable<ConversationMessageRole> {
3686 public ConversationMessageRole(string value);
3687 public static ConversationMessageRole Assistant { get; }
3688 public static ConversationMessageRole System { get; }
3689 public static ConversationMessageRole User { get; }
3690 public readonly bool Equals(ConversationMessageRole other);
3691 [EditorBrowsable(global::EditorBrowsableState.Never)]
3692 public override readonly bool Equals(object obj);
3693 [EditorBrowsable(global::EditorBrowsableState.Never)]
3694 public override readonly int GetHashCode();
3695 public static bool operator ==(ConversationMessageRole left, ConversationMessageRole right);
3696 public static implicit operator ConversationMessageRole(string value);
3697 public static bool operator !=(ConversationMessageRole left, ConversationMessageRole right);
3698 public override readonly string ToString();
3699 }
3700 [Experimental("OPENAI002")]
3701 public class ConversationOutputTokenUsageDetails : IJsonModel<ConversationOutputTokenUsageDetails>, IPersistableModel<ConversationOutputTokenUsageDetails> {
3702 public int AudioTokenCount { get; }
3703 public int TextTokenCount { get; }
3704 protected virtual ConversationOutputTokenUsageDetails JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
3705 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
3706 protected virtual ConversationOutputTokenUsageDetails PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
3707 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
3708 }
3709 [Experimental("OPENAI002")]
3710 public class ConversationRateLimitDetailsItem : IJsonModel<ConversationRateLimitDetailsItem>, IPersistableModel<ConversationRateLimitDetailsItem> {
3711 public int MaximumCount { get; }
3712 public string Name { get; }
3713 public int RemainingCount { get; }
3714 public TimeSpan TimeUntilReset { get; }
3715 protected virtual ConversationRateLimitDetailsItem JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
3716 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
3717 protected virtual ConversationRateLimitDetailsItem PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
3718 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
3719 }
3720 [Experimental("OPENAI002")]
3721 public class ConversationResponseOptions : IJsonModel<ConversationResponseOptions>, IPersistableModel<ConversationResponseOptions> {
3722 public ConversationVoice? Voice;
3723 public RealtimeContentModalities ContentModalities { get; set; }
3724 public ResponseConversationSelection? ConversationSelection { get; set; }
3725 public string Instructions { get; set; }
3726 public ConversationMaxTokensChoice MaxOutputTokens { get; set; }
3727 public IDictionary<string, string> Metadata { get; }
3728 public RealtimeAudioFormat? OutputAudioFormat { get; set; }
3729 public IList<RealtimeItem> OverrideItems { get; }
3730 public float? Temperature { get; set; }
3731 public ConversationToolChoice ToolChoice { get; set; }
3732 public IList<ConversationTool> Tools { get; }
3733 protected virtual ConversationResponseOptions JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
3734 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
3735 protected virtual ConversationResponseOptions PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
3736 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
3737 }
3738 [Experimental("OPENAI002")]
3739 public class ConversationSessionConfiguredUpdate : RealtimeUpdate, IJsonModel<ConversationSessionConfiguredUpdate>, IPersistableModel<ConversationSessionConfiguredUpdate> {
3740 public RealtimeContentModalities ContentModalities { get; }
3741 public RealtimeAudioFormat InputAudioFormat { get; }
3742 public InputTranscriptionOptions InputTranscriptionOptions { get; }
3743 public string Instructions { get; }
3744 public ConversationMaxTokensChoice MaxOutputTokens { get; }
3745 public string Model { get; }
3746 public RealtimeAudioFormat OutputAudioFormat { get; }
3747 public string SessionId { get; }
3748 public float Temperature { get; }
3749 public ConversationToolChoice ToolChoice { get; }
3750 public IReadOnlyList<ConversationTool> Tools { get; }
3751 public TurnDetectionOptions TurnDetectionOptions { get; }
3752 public ConversationVoice Voice { get; }
3753 protected override RealtimeUpdate JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
3754 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
3755 protected override RealtimeUpdate PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
3756 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
3757 }
3758 [Experimental("OPENAI002")]
3759 public class ConversationSessionOptions : IJsonModel<ConversationSessionOptions>, IPersistableModel<ConversationSessionOptions> {
3760 public RealtimeContentModalities ContentModalities { get; set; }
3761 public RealtimeAudioFormat? InputAudioFormat { get; set; }
3762 public InputNoiseReductionOptions InputNoiseReductionOptions { get; set; }
3763 public InputTranscriptionOptions InputTranscriptionOptions { get; set; }
3764 public string Instructions { get; set; }
3765 public ConversationMaxTokensChoice MaxOutputTokens { get; set; }
3766 public RealtimeAudioFormat? OutputAudioFormat { get; set; }
3767 public float? Temperature { get; set; }
3768 public ConversationToolChoice ToolChoice { get; set; }
3769 public IList<ConversationTool> Tools { get; }
3770 public TurnDetectionOptions TurnDetectionOptions { get; set; }
3771 public ConversationVoice? Voice { get; set; }
3772 protected virtual ConversationSessionOptions JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
3773 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
3774 protected virtual ConversationSessionOptions PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
3775 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
3776 }
3777 [Experimental("OPENAI002")]
3778 public class ConversationSessionStartedUpdate : RealtimeUpdate, IJsonModel<ConversationSessionStartedUpdate>, IPersistableModel<ConversationSessionStartedUpdate> {
3779 public RealtimeContentModalities ContentModalities { get; }
3780 public RealtimeAudioFormat InputAudioFormat { get; }
3781 public InputTranscriptionOptions InputTranscriptionOptions { get; }
3782 public string Instructions { get; }
3783 public ConversationMaxTokensChoice MaxOutputTokens { get; }
3784 public string Model { get; }
3785 public RealtimeAudioFormat OutputAudioFormat { get; }
3786 public string SessionId { get; }
3787 public float Temperature { get; }
3788 public ConversationToolChoice ToolChoice { get; }
3789 public IReadOnlyList<ConversationTool> Tools { get; }
3790 public TurnDetectionOptions TurnDetectionOptions { get; }
3791 public ConversationVoice Voice { get; }
3792 protected override RealtimeUpdate JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
3793 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
3794 protected override RealtimeUpdate PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
3795 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
3796 }
3797 [Experimental("OPENAI002")]
3798 public readonly partial struct ConversationStatus : IEquatable<ConversationStatus> {
3799 public ConversationStatus(string value);
3800 public static ConversationStatus Cancelled { get; }
3801 public static ConversationStatus Completed { get; }
3802 public static ConversationStatus Failed { get; }
3803 public static ConversationStatus Incomplete { get; }
3804 public readonly bool Equals(ConversationStatus other);
3805 [EditorBrowsable(EditorBrowsableState.Never)]
3806 public override readonly bool Equals(object obj);
3807 [EditorBrowsable(EditorBrowsableState.Never)]
3808 public override readonly int GetHashCode();
3809 public static bool operator ==(ConversationStatus left, ConversationStatus right);
3810 public static implicit operator ConversationStatus(string value);
3811 public static bool operator !=(ConversationStatus left, ConversationStatus right);
3812 public override readonly string ToString();
3813 }
3814 [Experimental("OPENAI002")]
3815 public class ConversationStatusDetails : IJsonModel<ConversationStatusDetails>, IPersistableModel<ConversationStatusDetails> {
3816 public string ErrorCode { get; }
3817 public string ErrorKind { get; }
3818 public ConversationIncompleteReason? IncompleteReason { get; }
3819 public ConversationStatus StatusKind { get; }
3820 protected virtual ConversationStatusDetails JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
3821 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
3822 protected virtual ConversationStatusDetails PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
3823 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
3824 }
3825 [Experimental("OPENAI002")]
3826 public class ConversationTokenUsage : IJsonModel<ConversationTokenUsage>, IPersistableModel<ConversationTokenUsage> {
3827 public int InputTokenCount { get; }
3828 public ConversationInputTokenUsageDetails InputTokenDetails { get; }
3829 public int OutputTokenCount { get; }
3830 public ConversationOutputTokenUsageDetails OutputTokenDetails { get; }
3831 public int TotalTokenCount { get; }
3832 protected virtual ConversationTokenUsage JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
3833 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
3834 protected virtual ConversationTokenUsage PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
3835 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
3836 }
3837 [Experimental("OPENAI002")]
3838 public class ConversationTool : IJsonModel<ConversationTool>, IPersistableModel<ConversationTool> {
3839 public ConversationToolKind Kind { get; }
3840 public static ConversationTool CreateFunctionTool(string name, string description = null, BinaryData parameters = null);
3841 protected virtual ConversationTool JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
3842 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
3843 protected virtual ConversationTool PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
3844 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
3845 }
3846 [Experimental("OPENAI002")]
3847 public class ConversationToolChoice : IJsonModel<ConversationToolChoice>, IPersistableModel<ConversationToolChoice> {
3848 public string FunctionName { get; }
3849 public ConversationToolChoiceKind Kind { get; }
3850 public static ConversationToolChoice CreateAutoToolChoice();
3851 public static ConversationToolChoice CreateFunctionToolChoice(string functionName);
3852 public static ConversationToolChoice CreateNoneToolChoice();
3853 public static ConversationToolChoice CreateRequiredToolChoice();
3854 }
3855 [Experimental("OPENAI002")]
3856 public enum ConversationToolChoiceKind {
3857 Unknown = 0,
3858 Auto = 1,
3859 None = 2,
3860 Required = 3,
3861 Function = 4
3862 }
3863 [Experimental("OPENAI002")]
3864 public readonly partial struct ConversationToolKind : IEquatable<ConversationToolKind> {
3865 public ConversationToolKind(string value);
3866 public static ConversationToolKind Function { get; }
3867 public readonly bool Equals(ConversationToolKind other);
3868 [EditorBrowsable(EditorBrowsableState.Never)]
3869 public override readonly bool Equals(object obj);
3870 [EditorBrowsable(EditorBrowsableState.Never)]
3871 public override readonly int GetHashCode();
3872 public static bool operator ==(ConversationToolKind left, ConversationToolKind right);
3873 public static implicit operator ConversationToolKind(string value);
3874 public static bool operator !=(ConversationToolKind left, ConversationToolKind right);
3875 public override readonly string ToString();
3876 }
3877 [Experimental("OPENAI002")]
3878 public readonly partial struct ConversationVoice : IEquatable<ConversationVoice> {
3879 public ConversationVoice(string value);
3880 public static ConversationVoice Alloy { get; }
3881 public static ConversationVoice Ash { get; }
3882 public static ConversationVoice Ballad { get; }
3883 public static ConversationVoice Coral { get; }
3884 public static ConversationVoice Echo { get; }
3885 public static ConversationVoice Fable { get; }
3886 public static ConversationVoice Nova { get; }
3887 public static ConversationVoice Onyx { get; }
3888 public static ConversationVoice Sage { get; }
3889 public static ConversationVoice Shimmer { get; }
3890 public static ConversationVoice Verse { get; }
3891 public readonly bool Equals(ConversationVoice other);
3892 [EditorBrowsable(EditorBrowsableState.Never)]
3893 public override readonly bool Equals(object obj);
3894 [EditorBrowsable(EditorBrowsableState.Never)]
3895 public override readonly int GetHashCode();
3896 public static bool operator ==(ConversationVoice left, ConversationVoice right);
3897 public static implicit operator ConversationVoice(string value);
3898 public static bool operator !=(ConversationVoice left, ConversationVoice right);
3899 public override readonly string ToString();
3900 }
3901 [Experimental("OPENAI002")]
3902 public class InputAudioClearedUpdate : RealtimeUpdate, IJsonModel<InputAudioClearedUpdate>, IPersistableModel<InputAudioClearedUpdate> {
3903 protected override RealtimeUpdate JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
3904 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
3905 protected override RealtimeUpdate PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
3906 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
3907 }
3908 [Experimental("OPENAI002")]
3909 public class InputAudioCommittedUpdate : RealtimeUpdate, IJsonModel<InputAudioCommittedUpdate>, IPersistableModel<InputAudioCommittedUpdate> {
3910 public string ItemId { get; }
3911 public string PreviousItemId { get; }
3912 protected override RealtimeUpdate JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
3913 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
3914 protected override RealtimeUpdate PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
3915 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
3916 }
3917 [Experimental("OPENAI002")]
3918 public class InputAudioSpeechFinishedUpdate : RealtimeUpdate, IJsonModel<InputAudioSpeechFinishedUpdate>, IPersistableModel<InputAudioSpeechFinishedUpdate> {
3919 public TimeSpan AudioEndTime { get; }
3920 public string ItemId { get; }
3921 protected override RealtimeUpdate JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
3922 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
3923 protected override RealtimeUpdate PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
3924 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
3925 }
3926 [Experimental("OPENAI002")]
3927 public class InputAudioSpeechStartedUpdate : RealtimeUpdate, IJsonModel<InputAudioSpeechStartedUpdate>, IPersistableModel<InputAudioSpeechStartedUpdate> {
3928 public TimeSpan AudioStartTime { get; }
3929 public string ItemId { get; }
3930 protected override RealtimeUpdate JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
3931 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
3932 protected override RealtimeUpdate PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
3933 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
3934 }
3935 [Experimental("OPENAI002")]
3936 public class InputAudioTranscriptionDeltaUpdate : RealtimeUpdate, IJsonModel<InputAudioTranscriptionDeltaUpdate>, IPersistableModel<InputAudioTranscriptionDeltaUpdate> {
3937 public int? ContentIndex { get; }
3938 public string Delta { get; }
3939 public string ItemId { get; }
3940 protected override RealtimeUpdate JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
3941 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
3942 protected override RealtimeUpdate PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
3943 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
3944 }
3945 [Experimental("OPENAI002")]
3946 public class InputAudioTranscriptionFailedUpdate : RealtimeUpdate, IJsonModel<InputAudioTranscriptionFailedUpdate>, IPersistableModel<InputAudioTranscriptionFailedUpdate> {
3947 public int ContentIndex { get; }
3948 public string ErrorCode { get; }
3949 public string ErrorMessage { get; }
3950 public string ErrorParameterName { get; }
3951 public string ItemId { get; }
3952 protected override RealtimeUpdate JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
3953 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
3954 protected override RealtimeUpdate PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
3955 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
3956 }
3957 [Experimental("OPENAI002")]
3958 public class InputAudioTranscriptionFinishedUpdate : RealtimeUpdate, IJsonModel<InputAudioTranscriptionFinishedUpdate>, IPersistableModel<InputAudioTranscriptionFinishedUpdate> {
3959 public int ContentIndex { get; }
3960 public string ItemId { get; }
3961 public string Transcript { get; }
3962 protected override RealtimeUpdate JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
3963 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
3964 protected override RealtimeUpdate PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
3965 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
3966 }
3967 [Experimental("OPENAI002")]
3968 public enum InputNoiseReductionKind {
3969 Unknown = 0,
3970 NearField = 1,
3971 FarField = 2,
3972 Disabled = 3
3973 }
3974 [Experimental("OPENAI002")]
3975 public class InputNoiseReductionOptions : IJsonModel<InputNoiseReductionOptions>, IPersistableModel<InputNoiseReductionOptions> {
3976 public InputNoiseReductionKind Kind { get; set; }
3977 public static InputNoiseReductionOptions CreateDisabledOptions();
3978 public static InputNoiseReductionOptions CreateFarFieldOptions();
3979 public static InputNoiseReductionOptions CreateNearFieldOptions();
3980 protected virtual InputNoiseReductionOptions JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
3981 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
3982 protected virtual InputNoiseReductionOptions PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
3983 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
3984 }
3985 [Experimental("OPENAI002")]
3986 public readonly partial struct InputTranscriptionModel : IEquatable<InputTranscriptionModel> {
3987 public InputTranscriptionModel(string value);
3988 public static InputTranscriptionModel Whisper1 { get; }
3989 public readonly bool Equals(InputTranscriptionModel other);
3990 [EditorBrowsable(EditorBrowsableState.Never)]
3991 public override readonly bool Equals(object obj);
3992 [EditorBrowsable(EditorBrowsableState.Never)]
3993 public override readonly int GetHashCode();
3994 public static bool operator ==(InputTranscriptionModel left, InputTranscriptionModel right);
3995 public static implicit operator InputTranscriptionModel(string value);
3996 public static bool operator !=(InputTranscriptionModel left, InputTranscriptionModel right);
3997 public override readonly string ToString();
3998 }
3999 [Experimental("OPENAI002")]
4000 public class InputTranscriptionOptions : IJsonModel<InputTranscriptionOptions>, IPersistableModel<InputTranscriptionOptions> {
4001 public string Language { get; set; }
4002 public InputTranscriptionModel? Model { get; set; }
4003 public string Prompt { get; set; }
4004 protected virtual InputTranscriptionOptions JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
4005 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
4006 protected virtual InputTranscriptionOptions PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
4007 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
4008 }
4009 [Experimental("OPENAI002")]
4010 public class ItemCreatedUpdate : RealtimeUpdate, IJsonModel<ItemCreatedUpdate>, IPersistableModel<ItemCreatedUpdate> {
4011 public string FunctionCallArguments { get; }
4012 public string FunctionCallId { get; }
4013 public string FunctionCallOutput { get; }
4014 public string FunctionName { get; }
4015 public string ItemId { get; }
4016 public IReadOnlyList<ConversationContentPart> MessageContentParts { get; }
4017 public ConversationMessageRole? MessageRole { get; }
4018 public string PreviousItemId { get; }
4019 protected override RealtimeUpdate JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
4020 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
4021 protected override RealtimeUpdate PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
4022 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
4023 }
4024 [Experimental("OPENAI002")]
4025 public class ItemDeletedUpdate : RealtimeUpdate, IJsonModel<ItemDeletedUpdate>, IPersistableModel<ItemDeletedUpdate> {
4026 public string ItemId { get; }
4027 protected override RealtimeUpdate JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
4028 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
4029 protected override RealtimeUpdate PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
4030 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
4031 }
4032 [Experimental("OPENAI002")]
4033 public class ItemRetrievedUpdate : RealtimeUpdate, IJsonModel<ItemRetrievedUpdate>, IPersistableModel<ItemRetrievedUpdate> {
4034 public RealtimeItem Item { get; }
4035 protected override RealtimeUpdate JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
4036 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
4037 protected override RealtimeUpdate PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
4038 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
4039 }
4040 [Experimental("OPENAI002")]
4041 public class ItemTruncatedUpdate : RealtimeUpdate, IJsonModel<ItemTruncatedUpdate>, IPersistableModel<ItemTruncatedUpdate> {
4042 public int AudioEndMs { get; }
4043 public int ContentIndex { get; }
4044 public string ItemId { get; }
4045 protected override RealtimeUpdate JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
4046 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
4047 protected override RealtimeUpdate PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
4048 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
4049 }
4050 [Experimental("OPENAI002")]
4051 public class OutputAudioFinishedUpdate : RealtimeUpdate, IJsonModel<OutputAudioFinishedUpdate>, IPersistableModel<OutputAudioFinishedUpdate> {
4052 public int ContentIndex { get; }
4053 public string ItemId { get; }
4054 public int OutputIndex { get; }
4055 public string ResponseId { get; }
4056 protected override RealtimeUpdate JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
4057 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
4058 protected override RealtimeUpdate PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
4059 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
4060 }
4061 [Experimental("OPENAI002")]
4062 public class OutputAudioTranscriptionFinishedUpdate : RealtimeUpdate, IJsonModel<OutputAudioTranscriptionFinishedUpdate>, IPersistableModel<OutputAudioTranscriptionFinishedUpdate> {
4063 public int ContentIndex { get; }
4064 public string ItemId { get; }
4065 public int OutputIndex { get; }
4066 public string ResponseId { get; }
4067 public string Transcript { get; }
4068 protected override RealtimeUpdate JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
4069 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
4070 protected override RealtimeUpdate PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
4071 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
4072 }
4073 [Experimental("OPENAI002")]
4074 public class OutputDeltaUpdate : RealtimeUpdate, IJsonModel<OutputDeltaUpdate>, IPersistableModel<OutputDeltaUpdate> {
4075 public BinaryData AudioBytes { get; }
4076 public string AudioTranscript { get; }
4077 public int ContentPartIndex { get; }
4078 public string FunctionArguments { get; }
4079 public string FunctionCallId { get; }
4080 public string ItemId { get; }
4081 public int ItemIndex { get; }
4082 public string ResponseId { get; }
4083 public string Text { get; }
4084 }
4085 [Experimental("OPENAI002")]
4086 public class OutputPartFinishedUpdate : RealtimeUpdate, IJsonModel<OutputPartFinishedUpdate>, IPersistableModel<OutputPartFinishedUpdate> {
4087 public string AudioTranscript { get; }
4088 public int ContentPartIndex { get; }
4089 public string FunctionArguments { get; }
4090 public string FunctionCallId { get; }
4091 public string ItemId { get; }
4092 public int ItemIndex { get; }
4093 public string ResponseId { get; }
4094 public string Text { get; }
4095 }
4096 [Experimental("OPENAI002")]
4097 public class OutputStreamingFinishedUpdate : RealtimeUpdate, IJsonModel<OutputStreamingFinishedUpdate>, IPersistableModel<OutputStreamingFinishedUpdate> {
4098 public string FunctionCallArguments { get; }
4099 public string FunctionCallId { get; }
4100 public string FunctionCallOutput { get; }
4101 public string FunctionName { get; }
4102 public string ItemId { get; }
4103 public IReadOnlyList<ConversationContentPart> MessageContentParts { get; }
4104 public ConversationMessageRole? MessageRole { get; }
4105 public int OutputIndex { get; }
4106 public string ResponseId { get; }
4107 protected override RealtimeUpdate JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
4108 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
4109 protected override RealtimeUpdate PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
4110 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
4111 }
4112 [Experimental("OPENAI002")]
4113 public class OutputStreamingStartedUpdate : RealtimeUpdate, IJsonModel<OutputStreamingStartedUpdate>, IPersistableModel<OutputStreamingStartedUpdate> {
4114 public string FunctionCallArguments { get; }
4115 public string FunctionCallId { get; }
4116 public string FunctionCallOutput { get; }
4117 public string FunctionName { get; }
4118 public string ItemId { get; }
4119 public int ItemIndex { get; }
4120 public IReadOnlyList<ConversationContentPart> MessageContentParts { get; }
4121 public ConversationMessageRole? MessageRole { get; }
4122 public string ResponseId { get; }
4123 protected override RealtimeUpdate JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
4124 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
4125 protected override RealtimeUpdate PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
4126 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
4127 }
4128 [Experimental("OPENAI002")]
4129 public class OutputTextFinishedUpdate : RealtimeUpdate, IJsonModel<OutputTextFinishedUpdate>, IPersistableModel<OutputTextFinishedUpdate> {
4130 public int ContentIndex { get; }
4131 public string ItemId { get; }
4132 public int OutputIndex { get; }
4133 public string ResponseId { get; }
4134 public string Text { get; }
4135 protected override RealtimeUpdate JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
4136 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
4137 protected override RealtimeUpdate PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
4138 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
4139 }
4140 [Experimental("OPENAI002")]
4141 public class RateLimitsUpdate : RealtimeUpdate, IJsonModel<RateLimitsUpdate>, IPersistableModel<RateLimitsUpdate> {
4142 public IReadOnlyList<ConversationRateLimitDetailsItem> AllDetails { get; }
4143 public ConversationRateLimitDetailsItem RequestDetails { get; }
4144 public ConversationRateLimitDetailsItem TokenDetails { get; }
4145 protected override RealtimeUpdate JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
4146 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
4147 protected override RealtimeUpdate PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
4148 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
4149 }
4150 [Experimental("OPENAI002")]
4151 public readonly partial struct RealtimeAudioFormat : IEquatable<RealtimeAudioFormat> {
4152 public RealtimeAudioFormat(string value);
4153 public static RealtimeAudioFormat G711Alaw { get; }
4154 public static RealtimeAudioFormat G711Ulaw { get; }
4155 public static RealtimeAudioFormat Pcm16 { get; }
4156 public readonly bool Equals(RealtimeAudioFormat other);
4157 [EditorBrowsable(EditorBrowsableState.Never)]
4158 public override readonly bool Equals(object obj);
4159 [EditorBrowsable(EditorBrowsableState.Never)]
4160 public override readonly int GetHashCode();
4161 public static bool operator ==(RealtimeAudioFormat left, RealtimeAudioFormat right);
4162 public static implicit operator RealtimeAudioFormat(string value);
4163 public static bool operator !=(RealtimeAudioFormat left, RealtimeAudioFormat right);
4164 public override readonly string ToString();
4165 }
4166 [Experimental("OPENAI002")]
4167 public class RealtimeClient {
4168 protected RealtimeClient();
4169 public RealtimeClient(ApiKeyCredential credential, OpenAIClientOptions options);
4170 public RealtimeClient(ApiKeyCredential credential);
4171 protected internal RealtimeClient(ClientPipeline pipeline, OpenAIClientOptions options);
4172 public ClientPipeline Pipeline { get; }
4173 public event EventHandler<BinaryData> OnReceivingCommand { add; remove; }
4174 public event EventHandler<BinaryData> OnSendingCommand { add; remove; }
4175 public virtual ClientResult CreateEphemeralToken(BinaryContent content, RequestOptions options = null);
4176 public virtual Task<ClientResult> CreateEphemeralTokenAsync(BinaryContent content, RequestOptions options = null);
4177 public virtual ClientResult CreateEphemeralTranscriptionToken(BinaryContent content, RequestOptions options = null);
4178 public virtual Task<ClientResult> CreateEphemeralTranscriptionTokenAsync(BinaryContent content, RequestOptions options = null);
4179 public RealtimeSession StartConversationSession(string model, CancellationToken cancellationToken = default);
4180 public virtual Task<RealtimeSession> StartConversationSessionAsync(string model, RequestOptions options);
4181 public virtual Task<RealtimeSession> StartConversationSessionAsync(string model, CancellationToken cancellationToken = default);
4182 public virtual Task<RealtimeSession> StartSessionAsync(string model, string intent, RequestOptions options);
4183 public RealtimeSession StartTranscriptionSession(CancellationToken cancellationToken = default);
4184 public virtual Task<RealtimeSession> StartTranscriptionSessionAsync(RequestOptions options);
4185 public virtual Task<RealtimeSession> StartTranscriptionSessionAsync(CancellationToken cancellationToken = default);
4186 }
4187 [Experimental("OPENAI002")]
4188 [Flags]
4189 public enum RealtimeContentModalities {
4190 Default = 0,
4191 Text = 1,
4192 Audio = 2
4193 }
4194 [Experimental("OPENAI002")]
4195 public class RealtimeErrorUpdate : RealtimeUpdate, IJsonModel<RealtimeErrorUpdate>, IPersistableModel<RealtimeErrorUpdate> {
4196 public string ErrorCode { get; }
4197 public string ErrorEventId { get; }
4198 public string Message { get; }
4199 public string ParameterName { get; }
4200 protected override RealtimeUpdate JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
4201 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
4202 protected override RealtimeUpdate PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
4203 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
4204 }
4205 [Experimental("OPENAI002")]
4206 public class RealtimeItem : IJsonModel<RealtimeItem>, IPersistableModel<RealtimeItem> {
4207 public string FunctionArguments { get; }
4208 public string FunctionCallId { get; }
4209 public string FunctionName { get; }
4210 public string Id { get; set; }
4211 public IReadOnlyList<ConversationContentPart> MessageContentParts { get; }
4212 public ConversationMessageRole? MessageRole { get; }
4213 public static RealtimeItem CreateAssistantMessage(IEnumerable<ConversationContentPart> contentItems);
4214 public static RealtimeItem CreateFunctionCall(string name, string callId, string arguments);
4215 public static RealtimeItem CreateFunctionCallOutput(string callId, string output);
4216 public static RealtimeItem CreateSystemMessage(IEnumerable<ConversationContentPart> contentItems);
4217 public static RealtimeItem CreateUserMessage(IEnumerable<ConversationContentPart> contentItems);
4218 protected virtual RealtimeItem JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
4219 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
4220 protected virtual RealtimeItem PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
4221 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
4222 }
4223 [Experimental("OPENAI002")]
4224 public class RealtimeSession : IDisposable {
4225 protected internal RealtimeSession(RealtimeClient parentClient, Uri endpoint, ApiKeyCredential credential);
4226 public Net.WebSockets.WebSocket WebSocket { get; protected set; }
4227 public virtual void AddItem(RealtimeItem item, string previousItemId, CancellationToken cancellationToken = default);
4228 public virtual void AddItem(RealtimeItem item, CancellationToken cancellationToken = default);
4229 public virtual Task AddItemAsync(RealtimeItem item, string previousItemId, CancellationToken cancellationToken = default);
4230 public virtual Task AddItemAsync(RealtimeItem item, CancellationToken cancellationToken = default);
4231 public virtual void CancelResponse(CancellationToken cancellationToken = default);
4232 public virtual Task CancelResponseAsync(CancellationToken cancellationToken = default);
4233 public virtual void ClearInputAudio(CancellationToken cancellationToken = default);
4234 public virtual Task ClearInputAudioAsync(CancellationToken cancellationToken = default);
4235 public virtual void CommitPendingAudio(CancellationToken cancellationToken = default);
4236 public virtual Task CommitPendingAudioAsync(CancellationToken cancellationToken = default);
4237 public virtual Task ConfigureConversationSessionAsync(ConversationSessionOptions sessionOptions, CancellationToken cancellationToken = default);
4238 public virtual void ConfigureSession(ConversationSessionOptions sessionOptions, CancellationToken cancellationToken = default);
4239 public virtual void ConfigureTranscriptionSession(TranscriptionSessionOptions sessionOptions, CancellationToken cancellationToken = default);
4240 public virtual Task ConfigureTranscriptionSessionAsync(TranscriptionSessionOptions sessionOptions, CancellationToken cancellationToken = default);
4241 protected internal virtual void Connect(RequestOptions options);
4242 protected internal virtual Task ConnectAsync(RequestOptions options);
4243 public virtual void DeleteItem(string itemId, CancellationToken cancellationToken = default);
4244 public virtual Task DeleteItemAsync(string itemId, CancellationToken cancellationToken = default);
4245 public void Dispose();
4246 public virtual void InterruptResponse(CancellationToken cancellationToken = default);
4247 public virtual Task InterruptResponseAsync(CancellationToken cancellationToken = default);
4248 public virtual IEnumerable<ClientResult> ReceiveUpdates(RequestOptions options);
4249 public virtual IEnumerable<RealtimeUpdate> ReceiveUpdates(CancellationToken cancellationToken = default);
4250 public virtual IAsyncEnumerable<ClientResult> ReceiveUpdatesAsync(RequestOptions options);
4251 public virtual IAsyncEnumerable<RealtimeUpdate> ReceiveUpdatesAsync(CancellationToken cancellationToken = default);
4252 public virtual void RequestItemRetrieval(string itemId, CancellationToken cancellationToken = default);
4253 public virtual Task RequestItemRetrievalAsync(string itemId, CancellationToken cancellationToken = default);
4254 public virtual void SendCommand(BinaryData data, RequestOptions options);
4255 public virtual Task SendCommandAsync(BinaryData data, RequestOptions options);
4256 public virtual void SendInputAudio(BinaryData audio, CancellationToken cancellationToken = default);
4257 public virtual void SendInputAudio(Stream audio, CancellationToken cancellationToken = default);
4258 public virtual Task SendInputAudioAsync(BinaryData audio, CancellationToken cancellationToken = default);
4259 public virtual Task SendInputAudioAsync(Stream audio, CancellationToken cancellationToken = default);
4260 public virtual void StartResponse(ConversationResponseOptions options, CancellationToken cancellationToken = default);
4261 public void StartResponse(CancellationToken cancellationToken = default);
4262 public virtual Task StartResponseAsync(ConversationResponseOptions options, CancellationToken cancellationToken = default);
4263 public virtual Task StartResponseAsync(CancellationToken cancellationToken = default);
4264 public virtual void TruncateItem(string itemId, int contentPartIndex, TimeSpan audioDuration, CancellationToken cancellationToken = default);
4265 public virtual Task TruncateItemAsync(string itemId, int contentPartIndex, TimeSpan audioDuration, CancellationToken cancellationToken = default);
4266 }
4267 [Experimental("OPENAI002")]
4268 public class RealtimeUpdate : IJsonModel<RealtimeUpdate>, IPersistableModel<RealtimeUpdate> {
4269 public string EventId { get; }
4270 public RealtimeUpdateKind Kind { get; }
4271 public BinaryData GetRawContent();
4272 protected virtual RealtimeUpdate JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
4273 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
4274 public static explicit operator RealtimeUpdate(ClientResult result);
4275 protected virtual RealtimeUpdate PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
4276 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
4277 }
4278 [Experimental("OPENAI002")]
4279 public enum RealtimeUpdateKind {
4280 Unknown = 0,
4281 SessionStarted = 1,
4282 SessionConfigured = 2,
4283 ItemCreated = 3,
4284 ConversationCreated = 4,
4285 ItemRetrieved = 5,
4286 ItemDeleted = 6,
4287 ItemTruncated = 7,
4288 ResponseStarted = 8,
4289 ResponseFinished = 9,
4290 RateLimitsUpdated = 10,
4291 ItemStreamingStarted = 11,
4292 ItemStreamingFinished = 12,
4293 ItemContentPartStarted = 13,
4294 ItemContentPartFinished = 14,
4295 ItemStreamingPartAudioDelta = 15,
4296 ItemStreamingPartAudioFinished = 16,
4297 ItemStreamingPartAudioTranscriptionDelta = 17,
4298 ItemStreamingPartAudioTranscriptionFinished = 18,
4299 ItemStreamingPartTextDelta = 19,
4300 ItemStreamingPartTextFinished = 20,
4301 ItemStreamingFunctionCallArgumentsDelta = 21,
4302 ItemStreamingFunctionCallArgumentsFinished = 22,
4303 InputSpeechStarted = 23,
4304 InputSpeechStopped = 24,
4305 InputTranscriptionFinished = 25,
4306 InputTranscriptionDelta = 26,
4307 InputTranscriptionFailed = 27,
4308 InputAudioCommitted = 28,
4309 InputAudioCleared = 29,
4310 OutputAudioBufferCleared = 30,
4311 OutputAudioBufferStarted = 31,
4312 OutputAudioBufferStopped = 32,
4313 TranscriptionSessionStarted = 33,
4314 TranscriptionSessionConfigured = 34,
4315 Error = 35
4316 }
4317 [Experimental("OPENAI002")]
4318 public readonly partial struct ResponseConversationSelection : IEquatable<ResponseConversationSelection> {
4319 public ResponseConversationSelection(string value);
4320 public static ResponseConversationSelection Auto { get; }
4321 public static ResponseConversationSelection None { get; }
4322 public readonly bool Equals(ResponseConversationSelection other);
4323 [EditorBrowsable(EditorBrowsableState.Never)]
4324 public override readonly bool Equals(object obj);
4325 [EditorBrowsable(EditorBrowsableState.Never)]
4326 public override readonly int GetHashCode();
4327 public static bool operator ==(ResponseConversationSelection left, ResponseConversationSelection right);
4328 public static implicit operator ResponseConversationSelection(string value);
4329 public static bool operator !=(ResponseConversationSelection left, ResponseConversationSelection right);
4330 public override readonly string ToString();
4331 }
4332 [Experimental("OPENAI002")]
4333 public class ResponseFinishedUpdate : RealtimeUpdate, IJsonModel<ResponseFinishedUpdate>, IPersistableModel<ResponseFinishedUpdate> {
4334 public IReadOnlyList<RealtimeItem> CreatedItems { get; }
4335 public string ResponseId { get; }
4336 public ConversationStatus? Status { get; }
4337 public ConversationStatusDetails StatusDetails { get; }
4338 public ConversationTokenUsage Usage { get; }
4339 protected override RealtimeUpdate JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
4340 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
4341 protected override RealtimeUpdate PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
4342 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
4343 }
4344 [Experimental("OPENAI002")]
4345 public class ResponseStartedUpdate : RealtimeUpdate, IJsonModel<ResponseStartedUpdate>, IPersistableModel<ResponseStartedUpdate> {
4346 public IReadOnlyList<RealtimeItem> CreatedItems { get; }
4347 public string ResponseId { get; }
4348 public ConversationStatus Status { get; }
4349 public ConversationStatusDetails StatusDetails { get; }
4350 public ConversationTokenUsage Usage { get; }
4351 protected override RealtimeUpdate JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
4352 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
4353 protected override RealtimeUpdate PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
4354 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
4355 }
4356 [Experimental("OPENAI002")]
4357 public readonly partial struct SemanticEagernessLevel : IEquatable<SemanticEagernessLevel> {
4358 public SemanticEagernessLevel(string value);
4359 public static SemanticEagernessLevel Auto { get; }
4360 public static SemanticEagernessLevel High { get; }
4361 public static SemanticEagernessLevel Low { get; }
4362 public static SemanticEagernessLevel Medium { get; }
4363 public readonly bool Equals(SemanticEagernessLevel other);
4364 [EditorBrowsable(EditorBrowsableState.Never)]
4365 public override readonly bool Equals(object obj);
4366 [EditorBrowsable(EditorBrowsableState.Never)]
4367 public override readonly int GetHashCode();
4368 public static bool operator ==(SemanticEagernessLevel left, SemanticEagernessLevel right);
4369 public static implicit operator SemanticEagernessLevel(string value);
4370 public static bool operator !=(SemanticEagernessLevel left, SemanticEagernessLevel right);
4371 public override readonly string ToString();
4372 }
4373 [Experimental("OPENAI002")]
4374 public class TranscriptionSessionConfiguredUpdate : RealtimeUpdate, IJsonModel<TranscriptionSessionConfiguredUpdate>, IPersistableModel<TranscriptionSessionConfiguredUpdate> {
4375 public RealtimeContentModalities ContentModalities { get; }
4376 public RealtimeAudioFormat InputAudioFormat { get; }
4377 public InputTranscriptionOptions InputAudioTranscription { get; }
4378 public TurnDetectionOptions TurnDetection { get; }
4379 protected override RealtimeUpdate JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
4380 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
4381 protected override RealtimeUpdate PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
4382 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
4383 }
4384 [Experimental("OPENAI002")]
4385 public class TranscriptionSessionOptions : IJsonModel<TranscriptionSessionOptions>, IPersistableModel<TranscriptionSessionOptions> {
4386 public RealtimeContentModalities ContentModalities { get; set; }
4387 public IList<string> Include { get; }
4388 public RealtimeAudioFormat? InputAudioFormat { get; set; }
4389 public InputNoiseReductionOptions InputNoiseReductionOptions { get; set; }
4390 public InputTranscriptionOptions InputTranscriptionOptions { get; set; }
4391 public TurnDetectionOptions TurnDetectionOptions { get; set; }
4392 protected virtual TranscriptionSessionOptions JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
4393 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
4394 protected virtual TranscriptionSessionOptions PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
4395 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
4396 }
4397 [Experimental("OPENAI002")]
4398 public enum TurnDetectionKind {
4399 Unknown = 0,
4400 ServerVoiceActivityDetection = 1,
4401 SemanticVoiceActivityDetection = 2,
4402 Disabled = 3
4403 }
4404 [Experimental("OPENAI002")]
4405 public class TurnDetectionOptions : IJsonModel<TurnDetectionOptions>, IPersistableModel<TurnDetectionOptions> {
4406 public TurnDetectionKind Kind { get; }
4407 public static TurnDetectionOptions CreateDisabledTurnDetectionOptions();
4408 public static TurnDetectionOptions CreateSemanticVoiceActivityTurnDetectionOptions(SemanticEagernessLevel? eagernessLevel = null, bool? enableAutomaticResponseCreation = null, bool? enableResponseInterruption = null);
4409 public static TurnDetectionOptions CreateServerVoiceActivityTurnDetectionOptions(float? detectionThreshold = null, TimeSpan? prefixPaddingDuration = null, TimeSpan? silenceDuration = null, bool? enableAutomaticResponseCreation = null, bool? enableResponseInterruption = null);
4410 protected virtual TurnDetectionOptions JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
4411 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
4412 protected virtual TurnDetectionOptions PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
4413 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
4414 }
4415}
4416namespace OpenAI.Responses {
4417 [Experimental("OPENAICUA001")]
4418 public class ComputerCallAction : IJsonModel<ComputerCallAction>, IPersistableModel<ComputerCallAction> {
4419 public Drawing.Point? ClickCoordinates { get; }
4420 public ComputerCallActionMouseButton? ClickMouseButton { get; }
4421 public Drawing.Point? DoubleClickCoordinates { get; }
4422 public IList<Drawing.Point> DragPath { get; }
4423 public IList<string> KeyPressKeyCodes { get; }
4424 public ComputerCallActionKind Kind { get; }
4425 public Drawing.Point? MoveCoordinates { get; }
4426 public Drawing.Point? ScrollCoordinates { get; }
4427 public int? ScrollHorizontalOffset { get; }
4428 public int? ScrollVerticalOffset { get; }
4429 public string TypeText { get; }
4430 public static ComputerCallAction CreateClickAction(Drawing.Point clickCoordinates, ComputerCallActionMouseButton clickMouseButton);
4431 public static ComputerCallAction CreateDoubleClickAction(Drawing.Point doubleClickCoordinates, ComputerCallActionMouseButton doubleClickMouseButton);
4432 public static ComputerCallAction CreateDragAction(IList<Drawing.Point> dragPath);
4433 public static ComputerCallAction CreateKeyPressAction(IList<string> keyCodes);
4434 public static ComputerCallAction CreateMoveAction(Drawing.Point moveCoordinates);
4435 public static ComputerCallAction CreateScreenshotAction();
4436 public static ComputerCallAction CreateScrollAction(Drawing.Point scrollCoordinates, int horizontalOffset, int verticalOffset);
4437 public static ComputerCallAction CreateTypeAction(string typeText);
4438 public static ComputerCallAction CreateWaitAction();
4439 protected virtual ComputerCallAction JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
4440 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
4441 protected virtual ComputerCallAction PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
4442 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
4443 }
4444 [Experimental("OPENAICUA001")]
4445 public enum ComputerCallActionKind {
4446 Click = 0,
4447 DoubleClick = 1,
4448 Drag = 2,
4449 KeyPress = 3,
4450 Move = 4,
4451 Screenshot = 5,
4452 Scroll = 6,
4453 Type = 7,
4454 Wait = 8
4455 }
4456 [Experimental("OPENAICUA001")]
4457 public enum ComputerCallActionMouseButton {
4458 Left = 0,
4459 Right = 1,
4460 Wheel = 2,
4461 Back = 3,
4462 Forward = 4
4463 }
4464 [Experimental("OPENAICUA001")]
4465 public class ComputerCallOutputResponseItem : ResponseItem, IJsonModel<ComputerCallOutputResponseItem>, IPersistableModel<ComputerCallOutputResponseItem> {
4466 public IList<ComputerCallSafetyCheck> AcknowledgedSafetyChecks { get; }
4467 public string CallId { get; }
4468 public ComputerOutput Output { get; }
4469 public ComputerCallOutputStatus? Status { get; }
4470 protected override ResponseItem JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
4471 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
4472 protected override ResponseItem PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
4473 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
4474 }
4475 [Experimental("OPENAICUA001")]
4476 public enum ComputerCallOutputStatus {
4477 InProgress = 0,
4478 Completed = 1,
4479 Incomplete = 2
4480 }
4481 [Experimental("OPENAICUA001")]
4482 public class ComputerCallResponseItem : ResponseItem, IJsonModel<ComputerCallResponseItem>, IPersistableModel<ComputerCallResponseItem> {
4483 public ComputerCallResponseItem(string callId, ComputerCallAction action, IEnumerable<ComputerCallSafetyCheck> pendingSafetyChecks);
4484 public ComputerCallAction Action { get; }
4485 public string CallId { get; }
4486 public IList<ComputerCallSafetyCheck> PendingSafetyChecks { get; }
4487 public ComputerCallStatus? Status { get; }
4488 protected override ResponseItem JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
4489 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
4490 protected override ResponseItem PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
4491 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
4492 }
4493 [Experimental("OPENAICUA001")]
4494 public class ComputerCallSafetyCheck : IJsonModel<ComputerCallSafetyCheck>, IPersistableModel<ComputerCallSafetyCheck> {
4495 public ComputerCallSafetyCheck(string id, string code, string message);
4496 public string Code { get; set; }
4497 public string Id { get; set; }
4498 public string Message { get; set; }
4499 protected virtual ComputerCallSafetyCheck JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
4500 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
4501 protected virtual ComputerCallSafetyCheck PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
4502 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
4503 }
4504 [Experimental("OPENAICUA001")]
4505 public enum ComputerCallStatus {
4506 InProgress = 0,
4507 Completed = 1,
4508 Incomplete = 2
4509 }
4510 [Experimental("OPENAICUA001")]
4511 public class ComputerOutput : IJsonModel<ComputerOutput>, IPersistableModel<ComputerOutput> {
4512 public static ComputerOutput CreateScreenshotOutput(BinaryData screenshotImageBytes, string screenshotImageBytesMediaType);
4513 public static ComputerOutput CreateScreenshotOutput(string screenshotImageFileId);
4514 public static ComputerOutput CreateScreenshotOutput(Uri screenshotImageUri);
4515 protected virtual ComputerOutput JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
4516 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
4517 protected virtual ComputerOutput PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
4518 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
4519 }
4520 [Experimental("OPENAICUA001")]
4521 public readonly partial struct ComputerToolEnvironment : IEquatable<ComputerToolEnvironment> {
4522 public ComputerToolEnvironment(string value);
4523 public static ComputerToolEnvironment Browser { get; }
4524 public static ComputerToolEnvironment Linux { get; }
4525 public static ComputerToolEnvironment Mac { get; }
4526 public static ComputerToolEnvironment Ubuntu { get; }
4527 public static ComputerToolEnvironment Windows { get; }
4528 public readonly bool Equals(ComputerToolEnvironment other);
4529 [EditorBrowsable(EditorBrowsableState.Never)]
4530 public override readonly bool Equals(object obj);
4531 [EditorBrowsable(EditorBrowsableState.Never)]
4532 public override readonly int GetHashCode();
4533 public static bool operator ==(ComputerToolEnvironment left, ComputerToolEnvironment right);
4534 public static implicit operator ComputerToolEnvironment(string value);
4535 public static bool operator !=(ComputerToolEnvironment left, ComputerToolEnvironment right);
4536 public override readonly string ToString();
4537 }
4538 [Experimental("OPENAI001")]
4539 public class FileSearchCallResponseItem : ResponseItem, IJsonModel<FileSearchCallResponseItem>, IPersistableModel<FileSearchCallResponseItem> {
4540 public IList<string> Queries { get; }
4541 public IList<FileSearchCallResult> Results { get; }
4542 public FileSearchCallStatus? Status { get; }
4543 protected override ResponseItem JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
4544 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
4545 protected override ResponseItem PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
4546 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
4547 }
4548 [Experimental("OPENAI001")]
4549 public class FileSearchCallResult : IJsonModel<FileSearchCallResult>, IPersistableModel<FileSearchCallResult> {
4550 public IReadOnlyDictionary<string, BinaryData> Attributes { get; }
4551 public string FileId { get; set; }
4552 public string Filename { get; set; }
4553 public float? Score { get; set; }
4554 public string Text { get; set; }
4555 protected virtual FileSearchCallResult JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
4556 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
4557 protected virtual FileSearchCallResult PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
4558 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
4559 }
4560 [Experimental("OPENAI001")]
4561 public enum FileSearchCallStatus {
4562 InProgress = 0,
4563 Searching = 1,
4564 Completed = 2,
4565 Incomplete = 3,
4566 Failed = 4
4567 }
4568 [Experimental("OPENAI001")]
4569 public readonly partial struct FileSearchToolRanker : IEquatable<FileSearchToolRanker> {
4570 public FileSearchToolRanker(string value);
4571 public static FileSearchToolRanker Auto { get; }
4572 public static FileSearchToolRanker Default20241115 { get; }
4573 public readonly bool Equals(FileSearchToolRanker other);
4574 [EditorBrowsable(EditorBrowsableState.Never)]
4575 public override readonly bool Equals(object obj);
4576 [EditorBrowsable(EditorBrowsableState.Never)]
4577 public override readonly int GetHashCode();
4578 public static bool operator ==(FileSearchToolRanker left, FileSearchToolRanker right);
4579 public static implicit operator FileSearchToolRanker(string value);
4580 public static bool operator !=(FileSearchToolRanker left, FileSearchToolRanker right);
4581 public override readonly string ToString();
4582 }
4583 [Experimental("OPENAI001")]
4584 public class FileSearchToolRankingOptions : IJsonModel<FileSearchToolRankingOptions>, IPersistableModel<FileSearchToolRankingOptions> {
4585 public FileSearchToolRanker? Ranker { get; set; }
4586 public float? ScoreThreshold { get; set; }
4587 protected virtual FileSearchToolRankingOptions JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
4588 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
4589 protected virtual FileSearchToolRankingOptions PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
4590 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
4591 }
4592 [Experimental("OPENAI001")]
4593 public class FunctionCallOutputResponseItem : ResponseItem, IJsonModel<FunctionCallOutputResponseItem>, IPersistableModel<FunctionCallOutputResponseItem> {
4594 public string CallId { get; }
4595 public string FunctionOutput { get; set; }
4596 public FunctionCallOutputStatus? Status { get; }
4597 protected override ResponseItem JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
4598 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
4599 protected override ResponseItem PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
4600 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
4601 }
4602 [Experimental("OPENAI001")]
4603 public enum FunctionCallOutputStatus {
4604 InProgress = 0,
4605 Completed = 1,
4606 Incomplete = 2
4607 }
4608 [Experimental("OPENAI001")]
4609 public class FunctionCallResponseItem : ResponseItem, IJsonModel<FunctionCallResponseItem>, IPersistableModel<FunctionCallResponseItem> {
4610 public string CallId { get; }
4611 public BinaryData FunctionArguments { get; set; }
4612 public string FunctionName { get; set; }
4613 public FunctionCallStatus? Status { get; }
4614 protected override ResponseItem JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
4615 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
4616 protected override ResponseItem PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
4617 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
4618 }
4619 [Experimental("OPENAI001")]
4620 public enum FunctionCallStatus {
4621 InProgress = 0,
4622 Completed = 1,
4623 Incomplete = 2
4624 }
4625 [Experimental("OPENAI001")]
4626 public class MessageResponseItem : ResponseItem, IJsonModel<MessageResponseItem>, IPersistableModel<MessageResponseItem> {
4627 public IList<ResponseContentPart> Content { get; }
4628 public MessageRole Role { get; }
4629 public MessageStatus? Status { get; }
4630 protected override ResponseItem JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
4631 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
4632 protected override ResponseItem PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
4633 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
4634 }
4635 [Experimental("OPENAI001")]
4636 public enum MessageRole {
4637 Unknown = 0,
4638 Assistant = 1,
4639 Developer = 2,
4640 System = 3,
4641 User = 4
4642 }
4643 [Experimental("OPENAI001")]
4644 public enum MessageStatus {
4645 InProgress = 0,
4646 Completed = 1,
4647 Incomplete = 2
4648 }
4649 [Experimental("OPENAI001")]
4650 public class OpenAIResponse : IJsonModel<OpenAIResponse>, IPersistableModel<OpenAIResponse> {
4651 public bool? Background { get; }
4652 public DateTimeOffset CreatedAt { get; }
4653 public string EndUserId { get; }
4654 public ResponseError Error { get; }
4655 public string Id { get; }
4656 public ResponseIncompleteStatusDetails IncompleteStatusDetails { get; }
4657 public string Instructions { get; }
4658 public int? MaxOutputTokenCount { get; }
4659 public IDictionary<string, string> Metadata { get; }
4660 public string Model { get; }
4661 public IList<ResponseItem> OutputItems { get; }
4662 public bool ParallelToolCallsEnabled { get; }
4663 public string PreviousResponseId { get; }
4664 public ResponseReasoningOptions ReasoningOptions { get; }
4665 public ResponseStatus? Status { get; }
4666 public float? Temperature { get; }
4667 public ResponseTextOptions TextOptions { get; }
4668 public ResponseToolChoice ToolChoice { get; }
4669 public IList<ResponseTool> Tools { get; }
4670 public float? TopP { get; }
4671 public ResponseTruncationMode? TruncationMode { get; }
4672 public ResponseTokenUsage Usage { get; }
4673 public string GetOutputText();
4674 protected virtual OpenAIResponse JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
4675 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
4676 protected virtual OpenAIResponse PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
4677 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
4678 }
4679 [Experimental("OPENAI001")]
4680 public class OpenAIResponseClient {
4681 protected OpenAIResponseClient();
4682 protected internal OpenAIResponseClient(ClientPipeline pipeline, string model, OpenAIClientOptions options);
4683 public OpenAIResponseClient(string model, ApiKeyCredential credential, OpenAIClientOptions options);
4684 public OpenAIResponseClient(string model, ApiKeyCredential credential);
4685 public OpenAIResponseClient(string model, AuthenticationPolicy authenticationPolicy, OpenAIClientOptions options);
4686 public OpenAIResponseClient(string model, AuthenticationPolicy authenticationPolicy);
4687 public OpenAIResponseClient(string model, string apiKey);
4688 public ClientPipeline Pipeline { get; }
4689 public virtual ClientResult CancelResponse(string responseId, RequestOptions options);
4690 public virtual ClientResult<OpenAIResponse> CancelResponse(string responseId, CancellationToken cancellationToken = default);
4691 public virtual Task<ClientResult> CancelResponseAsync(string responseId, RequestOptions options);
4692 public virtual Task<ClientResult<OpenAIResponse>> CancelResponseAsync(string responseId, CancellationToken cancellationToken = default);
4693 public virtual ClientResult CreateResponse(BinaryContent content, RequestOptions options = null);
4694 public virtual ClientResult<OpenAIResponse> CreateResponse(IEnumerable<ResponseItem> inputItems, ResponseCreationOptions options = null, CancellationToken cancellationToken = default);
4695 public virtual ClientResult<OpenAIResponse> CreateResponse(string userInputText, ResponseCreationOptions options = null, CancellationToken cancellationToken = default);
4696 public virtual Task<ClientResult> CreateResponseAsync(BinaryContent content, RequestOptions options = null);
4697 public virtual Task<ClientResult<OpenAIResponse>> CreateResponseAsync(IEnumerable<ResponseItem> inputItems, ResponseCreationOptions options = null, CancellationToken cancellationToken = default);
4698 public virtual Task<ClientResult<OpenAIResponse>> CreateResponseAsync(string userInputText, ResponseCreationOptions options = null, CancellationToken cancellationToken = default);
4699 public virtual CollectionResult<StreamingResponseUpdate> CreateResponseStreaming(IEnumerable<ResponseItem> inputItems, ResponseCreationOptions options = null, CancellationToken cancellationToken = default);
4700 public virtual CollectionResult<StreamingResponseUpdate> CreateResponseStreaming(string userInputText, ResponseCreationOptions options = null, CancellationToken cancellationToken = default);
4701 public virtual AsyncCollectionResult<StreamingResponseUpdate> CreateResponseStreamingAsync(IEnumerable<ResponseItem> inputItems, ResponseCreationOptions options = null, CancellationToken cancellationToken = default);
4702 public virtual AsyncCollectionResult<StreamingResponseUpdate> CreateResponseStreamingAsync(string userInputText, ResponseCreationOptions options = null, CancellationToken cancellationToken = default);
4703 public virtual ClientResult DeleteResponse(string responseId, RequestOptions options);
4704 public virtual ClientResult<ResponseDeletionResult> DeleteResponse(string responseId, CancellationToken cancellationToken = default);
4705 public virtual Task<ClientResult> DeleteResponseAsync(string responseId, RequestOptions options);
4706 public virtual Task<ClientResult<ResponseDeletionResult>> DeleteResponseAsync(string responseId, CancellationToken cancellationToken = default);
4707 public virtual ClientResult GetResponse(string responseId, bool? stream, int? startingAfter, RequestOptions options);
4708 public virtual ClientResult<OpenAIResponse> GetResponse(string responseId, CancellationToken cancellationToken = default);
4709 public virtual Task<ClientResult> GetResponseAsync(string responseId, bool? stream, int? startingAfter, RequestOptions options);
4710 public virtual Task<ClientResult<OpenAIResponse>> GetResponseAsync(string responseId, CancellationToken cancellationToken = default);
4711 public virtual CollectionResult<ResponseItem> GetResponseInputItems(string responseId, ResponseItemCollectionOptions options = null, CancellationToken cancellationToken = default);
4712 public virtual CollectionResult GetResponseInputItems(string responseId, int? limit, string order, string after, string before, RequestOptions options = null);
4713 public virtual AsyncCollectionResult<ResponseItem> GetResponseInputItemsAsync(string responseId, ResponseItemCollectionOptions options = null, CancellationToken cancellationToken = default);
4714 public virtual AsyncCollectionResult GetResponseInputItemsAsync(string responseId, int? limit, string order, string after, string before, RequestOptions options = null);
4715 public virtual CollectionResult<StreamingResponseUpdate> GetResponseStreaming(string responseId, int? startingAfter = null, CancellationToken cancellationToken = default);
4716 public virtual AsyncCollectionResult<StreamingResponseUpdate> GetResponseStreamingAsync(string responseId, int? startingAfter = null, CancellationToken cancellationToken = default);
4717 }
4718 [Experimental("OPENAI001")]
4719 public static class OpenAIResponsesModelFactory {
4720 public static MessageResponseItem MessageResponseItem(string id = null, MessageRole role = MessageRole.Assistant, MessageStatus? status = null);
4721 public static OpenAIResponse OpenAIResponse(string id = null, DateTimeOffset createdAt = default, ResponseStatus? status = null, ResponseError error = null, ResponseTokenUsage usage = null, string endUserId = null, ResponseReasoningOptions reasoningOptions = null, int? maxOutputTokenCount = null, ResponseTextOptions textOptions = null, ResponseTruncationMode? truncationMode = null, ResponseIncompleteStatusDetails incompleteStatusDetails = null, IEnumerable<ResponseItem> outputItems = null, bool parallelToolCallsEnabled = false, ResponseToolChoice toolChoice = null, string model = null, IDictionary<string, string> metadata = null, float? temperature = null, float? topP = null, string previousResponseId = null, bool? background = null, string instructions = null, IEnumerable<ResponseTool> tools = null);
4722 public static ReasoningResponseItem ReasoningResponseItem(string id = null, string encryptedContent = null, ReasoningStatus? status = null, IEnumerable<ReasoningSummaryPart> summaryParts = null);
4723 public static ReasoningResponseItem ReasoningResponseItem(string id = null, string encryptedContent = null, ReasoningStatus? status = null, string summaryText = null);
4724 public static ReferenceResponseItem ReferenceResponseItem(string id = null);
4725 }
4726 [Experimental("OPENAI001")]
4727 public class ReasoningResponseItem : ResponseItem, IJsonModel<ReasoningResponseItem>, IPersistableModel<ReasoningResponseItem> {
4728 public ReasoningResponseItem(IEnumerable<ReasoningSummaryPart> summaryParts);
4729 public ReasoningResponseItem(string summaryText);
4730 public string EncryptedContent { get; }
4731 public ReasoningStatus? Status { get; }
4732 public IReadOnlyList<ReasoningSummaryPart> SummaryParts { get; }
4733 public string GetSummaryText();
4734 protected override ResponseItem JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
4735 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
4736 protected override ResponseItem PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
4737 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
4738 }
4739 [Experimental("OPENAI001")]
4740 public enum ReasoningStatus {
4741 InProgress = 0,
4742 Completed = 1,
4743 Incomplete = 2
4744 }
4745 [Experimental("OPENAI001")]
4746 public class ReasoningSummaryPart : IJsonModel<ReasoningSummaryPart>, IPersistableModel<ReasoningSummaryPart> {
4747 public static ReasoningSummaryPart CreateTextPart(string text);
4748 protected virtual ReasoningSummaryPart JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
4749 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
4750 protected virtual ReasoningSummaryPart PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
4751 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
4752 }
4753 [Experimental("OPENAI001")]
4754 public class ReasoningSummaryTextPart : ReasoningSummaryPart, IJsonModel<ReasoningSummaryTextPart>, IPersistableModel<ReasoningSummaryTextPart> {
4755 public ReasoningSummaryTextPart(string text);
4756 public string Text { get; set; }
4757 protected override ReasoningSummaryPart JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
4758 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
4759 protected override ReasoningSummaryPart PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
4760 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
4761 }
4762 [Experimental("OPENAI001")]
4763 public class ReferenceResponseItem : ResponseItem, IJsonModel<ReferenceResponseItem>, IPersistableModel<ReferenceResponseItem> {
4764 public ReferenceResponseItem(string id);
4765 protected override ResponseItem JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
4766 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
4767 protected override ResponseItem PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
4768 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
4769 }
4770 [Experimental("OPENAI001")]
4771 public class ResponseContentPart : IJsonModel<ResponseContentPart>, IPersistableModel<ResponseContentPart> {
4772 public BinaryData InputFileBytes { get; }
4773 public string InputFileBytesMediaType { get; }
4774 public string InputFileId { get; }
4775 public string InputFilename { get; }
4776 public ResponseImageDetailLevel? InputImageDetailLevel { get; }
4777 public string InputImageFileId { get; }
4778 public ResponseContentPartKind Kind { get; }
4779 public IReadOnlyList<ResponseMessageAnnotation> OutputTextAnnotations { get; }
4780 public string Refusal { get; }
4781 public string Text { get; }
4782 public static ResponseContentPart CreateInputFilePart(BinaryData fileBytes, string fileBytesMediaType, string filename);
4783 public static ResponseContentPart CreateInputFilePart(string fileId);
4784 public static ResponseContentPart CreateInputImagePart(BinaryData imageBytes, string imageBytesMediaType, ResponseImageDetailLevel? imageDetailLevel = null);
4785 public static ResponseContentPart CreateInputImagePart(string imageFileId, ResponseImageDetailLevel? imageDetailLevel = null);
4786 public static ResponseContentPart CreateInputImagePart(Uri imageUri, ResponseImageDetailLevel? imageDetailLevel = null);
4787 public static ResponseContentPart CreateInputTextPart(string text);
4788 public static ResponseContentPart CreateOutputTextPart(string text, IEnumerable<ResponseMessageAnnotation> annotations);
4789 public static ResponseContentPart CreateRefusalPart(string refusal);
4790 protected virtual ResponseContentPart JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
4791 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
4792 protected virtual ResponseContentPart PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
4793 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
4794 }
4795 [Experimental("OPENAI001")]
4796 public enum ResponseContentPartKind {
4797 Unknown = 0,
4798 InputText = 1,
4799 InputImage = 2,
4800 InputFile = 3,
4801 OutputText = 4,
4802 Refusal = 5
4803 }
4804 [Experimental("OPENAI001")]
4805 public class ResponseCreationOptions : IJsonModel<ResponseCreationOptions>, IPersistableModel<ResponseCreationOptions> {
4806 public bool? Background { get; set; }
4807 public string EndUserId { get; set; }
4808 public string Instructions { get; set; }
4809 public int? MaxOutputTokenCount { get; set; }
4810 public IDictionary<string, string> Metadata { get; }
4811 public bool? ParallelToolCallsEnabled { get; set; }
4812 public string PreviousResponseId { get; set; }
4813 public ResponseReasoningOptions ReasoningOptions { get; set; }
4814 public bool? StoredOutputEnabled { get; set; }
4815 public float? Temperature { get; set; }
4816 public ResponseTextOptions TextOptions { get; set; }
4817 public ResponseToolChoice ToolChoice { get; set; }
4818 public IList<ResponseTool> Tools { get; }
4819 public float? TopP { get; set; }
4820 public ResponseTruncationMode? TruncationMode { get; set; }
4821 protected virtual ResponseCreationOptions JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
4822 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
4823 protected virtual ResponseCreationOptions PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
4824 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
4825 }
4826 [Experimental("OPENAI001")]
4827 public class ResponseDeletionResult : IJsonModel<ResponseDeletionResult>, IPersistableModel<ResponseDeletionResult> {
4828 public bool Deleted { get; }
4829 public string Id { get; }
4830 protected virtual ResponseDeletionResult JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
4831 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
4832 protected virtual ResponseDeletionResult PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
4833 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
4834 }
4835 [Experimental("OPENAI001")]
4836 public class ResponseError : IJsonModel<ResponseError>, IPersistableModel<ResponseError> {
4837 public ResponseErrorCode Code { get; }
4838 public string Message { get; }
4839 protected virtual ResponseError JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
4840 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
4841 protected virtual ResponseError PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
4842 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
4843 }
4844 [Experimental("OPENAI001")]
4845 public readonly partial struct ResponseErrorCode : IEquatable<ResponseErrorCode> {
4846 public ResponseErrorCode(string value);
4847 public static ResponseErrorCode EmptyImageFile { get; }
4848 public static ResponseErrorCode FailedToDownloadImage { get; }
4849 public static ResponseErrorCode ImageContentPolicyViolation { get; }
4850 public static ResponseErrorCode ImageFileNotFound { get; }
4851 public static ResponseErrorCode ImageFileTooLarge { get; }
4852 public static ResponseErrorCode ImageParseError { get; }
4853 public static ResponseErrorCode ImageTooLarge { get; }
4854 public static ResponseErrorCode ImageTooSmall { get; }
4855 public static ResponseErrorCode InvalidBase64Image { get; }
4856 public static ResponseErrorCode InvalidImage { get; }
4857 public static ResponseErrorCode InvalidImageFormat { get; }
4858 public static ResponseErrorCode InvalidImageMode { get; }
4859 public static ResponseErrorCode InvalidImageUrl { get; }
4860 public static ResponseErrorCode InvalidPrompt { get; }
4861 public static ResponseErrorCode RateLimitExceeded { get; }
4862 public static ResponseErrorCode ServerError { get; }
4863 public static ResponseErrorCode UnsupportedImageMediaType { get; }
4864 public static ResponseErrorCode VectorStoreTimeout { get; }
4865 public readonly bool Equals(ResponseErrorCode other);
4866 [EditorBrowsable(EditorBrowsableState.Never)]
4867 public override readonly bool Equals(object obj);
4868 [EditorBrowsable(EditorBrowsableState.Never)]
4869 public override readonly int GetHashCode();
4870 public static bool operator ==(ResponseErrorCode left, ResponseErrorCode right);
4871 public static implicit operator ResponseErrorCode(string value);
4872 public static bool operator !=(ResponseErrorCode left, ResponseErrorCode right);
4873 public override readonly string ToString();
4874 }
4875 [Experimental("OPENAI001")]
4876 public readonly partial struct ResponseImageDetailLevel : IEquatable<ResponseImageDetailLevel> {
4877 public ResponseImageDetailLevel(string value);
4878 public static ResponseImageDetailLevel Auto { get; }
4879 public static ResponseImageDetailLevel High { get; }
4880 public static ResponseImageDetailLevel Low { get; }
4881 public readonly bool Equals(ResponseImageDetailLevel other);
4882 [EditorBrowsable(EditorBrowsableState.Never)]
4883 public override readonly bool Equals(object obj);
4884 [EditorBrowsable(EditorBrowsableState.Never)]
4885 public override readonly int GetHashCode();
4886 public static bool operator ==(ResponseImageDetailLevel left, ResponseImageDetailLevel right);
4887 public static implicit operator ResponseImageDetailLevel(string value);
4888 public static bool operator !=(ResponseImageDetailLevel left, ResponseImageDetailLevel right);
4889 public override readonly string ToString();
4890 }
4891 [Experimental("OPENAI001")]
4892 public class ResponseIncompleteStatusDetails : IJsonModel<ResponseIncompleteStatusDetails>, IPersistableModel<ResponseIncompleteStatusDetails> {
4893 public ResponseIncompleteStatusReason? Reason { get; }
4894 protected virtual ResponseIncompleteStatusDetails JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
4895 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
4896 protected virtual ResponseIncompleteStatusDetails PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
4897 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
4898 }
4899 [Experimental("OPENAI001")]
4900 public readonly partial struct ResponseIncompleteStatusReason : IEquatable<ResponseIncompleteStatusReason> {
4901 public ResponseIncompleteStatusReason(string value);
4902 public static ResponseIncompleteStatusReason ContentFilter { get; }
4903 public static ResponseIncompleteStatusReason MaxOutputTokens { get; }
4904 public readonly bool Equals(ResponseIncompleteStatusReason other);
4905 [EditorBrowsable(EditorBrowsableState.Never)]
4906 public override readonly bool Equals(object obj);
4907 [EditorBrowsable(EditorBrowsableState.Never)]
4908 public override readonly int GetHashCode();
4909 public static bool operator ==(ResponseIncompleteStatusReason left, ResponseIncompleteStatusReason right);
4910 public static implicit operator ResponseIncompleteStatusReason(string value);
4911 public static bool operator !=(ResponseIncompleteStatusReason left, ResponseIncompleteStatusReason right);
4912 public override readonly string ToString();
4913 }
4914 [Experimental("OPENAI001")]
4915 public class ResponseInputTokenUsageDetails : IJsonModel<ResponseInputTokenUsageDetails>, IPersistableModel<ResponseInputTokenUsageDetails> {
4916 public int CachedTokenCount { get; }
4917 protected virtual ResponseInputTokenUsageDetails JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
4918 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
4919 protected virtual ResponseInputTokenUsageDetails PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
4920 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
4921 }
4922 [Experimental("OPENAI001")]
4923 public class ResponseItem : IJsonModel<ResponseItem>, IPersistableModel<ResponseItem> {
4924 public string Id { get; }
4925 public static MessageResponseItem CreateAssistantMessageItem(IEnumerable<ResponseContentPart> contentParts);
4926 public static MessageResponseItem CreateAssistantMessageItem(string outputTextContent, IEnumerable<ResponseMessageAnnotation> annotations = null);
4927 [Experimental("OPENAICUA001")]
4928 public static ComputerCallResponseItem CreateComputerCallItem(string callId, ComputerCallAction action, IEnumerable<ComputerCallSafetyCheck> pendingSafetyChecks);
4929 [Experimental("OPENAICUA001")]
4930 public static ComputerCallOutputResponseItem CreateComputerCallOutputItem(string callId, IList<ComputerCallSafetyCheck> acknowledgedSafetyChecks, BinaryData screenshotImageBytes, string screenshotImageBytesMediaType);
4931 [Experimental("OPENAICUA001")]
4932 public static ComputerCallOutputResponseItem CreateComputerCallOutputItem(string callId, IList<ComputerCallSafetyCheck> acknowledgedSafetyChecks, string screenshotImageFileId);
4933 [Experimental("OPENAICUA001")]
4934 public static ComputerCallOutputResponseItem CreateComputerCallOutputItem(string callId, IList<ComputerCallSafetyCheck> acknowledgedSafetyChecks, Uri screenshotImageUri);
4935 public static MessageResponseItem CreateDeveloperMessageItem(IEnumerable<ResponseContentPart> contentParts);
4936 public static MessageResponseItem CreateDeveloperMessageItem(string inputTextContent);
4937 public static FileSearchCallResponseItem CreateFileSearchCallItem(IEnumerable<string> queries, IEnumerable<FileSearchCallResult> results);
4938 public static FunctionCallResponseItem CreateFunctionCallItem(string callId, string functionName, BinaryData functionArguments);
4939 public static FunctionCallOutputResponseItem CreateFunctionCallOutputItem(string callId, string functionOutput);
4940 public static ReasoningResponseItem CreateReasoningItem(IEnumerable<ReasoningSummaryPart> summaryParts);
4941 public static ReasoningResponseItem CreateReasoningItem(string summaryText);
4942 public static ReferenceResponseItem CreateReferenceItem(string id);
4943 public static MessageResponseItem CreateSystemMessageItem(IEnumerable<ResponseContentPart> contentParts);
4944 public static MessageResponseItem CreateSystemMessageItem(string inputTextContent);
4945 public static MessageResponseItem CreateUserMessageItem(IEnumerable<ResponseContentPart> contentParts);
4946 public static MessageResponseItem CreateUserMessageItem(string inputTextContent);
4947 public static WebSearchCallResponseItem CreateWebSearchCallItem();
4948 protected virtual ResponseItem JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
4949 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
4950 protected virtual ResponseItem PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
4951 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
4952 }
4953 [Experimental("OPENAI001")]
4954 public class ResponseItemCollectionOptions {
4955 public string AfterId { get; set; }
4956 public string BeforeId { get; set; }
4957 public ResponseItemCollectionOrder? Order { get; set; }
4958 public int? PageSizeLimit { get; set; }
4959 }
4960 [Experimental("OPENAI001")]
4961 public readonly partial struct ResponseItemCollectionOrder : IEquatable<ResponseItemCollectionOrder> {
4962 public ResponseItemCollectionOrder(string value);
4963 public static ResponseItemCollectionOrder Ascending { get; }
4964 public static ResponseItemCollectionOrder Descending { get; }
4965 public readonly bool Equals(ResponseItemCollectionOrder other);
4966 [EditorBrowsable(EditorBrowsableState.Never)]
4967 public override readonly bool Equals(object obj);
4968 [EditorBrowsable(EditorBrowsableState.Never)]
4969 public override readonly int GetHashCode();
4970 public static bool operator ==(ResponseItemCollectionOrder left, ResponseItemCollectionOrder right);
4971 public static implicit operator ResponseItemCollectionOrder(string value);
4972 public static bool operator !=(ResponseItemCollectionOrder left, ResponseItemCollectionOrder right);
4973 public override readonly string ToString();
4974 }
4975 [Experimental("OPENAI001")]
4976 public class ResponseMessageAnnotation : IJsonModel<ResponseMessageAnnotation>, IPersistableModel<ResponseMessageAnnotation> {
4977 public string FileCitationFileId { get; }
4978 public int? FileCitationIndex { get; }
4979 public string FilePathFileId { get; }
4980 public int? FilePathIndex { get; }
4981 public ResponseMessageAnnotationKind Kind { get; }
4982 public int? UriCitationEndIndex { get; }
4983 public int? UriCitationStartIndex { get; }
4984 public string UriCitationTitle { get; }
4985 public Uri UriCitationUri { get; }
4986 protected virtual ResponseMessageAnnotation JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
4987 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
4988 protected virtual ResponseMessageAnnotation PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
4989 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
4990 }
4991 [Experimental("OPENAI001")]
4992 public enum ResponseMessageAnnotationKind {
4993 FileCitation = 0,
4994 UriCitation = 1,
4995 FilePath = 2,
4996 ContainerFileCitation = 3
4997 }
4998 [Experimental("OPENAI001")]
4999 public class ResponseOutputTokenUsageDetails : IJsonModel<ResponseOutputTokenUsageDetails>, IPersistableModel<ResponseOutputTokenUsageDetails> {
5000 public int ReasoningTokenCount { get; }
5001 protected virtual ResponseOutputTokenUsageDetails JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
5002 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
5003 protected virtual ResponseOutputTokenUsageDetails PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
5004 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
5005 }
5006 [Experimental("OPENAI001")]
5007 public readonly partial struct ResponseReasoningEffortLevel : IEquatable<ResponseReasoningEffortLevel> {
5008 public ResponseReasoningEffortLevel(string value);
5009 public static ResponseReasoningEffortLevel High { get; }
5010 public static ResponseReasoningEffortLevel Low { get; }
5011 public static ResponseReasoningEffortLevel Medium { get; }
5012 public readonly bool Equals(ResponseReasoningEffortLevel other);
5013 [EditorBrowsable(EditorBrowsableState.Never)]
5014 public override readonly bool Equals(object obj);
5015 [EditorBrowsable(EditorBrowsableState.Never)]
5016 public override readonly int GetHashCode();
5017 public static bool operator ==(ResponseReasoningEffortLevel left, ResponseReasoningEffortLevel right);
5018 public static implicit operator ResponseReasoningEffortLevel(string value);
5019 public static bool operator !=(ResponseReasoningEffortLevel left, ResponseReasoningEffortLevel right);
5020 public override readonly string ToString();
5021 }
5022 [Experimental("OPENAI001")]
5023 public class ResponseReasoningOptions : IJsonModel<ResponseReasoningOptions>, IPersistableModel<ResponseReasoningOptions> {
5024 public ResponseReasoningEffortLevel? ReasoningEffortLevel { get; set; }
5025 public ResponseReasoningSummaryVerbosity? ReasoningSummaryVerbosity { get; set; }
5026 protected virtual ResponseReasoningOptions JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
5027 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
5028 protected virtual ResponseReasoningOptions PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
5029 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
5030 }
5031 [Experimental("OPENAI001")]
5032 public readonly partial struct ResponseReasoningSummaryVerbosity : IEquatable<ResponseReasoningSummaryVerbosity> {
5033 public ResponseReasoningSummaryVerbosity(string value);
5034 public static ResponseReasoningSummaryVerbosity Auto { get; }
5035 public static ResponseReasoningSummaryVerbosity Concise { get; }
5036 public static ResponseReasoningSummaryVerbosity Detailed { get; }
5037 public readonly bool Equals(ResponseReasoningSummaryVerbosity other);
5038 [EditorBrowsable(EditorBrowsableState.Never)]
5039 public override readonly bool Equals(object obj);
5040 [EditorBrowsable(EditorBrowsableState.Never)]
5041 public override readonly int GetHashCode();
5042 public static bool operator ==(ResponseReasoningSummaryVerbosity left, ResponseReasoningSummaryVerbosity right);
5043 public static implicit operator ResponseReasoningSummaryVerbosity(string value);
5044 public static bool operator !=(ResponseReasoningSummaryVerbosity left, ResponseReasoningSummaryVerbosity right);
5045 public override readonly string ToString();
5046 }
5047 [Experimental("OPENAI001")]
5048 public enum ResponseStatus {
5049 InProgress = 0,
5050 Completed = 1,
5051 Cancelled = 2,
5052 Queued = 3,
5053 Incomplete = 4,
5054 Failed = 5
5055 }
5056 [Experimental("OPENAI001")]
5057 public class ResponseTextFormat : IJsonModel<ResponseTextFormat>, IPersistableModel<ResponseTextFormat> {
5058 public ResponseTextFormatKind Kind { get; set; }
5059 public static ResponseTextFormat CreateJsonObjectFormat();
5060 public static ResponseTextFormat CreateJsonSchemaFormat(string jsonSchemaFormatName, BinaryData jsonSchema, string jsonSchemaFormatDescription = null, bool? jsonSchemaIsStrict = null);
5061 public static ResponseTextFormat CreateTextFormat();
5062 protected virtual ResponseTextFormat JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
5063 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
5064 protected virtual ResponseTextFormat PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
5065 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
5066 }
5067 [Experimental("OPENAI001")]
5068 public enum ResponseTextFormatKind {
5069 Unknown = 0,
5070 Text = 1,
5071 JsonObject = 2,
5072 JsonSchema = 3
5073 }
5074 [Experimental("OPENAI001")]
5075 public class ResponseTextOptions : IJsonModel<ResponseTextOptions>, IPersistableModel<ResponseTextOptions> {
5076 public ResponseTextFormat TextFormat { get; set; }
5077 protected virtual ResponseTextOptions JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
5078 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
5079 protected virtual ResponseTextOptions PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
5080 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
5081 }
5082 [Experimental("OPENAI001")]
5083 public class ResponseTokenUsage : IJsonModel<ResponseTokenUsage>, IPersistableModel<ResponseTokenUsage> {
5084 public int InputTokenCount { get; }
5085 public ResponseInputTokenUsageDetails InputTokenDetails { get; }
5086 public int OutputTokenCount { get; }
5087 public ResponseOutputTokenUsageDetails OutputTokenDetails { get; }
5088 public int TotalTokenCount { get; }
5089 protected virtual ResponseTokenUsage JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
5090 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
5091 protected virtual ResponseTokenUsage PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
5092 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
5093 }
5094 [Experimental("OPENAI001")]
5095 public class ResponseTool : IJsonModel<ResponseTool>, IPersistableModel<ResponseTool> {
5096 [Experimental("OPENAICUA001")]
5097 public static ResponseTool CreateComputerTool(ComputerToolEnvironment environment, int displayWidth, int displayHeight);
5098 public static ResponseTool CreateFileSearchTool(IEnumerable<string> vectorStoreIds, int? maxResultCount = null, FileSearchToolRankingOptions rankingOptions = null, BinaryData filters = null);
5099 public static ResponseTool CreateFunctionTool(string functionName, string functionDescription, BinaryData functionParameters, bool functionSchemaIsStrict = false);
5100 public static ResponseTool CreateWebSearchTool(WebSearchUserLocation userLocation = null, WebSearchContextSize? searchContextSize = null);
5101 protected virtual ResponseTool JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
5102 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
5103 protected virtual ResponseTool PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
5104 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
5105 }
5106 [Experimental("OPENAI001")]
5107 public class ResponseToolChoice : IJsonModel<ResponseToolChoice>, IPersistableModel<ResponseToolChoice> {
5108 public string FunctionName { get; }
5109 public ResponseToolChoiceKind Kind { get; }
5110 public static ResponseToolChoice CreateAutoChoice();
5111 [Experimental("OPENAICUA001")]
5112 public static ResponseToolChoice CreateComputerChoice();
5113 public static ResponseToolChoice CreateFileSearchChoice();
5114 public static ResponseToolChoice CreateFunctionChoice(string functionName);
5115 public static ResponseToolChoice CreateNoneChoice();
5116 public static ResponseToolChoice CreateRequiredChoice();
5117 public static ResponseToolChoice CreateWebSearchChoice();
5118 }
5119 [Experimental("OPENAI001")]
5120 public enum ResponseToolChoiceKind {
5121 Unknown = 0,
5122 Auto = 1,
5123 None = 2,
5124 Required = 3,
5125 Function = 4,
5126 FileSearch = 5,
5127 WebSearch = 6,
5128 Computer = 7
5129 }
5130 [Experimental("OPENAI001")]
5131 public readonly partial struct ResponseTruncationMode : IEquatable<ResponseTruncationMode> {
5132 public ResponseTruncationMode(string value);
5133 public static ResponseTruncationMode Auto { get; }
5134 public static ResponseTruncationMode Disabled { get; }
5135 public readonly bool Equals(ResponseTruncationMode other);
5136 [EditorBrowsable(EditorBrowsableState.Never)]
5137 public override readonly bool Equals(object obj);
5138 [EditorBrowsable(EditorBrowsableState.Never)]
5139 public override readonly int GetHashCode();
5140 public static bool operator ==(ResponseTruncationMode left, ResponseTruncationMode right);
5141 public static implicit operator ResponseTruncationMode(string value);
5142 public static bool operator !=(ResponseTruncationMode left, ResponseTruncationMode right);
5143 public override readonly string ToString();
5144 }
5145 [Experimental("OPENAI001")]
5146 public class StreamingResponseCompletedUpdate : StreamingResponseUpdate, IJsonModel<StreamingResponseCompletedUpdate>, IPersistableModel<StreamingResponseCompletedUpdate> {
5147 public OpenAIResponse Response { get; }
5148 protected override StreamingResponseUpdate JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
5149 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
5150 protected override StreamingResponseUpdate PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
5151 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
5152 }
5153 [Experimental("OPENAI001")]
5154 public class StreamingResponseContentPartAddedUpdate : StreamingResponseUpdate, IJsonModel<StreamingResponseContentPartAddedUpdate>, IPersistableModel<StreamingResponseContentPartAddedUpdate> {
5155 public int ContentIndex { get; }
5156 public string ItemId { get; }
5157 public int OutputIndex { get; }
5158 public ResponseContentPart Part { get; }
5159 protected override StreamingResponseUpdate JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
5160 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
5161 protected override StreamingResponseUpdate PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
5162 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
5163 }
5164 [Experimental("OPENAI001")]
5165 public class StreamingResponseContentPartDoneUpdate : StreamingResponseUpdate, IJsonModel<StreamingResponseContentPartDoneUpdate>, IPersistableModel<StreamingResponseContentPartDoneUpdate> {
5166 public int ContentIndex { get; }
5167 public string ItemId { get; }
5168 public int OutputIndex { get; }
5169 public ResponseContentPart Part { get; }
5170 protected override StreamingResponseUpdate JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
5171 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
5172 protected override StreamingResponseUpdate PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
5173 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
5174 }
5175 [Experimental("OPENAI001")]
5176 public class StreamingResponseCreatedUpdate : StreamingResponseUpdate, IJsonModel<StreamingResponseCreatedUpdate>, IPersistableModel<StreamingResponseCreatedUpdate> {
5177 public OpenAIResponse Response { get; }
5178 protected override StreamingResponseUpdate JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
5179 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
5180 protected override StreamingResponseUpdate PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
5181 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
5182 }
5183 [Experimental("OPENAI001")]
5184 public class StreamingResponseErrorUpdate : StreamingResponseUpdate, IJsonModel<StreamingResponseErrorUpdate>, IPersistableModel<StreamingResponseErrorUpdate> {
5185 public string Code { get; }
5186 public string Message { get; }
5187 public string Param { get; }
5188 protected override StreamingResponseUpdate JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
5189 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
5190 protected override StreamingResponseUpdate PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
5191 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
5192 }
5193 [Experimental("OPENAI001")]
5194 public class StreamingResponseFailedUpdate : StreamingResponseUpdate, IJsonModel<StreamingResponseFailedUpdate>, IPersistableModel<StreamingResponseFailedUpdate> {
5195 public OpenAIResponse Response { get; }
5196 protected override StreamingResponseUpdate JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
5197 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
5198 protected override StreamingResponseUpdate PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
5199 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
5200 }
5201 [Experimental("OPENAI001")]
5202 public class StreamingResponseFileSearchCallCompletedUpdate : StreamingResponseUpdate, IJsonModel<StreamingResponseFileSearchCallCompletedUpdate>, IPersistableModel<StreamingResponseFileSearchCallCompletedUpdate> {
5203 public string ItemId { get; }
5204 public int OutputIndex { get; }
5205 protected override StreamingResponseUpdate JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
5206 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
5207 protected override StreamingResponseUpdate PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
5208 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
5209 }
5210 [Experimental("OPENAI001")]
5211 public class StreamingResponseFileSearchCallInProgressUpdate : StreamingResponseUpdate, IJsonModel<StreamingResponseFileSearchCallInProgressUpdate>, IPersistableModel<StreamingResponseFileSearchCallInProgressUpdate> {
5212 public string ItemId { get; }
5213 public int OutputIndex { get; }
5214 protected override StreamingResponseUpdate JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
5215 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
5216 protected override StreamingResponseUpdate PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
5217 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
5218 }
5219 [Experimental("OPENAI001")]
5220 public class StreamingResponseFileSearchCallSearchingUpdate : StreamingResponseUpdate, IJsonModel<StreamingResponseFileSearchCallSearchingUpdate>, IPersistableModel<StreamingResponseFileSearchCallSearchingUpdate> {
5221 public string ItemId { get; }
5222 public int OutputIndex { get; }
5223 protected override StreamingResponseUpdate JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
5224 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
5225 protected override StreamingResponseUpdate PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
5226 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
5227 }
5228 [Experimental("OPENAI001")]
5229 public class StreamingResponseFunctionCallArgumentsDeltaUpdate : StreamingResponseUpdate, IJsonModel<StreamingResponseFunctionCallArgumentsDeltaUpdate>, IPersistableModel<StreamingResponseFunctionCallArgumentsDeltaUpdate> {
5230 public string Delta { get; }
5231 public string ItemId { get; }
5232 public int OutputIndex { get; }
5233 protected override StreamingResponseUpdate JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
5234 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
5235 protected override StreamingResponseUpdate PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
5236 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
5237 }
5238 [Experimental("OPENAI001")]
5239 public class StreamingResponseFunctionCallArgumentsDoneUpdate : StreamingResponseUpdate, IJsonModel<StreamingResponseFunctionCallArgumentsDoneUpdate>, IPersistableModel<StreamingResponseFunctionCallArgumentsDoneUpdate> {
5240 public string Arguments { get; }
5241 public string ItemId { get; }
5242 public int OutputIndex { get; }
5243 protected override StreamingResponseUpdate JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
5244 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
5245 protected override StreamingResponseUpdate PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
5246 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
5247 }
5248 [Experimental("OPENAI001")]
5249 public class StreamingResponseIncompleteUpdate : StreamingResponseUpdate, IJsonModel<StreamingResponseIncompleteUpdate>, IPersistableModel<StreamingResponseIncompleteUpdate> {
5250 public OpenAIResponse Response { get; }
5251 protected override StreamingResponseUpdate JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
5252 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
5253 protected override StreamingResponseUpdate PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
5254 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
5255 }
5256 [Experimental("OPENAI001")]
5257 public class StreamingResponseInProgressUpdate : StreamingResponseUpdate, IJsonModel<StreamingResponseInProgressUpdate>, IPersistableModel<StreamingResponseInProgressUpdate> {
5258 public OpenAIResponse Response { get; }
5259 protected override StreamingResponseUpdate JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
5260 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
5261 protected override StreamingResponseUpdate PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
5262 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
5263 }
5264 [Experimental("OPENAI001")]
5265 public class StreamingResponseOutputItemAddedUpdate : StreamingResponseUpdate, IJsonModel<StreamingResponseOutputItemAddedUpdate>, IPersistableModel<StreamingResponseOutputItemAddedUpdate> {
5266 public ResponseItem Item { get; }
5267 public int OutputIndex { get; }
5268 protected override StreamingResponseUpdate JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
5269 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
5270 protected override StreamingResponseUpdate PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
5271 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
5272 }
5273 [Experimental("OPENAI001")]
5274 public class StreamingResponseOutputItemDoneUpdate : StreamingResponseUpdate, IJsonModel<StreamingResponseOutputItemDoneUpdate>, IPersistableModel<StreamingResponseOutputItemDoneUpdate> {
5275 public ResponseItem Item { get; }
5276 public int OutputIndex { get; }
5277 protected override StreamingResponseUpdate JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
5278 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
5279 protected override StreamingResponseUpdate PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
5280 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
5281 }
5282 [Experimental("OPENAI001")]
5283 public class StreamingResponseOutputTextDeltaUpdate : StreamingResponseUpdate, IJsonModel<StreamingResponseOutputTextDeltaUpdate>, IPersistableModel<StreamingResponseOutputTextDeltaUpdate> {
5284 public int ContentIndex { get; }
5285 public string Delta { get; }
5286 public string ItemId { get; }
5287 public int OutputIndex { get; }
5288 protected override StreamingResponseUpdate JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
5289 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
5290 protected override StreamingResponseUpdate PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
5291 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
5292 }
5293 [Experimental("OPENAI001")]
5294 public class StreamingResponseOutputTextDoneUpdate : StreamingResponseUpdate, IJsonModel<StreamingResponseOutputTextDoneUpdate>, IPersistableModel<StreamingResponseOutputTextDoneUpdate> {
5295 public int ContentIndex { get; }
5296 public string ItemId { get; }
5297 public int OutputIndex { get; }
5298 public string Text { get; }
5299 protected override StreamingResponseUpdate JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
5300 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
5301 protected override StreamingResponseUpdate PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
5302 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
5303 }
5304 [Experimental("OPENAI001")]
5305 public class StreamingResponseQueuedUpdate : StreamingResponseUpdate, IJsonModel<StreamingResponseQueuedUpdate>, IPersistableModel<StreamingResponseQueuedUpdate> {
5306 public OpenAIResponse Response { get; }
5307 protected override StreamingResponseUpdate JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
5308 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
5309 protected override StreamingResponseUpdate PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
5310 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
5311 }
5312 [Experimental("OPENAI001")]
5313 public class StreamingResponseRefusalDeltaUpdate : StreamingResponseUpdate, IJsonModel<StreamingResponseRefusalDeltaUpdate>, IPersistableModel<StreamingResponseRefusalDeltaUpdate> {
5314 public int ContentIndex { get; }
5315 public string Delta { get; }
5316 public string ItemId { get; }
5317 public int OutputIndex { get; }
5318 protected override StreamingResponseUpdate JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
5319 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
5320 protected override StreamingResponseUpdate PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
5321 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
5322 }
5323 [Experimental("OPENAI001")]
5324 public class StreamingResponseRefusalDoneUpdate : StreamingResponseUpdate, IJsonModel<StreamingResponseRefusalDoneUpdate>, IPersistableModel<StreamingResponseRefusalDoneUpdate> {
5325 public int ContentIndex { get; }
5326 public string ItemId { get; }
5327 public int OutputIndex { get; }
5328 public string Refusal { get; }
5329 protected override StreamingResponseUpdate JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
5330 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
5331 protected override StreamingResponseUpdate PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
5332 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
5333 }
5334 [Experimental("OPENAI001")]
5335 public class StreamingResponseTextAnnotationAddedUpdate : StreamingResponseUpdate, IJsonModel<StreamingResponseTextAnnotationAddedUpdate>, IPersistableModel<StreamingResponseTextAnnotationAddedUpdate> {
5336 public BinaryData Annotation { get; }
5337 public int AnnotationIndex { get; }
5338 public int ContentIndex { get; }
5339 public string ItemId { get; }
5340 public int OutputIndex { get; }
5341 protected override StreamingResponseUpdate JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
5342 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
5343 protected override StreamingResponseUpdate PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
5344 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
5345 }
5346 [Experimental("OPENAI001")]
5347 public class StreamingResponseUpdate : IJsonModel<StreamingResponseUpdate>, IPersistableModel<StreamingResponseUpdate> {
5348 public int SequenceNumber { get; }
5349 protected virtual StreamingResponseUpdate JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
5350 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
5351 protected virtual StreamingResponseUpdate PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
5352 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
5353 }
5354 [Experimental("OPENAI001")]
5355 public class StreamingResponseWebSearchCallCompletedUpdate : StreamingResponseUpdate, IJsonModel<StreamingResponseWebSearchCallCompletedUpdate>, IPersistableModel<StreamingResponseWebSearchCallCompletedUpdate> {
5356 public string ItemId { get; }
5357 public int OutputIndex { get; }
5358 protected override StreamingResponseUpdate JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
5359 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
5360 protected override StreamingResponseUpdate PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
5361 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
5362 }
5363 [Experimental("OPENAI001")]
5364 public class StreamingResponseWebSearchCallInProgressUpdate : StreamingResponseUpdate, IJsonModel<StreamingResponseWebSearchCallInProgressUpdate>, IPersistableModel<StreamingResponseWebSearchCallInProgressUpdate> {
5365 public string ItemId { get; }
5366 public int OutputIndex { get; }
5367 protected override StreamingResponseUpdate JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
5368 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
5369 protected override StreamingResponseUpdate PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
5370 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
5371 }
5372 [Experimental("OPENAI001")]
5373 public class StreamingResponseWebSearchCallSearchingUpdate : StreamingResponseUpdate, IJsonModel<StreamingResponseWebSearchCallSearchingUpdate>, IPersistableModel<StreamingResponseWebSearchCallSearchingUpdate> {
5374 public string ItemId { get; }
5375 public int OutputIndex { get; }
5376 protected override StreamingResponseUpdate JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
5377 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
5378 protected override StreamingResponseUpdate PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
5379 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
5380 }
5381 [Experimental("OPENAI001")]
5382 public class WebSearchCallResponseItem : ResponseItem, IJsonModel<WebSearchCallResponseItem>, IPersistableModel<WebSearchCallResponseItem> {
5383 public WebSearchCallStatus? Status { get; }
5384 protected override ResponseItem JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
5385 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
5386 protected override ResponseItem PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
5387 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
5388 }
5389 [Experimental("OPENAI001")]
5390 public enum WebSearchCallStatus {
5391 InProgress = 0,
5392 Searching = 1,
5393 Completed = 2,
5394 Failed = 3
5395 }
5396 [Experimental("OPENAI001")]
5397 public readonly partial struct WebSearchContextSize : IEquatable<WebSearchContextSize> {
5398 public WebSearchContextSize(string value);
5399 public static WebSearchContextSize High { get; }
5400 public static WebSearchContextSize Low { get; }
5401 public static WebSearchContextSize Medium { get; }
5402 public readonly bool Equals(WebSearchContextSize other);
5403 [EditorBrowsable(EditorBrowsableState.Never)]
5404 public override readonly bool Equals(object obj);
5405 [EditorBrowsable(EditorBrowsableState.Never)]
5406 public override readonly int GetHashCode();
5407 public static bool operator ==(WebSearchContextSize left, WebSearchContextSize right);
5408 public static implicit operator WebSearchContextSize(string value);
5409 public static bool operator !=(WebSearchContextSize left, WebSearchContextSize right);
5410 public override readonly string ToString();
5411 }
5412 [Experimental("OPENAI001")]
5413 public class WebSearchUserLocation : IJsonModel<WebSearchUserLocation>, IPersistableModel<WebSearchUserLocation> {
5414 public static WebSearchUserLocation CreateApproximateLocation(string country = null, string region = null, string city = null, string timezone = null);
5415 protected virtual WebSearchUserLocation JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
5416 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
5417 protected virtual WebSearchUserLocation PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
5418 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
5419 }
5420}
5421namespace OpenAI.VectorStores {
5422 [Experimental("OPENAI001")]
5423 public class AddFileToVectorStoreOperation : OperationResult {
5424 public string FileId { get; }
5425 public override ContinuationToken? RehydrationToken { get; protected set; }
5426 public VectorStoreFileAssociationStatus? Status { get; }
5427 public VectorStoreFileAssociation? Value { get; }
5428 public string VectorStoreId { get; }
5429 public virtual ClientResult GetFileAssociation(RequestOptions? options);
5430 public virtual ClientResult<VectorStoreFileAssociation> GetFileAssociation(CancellationToken cancellationToken = default);
5431 public virtual Task<ClientResult> GetFileAssociationAsync(RequestOptions? options);
5432 public virtual Task<ClientResult<VectorStoreFileAssociation>> GetFileAssociationAsync(CancellationToken cancellationToken = default);
5433 public static AddFileToVectorStoreOperation Rehydrate(VectorStoreClient client, ContinuationToken rehydrationToken, CancellationToken cancellationToken = default);
5434 public static Task<AddFileToVectorStoreOperation> RehydrateAsync(VectorStoreClient client, ContinuationToken rehydrationToken, CancellationToken cancellationToken = default);
5435 public override ClientResult UpdateStatus(RequestOptions? options = null);
5436 public override ValueTask<ClientResult> UpdateStatusAsync(RequestOptions? options = null);
5437 }
5438 [Experimental("OPENAI001")]
5439 public class CreateBatchFileJobOperation : OperationResult {
5440 public string BatchId { get; }
5441 public override ContinuationToken? RehydrationToken { get; protected set; }
5442 public VectorStoreBatchFileJobStatus? Status { get; }
5443 public VectorStoreBatchFileJob? Value { get; }
5444 public string VectorStoreId { get; }
5445 public virtual ClientResult Cancel(RequestOptions? options);
5446 public virtual ClientResult<VectorStoreBatchFileJob> Cancel(CancellationToken cancellationToken = default);
5447 public virtual Task<ClientResult> CancelAsync(RequestOptions? options);
5448 public virtual Task<ClientResult<VectorStoreBatchFileJob>> CancelAsync(CancellationToken cancellationToken = default);
5449 public virtual ClientResult GetFileBatch(RequestOptions? options);
5450 public virtual ClientResult<VectorStoreBatchFileJob> GetFileBatch(CancellationToken cancellationToken = default);
5451 public virtual Task<ClientResult> GetFileBatchAsync(RequestOptions? options);
5452 public virtual Task<ClientResult<VectorStoreBatchFileJob>> GetFileBatchAsync(CancellationToken cancellationToken = default);
5453 public static CreateBatchFileJobOperation Rehydrate(VectorStoreClient client, ContinuationToken rehydrationToken, CancellationToken cancellationToken = default);
5454 public static Task<CreateBatchFileJobOperation> RehydrateAsync(VectorStoreClient client, ContinuationToken rehydrationToken, CancellationToken cancellationToken = default);
5455 public override ClientResult UpdateStatus(RequestOptions? options = null);
5456 public override ValueTask<ClientResult> UpdateStatusAsync(RequestOptions? options = null);
5457 }
5458 [Experimental("OPENAI001")]
5459 public class CreateVectorStoreOperation : OperationResult {
5460 public override ContinuationToken? RehydrationToken { get; protected set; }
5461 public VectorStoreStatus? Status { get; }
5462 public VectorStore? Value { get; }
5463 public string VectorStoreId { get; }
5464 public virtual ClientResult GetVectorStore(RequestOptions? options);
5465 public virtual ClientResult<VectorStore> GetVectorStore(CancellationToken cancellationToken = default);
5466 public virtual Task<ClientResult> GetVectorStoreAsync(RequestOptions? options);
5467 public virtual Task<ClientResult<VectorStore>> GetVectorStoreAsync(CancellationToken cancellationToken = default);
5468 public static CreateVectorStoreOperation Rehydrate(VectorStoreClient client, ContinuationToken rehydrationToken, CancellationToken cancellationToken = default);
5469 public static Task<CreateVectorStoreOperation> RehydrateAsync(VectorStoreClient client, ContinuationToken rehydrationToken, CancellationToken cancellationToken = default);
5470 public override ClientResult UpdateStatus(RequestOptions? options = null);
5471 public override ValueTask<ClientResult> UpdateStatusAsync(RequestOptions? options = null);
5472 }
5473 [Experimental("OPENAI001")]
5474 public abstract class FileChunkingStrategy : IJsonModel<FileChunkingStrategy>, IPersistableModel<FileChunkingStrategy> {
5475 public static FileChunkingStrategy Auto { get; }
5476 public static FileChunkingStrategy Unknown { get; }
5477 public static FileChunkingStrategy CreateStaticStrategy(int maxTokensPerChunk, int overlappingTokenCount);
5478 protected virtual FileChunkingStrategy JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
5479 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
5480 protected virtual FileChunkingStrategy PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
5481 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
5482 }
5483 [Experimental("OPENAI001")]
5484 public class FileFromStoreRemovalResult : IJsonModel<FileFromStoreRemovalResult>, IPersistableModel<FileFromStoreRemovalResult> {
5485 public string FileId { get; }
5486 public bool Removed { get; }
5487 protected virtual FileFromStoreRemovalResult JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
5488 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
5489 protected virtual FileFromStoreRemovalResult PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
5490 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
5491 }
5492 [Experimental("OPENAI001")]
5493 public class StaticFileChunkingStrategy : FileChunkingStrategy, IJsonModel<StaticFileChunkingStrategy>, IPersistableModel<StaticFileChunkingStrategy> {
5494 public StaticFileChunkingStrategy(int maxTokensPerChunk, int overlappingTokenCount);
5495 public int MaxTokensPerChunk { get; }
5496 public int OverlappingTokenCount { get; }
5497 protected override FileChunkingStrategy JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
5498 protected override void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
5499 protected override FileChunkingStrategy PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
5500 protected override BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
5501 }
5502 [Experimental("OPENAI001")]
5503 public class VectorStore : IJsonModel<VectorStore>, IPersistableModel<VectorStore> {
5504 public DateTimeOffset CreatedAt { get; }
5505 public VectorStoreExpirationPolicy ExpirationPolicy { get; }
5506 public DateTimeOffset? ExpiresAt { get; }
5507 public VectorStoreFileCounts FileCounts { get; }
5508 public string Id { get; }
5509 public DateTimeOffset? LastActiveAt { get; }
5510 public IReadOnlyDictionary<string, string> Metadata { get; }
5511 public string Name { get; }
5512 public VectorStoreStatus Status { get; }
5513 public int UsageBytes { get; }
5514 protected virtual VectorStore JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
5515 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
5516 protected virtual VectorStore PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
5517 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
5518 }
5519 [Experimental("OPENAI001")]
5520 public class VectorStoreBatchFileJob : IJsonModel<VectorStoreBatchFileJob>, IPersistableModel<VectorStoreBatchFileJob> {
5521 public string BatchId { get; }
5522 public DateTimeOffset CreatedAt { get; }
5523 public VectorStoreFileCounts FileCounts { get; }
5524 public VectorStoreBatchFileJobStatus Status { get; }
5525 public string VectorStoreId { get; }
5526 protected virtual VectorStoreBatchFileJob JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
5527 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
5528 protected virtual VectorStoreBatchFileJob PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
5529 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
5530 }
5531 [Experimental("OPENAI001")]
5532 public readonly partial struct VectorStoreBatchFileJobStatus : IEquatable<VectorStoreBatchFileJobStatus> {
5533 public VectorStoreBatchFileJobStatus(string value);
5534 public static VectorStoreBatchFileJobStatus Cancelled { get; }
5535 public static VectorStoreBatchFileJobStatus Completed { get; }
5536 public static VectorStoreBatchFileJobStatus Failed { get; }
5537 public static VectorStoreBatchFileJobStatus InProgress { get; }
5538 public readonly bool Equals(VectorStoreBatchFileJobStatus other);
5539 [EditorBrowsable(EditorBrowsableState.Never)]
5540 public override readonly bool Equals(object obj);
5541 [EditorBrowsable(EditorBrowsableState.Never)]
5542 public override readonly int GetHashCode();
5543 public static bool operator ==(VectorStoreBatchFileJobStatus left, VectorStoreBatchFileJobStatus right);
5544 public static implicit operator VectorStoreBatchFileJobStatus(string value);
5545 public static bool operator !=(VectorStoreBatchFileJobStatus left, VectorStoreBatchFileJobStatus right);
5546 public override readonly string ToString();
5547 }
5548 [Experimental("OPENAI001")]
5549 public class VectorStoreClient {
5550 protected VectorStoreClient();
5551 public VectorStoreClient(ApiKeyCredential credential, OpenAIClientOptions options);
5552 public VectorStoreClient(ApiKeyCredential credential);
5553 public VectorStoreClient(AuthenticationPolicy authenticationPolicy, OpenAIClientOptions options);
5554 public VectorStoreClient(AuthenticationPolicy authenticationPolicy);
5555 protected internal VectorStoreClient(ClientPipeline pipeline, OpenAIClientOptions options);
5556 public VectorStoreClient(string apiKey);
5557 public ClientPipeline Pipeline { get; }
5558 public virtual AddFileToVectorStoreOperation AddFileToVectorStore(string vectorStoreId, BinaryContent content, bool waitUntilCompleted, RequestOptions options = null);
5559 public virtual AddFileToVectorStoreOperation AddFileToVectorStore(string vectorStoreId, string fileId, bool waitUntilCompleted, CancellationToken cancellationToken = default);
5560 public virtual Task<AddFileToVectorStoreOperation> AddFileToVectorStoreAsync(string vectorStoreId, BinaryContent content, bool waitUntilCompleted, RequestOptions options = null);
5561 public virtual Task<AddFileToVectorStoreOperation> AddFileToVectorStoreAsync(string vectorStoreId, string fileId, bool waitUntilCompleted, CancellationToken cancellationToken = default);
5562 public virtual ClientResult CancelBatchFileJob(string vectorStoreId, string batchId, RequestOptions options);
5563 public virtual ClientResult<VectorStoreBatchFileJob> CancelBatchFileJob(string vectorStoreId, string batchJobId, CancellationToken cancellationToken = default);
5564 public virtual Task<ClientResult> CancelBatchFileJobAsync(string vectorStoreId, string batchId, RequestOptions options);
5565 public virtual Task<ClientResult<VectorStoreBatchFileJob>> CancelBatchFileJobAsync(string vectorStoreId, string batchJobId, CancellationToken cancellationToken = default);
5566 public virtual CreateBatchFileJobOperation CreateBatchFileJob(string vectorStoreId, BinaryContent content, bool waitUntilCompleted, RequestOptions options = null);
5567 public virtual CreateBatchFileJobOperation CreateBatchFileJob(string vectorStoreId, IEnumerable<string> fileIds, bool waitUntilCompleted, CancellationToken cancellationToken = default);
5568 public virtual Task<CreateBatchFileJobOperation> CreateBatchFileJobAsync(string vectorStoreId, BinaryContent content, bool waitUntilCompleted, RequestOptions options = null);
5569 public virtual Task<CreateBatchFileJobOperation> CreateBatchFileJobAsync(string vectorStoreId, IEnumerable<string> fileIds, bool waitUntilCompleted, CancellationToken cancellationToken = default);
5570 public virtual CreateVectorStoreOperation CreateVectorStore(bool waitUntilCompleted, VectorStoreCreationOptions options = null, CancellationToken cancellationToken = default);
5571 public virtual CreateVectorStoreOperation CreateVectorStore(BinaryContent content, bool waitUntilCompleted, RequestOptions options = null);
5572 public virtual ClientResult CreateVectorStore(BinaryContent content, RequestOptions options = null);
5573 public virtual Task<CreateVectorStoreOperation> CreateVectorStoreAsync(bool waitUntilCompleted, VectorStoreCreationOptions options = null, CancellationToken cancellationToken = default);
5574 public virtual Task<CreateVectorStoreOperation> CreateVectorStoreAsync(BinaryContent content, bool waitUntilCompleted, RequestOptions options = null);
5575 public virtual Task<ClientResult> CreateVectorStoreAsync(BinaryContent content, RequestOptions options = null);
5576 public virtual ClientResult DeleteVectorStore(string vectorStoreId, RequestOptions options);
5577 public virtual ClientResult<VectorStoreDeletionResult> DeleteVectorStore(string vectorStoreId, CancellationToken cancellationToken = default);
5578 public virtual Task<ClientResult> DeleteVectorStoreAsync(string vectorStoreId, RequestOptions options);
5579 public virtual Task<ClientResult<VectorStoreDeletionResult>> DeleteVectorStoreAsync(string vectorStoreId, CancellationToken cancellationToken = default);
5580 public virtual ClientResult<VectorStoreBatchFileJob> GetBatchFileJob(string vectorStoreId, string batchJobId, CancellationToken cancellationToken = default);
5581 public virtual Task<ClientResult<VectorStoreBatchFileJob>> GetBatchFileJobAsync(string vectorStoreId, string batchJobId, CancellationToken cancellationToken = default);
5582 public virtual ClientResult GetFileAssociation(string vectorStoreId, string fileId, RequestOptions options);
5583 public virtual ClientResult<VectorStoreFileAssociation> GetFileAssociation(string vectorStoreId, string fileId, CancellationToken cancellationToken = default);
5584 public virtual Task<ClientResult> GetFileAssociationAsync(string vectorStoreId, string fileId, RequestOptions options);
5585 public virtual Task<ClientResult<VectorStoreFileAssociation>> GetFileAssociationAsync(string vectorStoreId, string fileId, CancellationToken cancellationToken = default);
5586 public virtual CollectionResult<VectorStoreFileAssociation> GetFileAssociations(ContinuationToken firstPageToken, CancellationToken cancellationToken = default);
5587 public virtual CollectionResult<VectorStoreFileAssociation> GetFileAssociations(string vectorStoreId, VectorStoreFileAssociationCollectionOptions options = null, CancellationToken cancellationToken = default);
5588 public virtual CollectionResult GetFileAssociations(string vectorStoreId, int? limit, string order, string after, string before, string filter, RequestOptions options);
5589 public virtual CollectionResult<VectorStoreFileAssociation> GetFileAssociations(string vectorStoreId, string batchJobId, VectorStoreFileAssociationCollectionOptions options = null, CancellationToken cancellationToken = default);
5590 public virtual CollectionResult<VectorStoreFileAssociation> GetFileAssociations(string vectorStoreId, string batchJobId, ContinuationToken firstPageToken, CancellationToken cancellationToken = default);
5591 public virtual CollectionResult GetFileAssociations(string vectorStoreId, string batchId, int? limit, string order, string after, string before, string filter, RequestOptions options);
5592 public virtual AsyncCollectionResult<VectorStoreFileAssociation> GetFileAssociationsAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = default);
5593 public virtual AsyncCollectionResult<VectorStoreFileAssociation> GetFileAssociationsAsync(string vectorStoreId, VectorStoreFileAssociationCollectionOptions options = null, CancellationToken cancellationToken = default);
5594 public virtual AsyncCollectionResult GetFileAssociationsAsync(string vectorStoreId, int? limit, string order, string after, string before, string filter, RequestOptions options);
5595 public virtual AsyncCollectionResult<VectorStoreFileAssociation> GetFileAssociationsAsync(string vectorStoreId, string batchJobId, VectorStoreFileAssociationCollectionOptions options = null, CancellationToken cancellationToken = default);
5596 public virtual AsyncCollectionResult<VectorStoreFileAssociation> GetFileAssociationsAsync(string vectorStoreId, string batchJobId, ContinuationToken firstPageToken, CancellationToken cancellationToken = default);
5597 public virtual AsyncCollectionResult GetFileAssociationsAsync(string vectorStoreId, string batchId, int? limit, string order, string after, string before, string filter, RequestOptions options);
5598 public virtual ClientResult<VectorStore> GetVectorStore(string vectorStoreId, CancellationToken cancellationToken = default);
5599 public virtual CollectionResult<VectorStore> GetVectorStores(VectorStoreCollectionOptions options = null, CancellationToken cancellationToken = default);
5600 public virtual CollectionResult<VectorStore> GetVectorStores(ContinuationToken firstPageToken, CancellationToken cancellationToken = default);
5601 public virtual CollectionResult GetVectorStores(int? limit, string order, string after, string before, RequestOptions options);
5602 public virtual AsyncCollectionResult<VectorStore> GetVectorStoresAsync(VectorStoreCollectionOptions options = null, CancellationToken cancellationToken = default);
5603 public virtual AsyncCollectionResult<VectorStore> GetVectorStoresAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = default);
5604 public virtual AsyncCollectionResult GetVectorStoresAsync(int? limit, string order, string after, string before, RequestOptions options);
5605 public virtual ClientResult<VectorStore> ModifyVectorStore(string vectorStoreId, VectorStoreModificationOptions options, CancellationToken cancellationToken = default);
5606 public virtual ClientResult ModifyVectorStore(string vectorStoreId, BinaryContent content, RequestOptions options = null);
5607 public virtual Task<ClientResult<VectorStore>> ModifyVectorStoreAsync(string vectorStoreId, VectorStoreModificationOptions options, CancellationToken cancellationToken = default);
5608 public virtual Task<ClientResult> ModifyVectorStoreAsync(string vectorStoreId, BinaryContent content, RequestOptions options = null);
5609 public virtual ClientResult RemoveFileFromStore(string vectorStoreId, string fileId, RequestOptions options);
5610 public virtual ClientResult<FileFromStoreRemovalResult> RemoveFileFromStore(string vectorStoreId, string fileId, CancellationToken cancellationToken = default);
5611 public virtual Task<ClientResult> RemoveFileFromStoreAsync(string vectorStoreId, string fileId, RequestOptions options);
5612 public virtual Task<ClientResult<FileFromStoreRemovalResult>> RemoveFileFromStoreAsync(string vectorStoreId, string fileId, CancellationToken cancellationToken = default);
5613 public virtual ClientResult RetrieveVectorStoreFileContent(string vectorStoreId, string fileId, RequestOptions options);
5614 public virtual Task<ClientResult> RetrieveVectorStoreFileContentAsync(string vectorStoreId, string fileId, RequestOptions options);
5615 public virtual ClientResult SearchVectorStore(string vectorStoreId, BinaryContent content, RequestOptions options = null);
5616 public virtual Task<ClientResult> SearchVectorStoreAsync(string vectorStoreId, BinaryContent content, RequestOptions options = null);
5617 public virtual ClientResult UpdateVectorStoreFileAttributes(string vectorStoreId, string fileId, BinaryContent content, RequestOptions options = null);
5618 public virtual ClientResult<VectorStoreFileAssociation> UpdateVectorStoreFileAttributes(string vectorStoreId, string fileId, IDictionary<string, BinaryData> attributes, CancellationToken cancellationToken = default);
5619 public virtual Task<ClientResult> UpdateVectorStoreFileAttributesAsync(string vectorStoreId, string fileId, BinaryContent content, RequestOptions options = null);
5620 public virtual Task<ClientResult<VectorStoreFileAssociation>> UpdateVectorStoreFileAttributesAsync(string vectorStoreId, string fileId, IDictionary<string, BinaryData> attributes, CancellationToken cancellationToken = default);
5621 }
5622 [Experimental("OPENAI001")]
5623 public class VectorStoreCollectionOptions {
5624 public string AfterId { get; set; }
5625 public string BeforeId { get; set; }
5626 public VectorStoreCollectionOrder? Order { get; set; }
5627 public int? PageSizeLimit { get; set; }
5628 }
5629 [Experimental("OPENAI001")]
5630 public readonly partial struct VectorStoreCollectionOrder : IEquatable<VectorStoreCollectionOrder> {
5631 public VectorStoreCollectionOrder(string value);
5632 public static VectorStoreCollectionOrder Ascending { get; }
5633 public static VectorStoreCollectionOrder Descending { get; }
5634 public readonly bool Equals(VectorStoreCollectionOrder other);
5635 [EditorBrowsable(EditorBrowsableState.Never)]
5636 public override readonly bool Equals(object obj);
5637 [EditorBrowsable(EditorBrowsableState.Never)]
5638 public override readonly int GetHashCode();
5639 public static bool operator ==(VectorStoreCollectionOrder left, VectorStoreCollectionOrder right);
5640 public static implicit operator VectorStoreCollectionOrder(string value);
5641 public static bool operator !=(VectorStoreCollectionOrder left, VectorStoreCollectionOrder right);
5642 public override readonly string ToString();
5643 }
5644 [Experimental("OPENAI001")]
5645 public class VectorStoreCreationOptions : IJsonModel<VectorStoreCreationOptions>, IPersistableModel<VectorStoreCreationOptions> {
5646 public FileChunkingStrategy ChunkingStrategy { get; set; }
5647 public VectorStoreExpirationPolicy ExpirationPolicy { get; set; }
5648 public IList<string> FileIds { get; }
5649 public IDictionary<string, string> Metadata { get; }
5650 public string Name { get; set; }
5651 protected virtual VectorStoreCreationOptions JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
5652 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
5653 protected virtual VectorStoreCreationOptions PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
5654 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
5655 }
5656 [Experimental("OPENAI001")]
5657 public class VectorStoreDeletionResult : IJsonModel<VectorStoreDeletionResult>, IPersistableModel<VectorStoreDeletionResult> {
5658 public bool Deleted { get; }
5659 public string VectorStoreId { get; }
5660 protected virtual VectorStoreDeletionResult JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
5661 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
5662 protected virtual VectorStoreDeletionResult PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
5663 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
5664 }
5665 [Experimental("OPENAI001")]
5666 public enum VectorStoreExpirationAnchor {
5667 Unknown = 0,
5668 LastActiveAt = 1
5669 }
5670 [Experimental("OPENAI001")]
5671 public class VectorStoreExpirationPolicy : IJsonModel<VectorStoreExpirationPolicy>, IPersistableModel<VectorStoreExpirationPolicy> {
5672 public VectorStoreExpirationPolicy(VectorStoreExpirationAnchor anchor, int days);
5673 public VectorStoreExpirationAnchor Anchor { get; set; }
5674 public int Days { get; set; }
5675 protected virtual VectorStoreExpirationPolicy JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
5676 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
5677 protected virtual VectorStoreExpirationPolicy PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
5678 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
5679 }
5680 [Experimental("OPENAI001")]
5681 public class VectorStoreFileAssociation : IJsonModel<VectorStoreFileAssociation>, IPersistableModel<VectorStoreFileAssociation> {
5682 public IDictionary<string, BinaryData> Attributes { get; }
5683 public FileChunkingStrategy ChunkingStrategy { get; }
5684 public DateTimeOffset CreatedAt { get; }
5685 public string FileId { get; }
5686 public VectorStoreFileAssociationError LastError { get; }
5687 public int Size { get; }
5688 public VectorStoreFileAssociationStatus Status { get; }
5689 public string VectorStoreId { get; }
5690 protected virtual VectorStoreFileAssociation JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
5691 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
5692 protected virtual VectorStoreFileAssociation PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
5693 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
5694 }
5695 [Experimental("OPENAI001")]
5696 public class VectorStoreFileAssociationCollectionOptions {
5697 public string AfterId { get; set; }
5698 public string BeforeId { get; set; }
5699 public VectorStoreFileStatusFilter? Filter { get; set; }
5700 public VectorStoreFileAssociationCollectionOrder? Order { get; set; }
5701 public int? PageSizeLimit { get; set; }
5702 }
5703 [Experimental("OPENAI001")]
5704 public readonly partial struct VectorStoreFileAssociationCollectionOrder : IEquatable<VectorStoreFileAssociationCollectionOrder> {
5705 public VectorStoreFileAssociationCollectionOrder(string value);
5706 public static VectorStoreFileAssociationCollectionOrder Ascending { get; }
5707 public static VectorStoreFileAssociationCollectionOrder Descending { get; }
5708 public readonly bool Equals(VectorStoreFileAssociationCollectionOrder other);
5709 [EditorBrowsable(EditorBrowsableState.Never)]
5710 public override readonly bool Equals(object obj);
5711 [EditorBrowsable(EditorBrowsableState.Never)]
5712 public override readonly int GetHashCode();
5713 public static bool operator ==(VectorStoreFileAssociationCollectionOrder left, VectorStoreFileAssociationCollectionOrder right);
5714 public static implicit operator VectorStoreFileAssociationCollectionOrder(string value);
5715 public static bool operator !=(VectorStoreFileAssociationCollectionOrder left, VectorStoreFileAssociationCollectionOrder right);
5716 public override readonly string ToString();
5717 }
5718 [Experimental("OPENAI001")]
5719 public class VectorStoreFileAssociationError : IJsonModel<VectorStoreFileAssociationError>, IPersistableModel<VectorStoreFileAssociationError> {
5720 public VectorStoreFileAssociationErrorCode Code { get; }
5721 public string Message { get; }
5722 protected virtual VectorStoreFileAssociationError JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
5723 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
5724 protected virtual VectorStoreFileAssociationError PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
5725 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
5726 }
5727 [Experimental("OPENAI001")]
5728 public readonly partial struct VectorStoreFileAssociationErrorCode : IEquatable<VectorStoreFileAssociationErrorCode> {
5729 public VectorStoreFileAssociationErrorCode(string value);
5730 public static VectorStoreFileAssociationErrorCode InvalidFile { get; }
5731 public static VectorStoreFileAssociationErrorCode ServerError { get; }
5732 public static VectorStoreFileAssociationErrorCode UnsupportedFile { get; }
5733 public readonly bool Equals(VectorStoreFileAssociationErrorCode other);
5734 [EditorBrowsable(EditorBrowsableState.Never)]
5735 public override readonly bool Equals(object obj);
5736 [EditorBrowsable(EditorBrowsableState.Never)]
5737 public override readonly int GetHashCode();
5738 public static bool operator ==(VectorStoreFileAssociationErrorCode left, VectorStoreFileAssociationErrorCode right);
5739 public static implicit operator VectorStoreFileAssociationErrorCode(string value);
5740 public static bool operator !=(VectorStoreFileAssociationErrorCode left, VectorStoreFileAssociationErrorCode right);
5741 public override readonly string ToString();
5742 }
5743 [Experimental("OPENAI001")]
5744 public enum VectorStoreFileAssociationStatus {
5745 Unknown = 0,
5746 InProgress = 1,
5747 Completed = 2,
5748 Cancelled = 3,
5749 Failed = 4
5750 }
5751 [Experimental("OPENAI001")]
5752 public class VectorStoreFileCounts : IJsonModel<VectorStoreFileCounts>, IPersistableModel<VectorStoreFileCounts> {
5753 public int Cancelled { get; }
5754 public int Completed { get; }
5755 public int Failed { get; }
5756 public int InProgress { get; }
5757 public int Total { get; }
5758 protected virtual VectorStoreFileCounts JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
5759 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
5760 protected virtual VectorStoreFileCounts PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
5761 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
5762 }
5763 [Experimental("OPENAI001")]
5764 public readonly partial struct VectorStoreFileStatusFilter : IEquatable<VectorStoreFileStatusFilter> {
5765 public VectorStoreFileStatusFilter(string value);
5766 public static VectorStoreFileStatusFilter Cancelled { get; }
5767 public static VectorStoreFileStatusFilter Completed { get; }
5768 public static VectorStoreFileStatusFilter Failed { get; }
5769 public static VectorStoreFileStatusFilter InProgress { get; }
5770 public readonly bool Equals(VectorStoreFileStatusFilter other);
5771 [EditorBrowsable(EditorBrowsableState.Never)]
5772 public override readonly bool Equals(object obj);
5773 [EditorBrowsable(EditorBrowsableState.Never)]
5774 public override readonly int GetHashCode();
5775 public static bool operator ==(VectorStoreFileStatusFilter left, VectorStoreFileStatusFilter right);
5776 public static implicit operator VectorStoreFileStatusFilter(string value);
5777 public static bool operator !=(VectorStoreFileStatusFilter left, VectorStoreFileStatusFilter right);
5778 public override readonly string ToString();
5779 }
5780 [Experimental("OPENAI001")]
5781 public class VectorStoreModificationOptions : IJsonModel<VectorStoreModificationOptions>, IPersistableModel<VectorStoreModificationOptions> {
5782 public VectorStoreExpirationPolicy ExpirationPolicy { get; set; }
5783 public IDictionary<string, string> Metadata { get; }
5784 public string Name { get; set; }
5785 protected virtual VectorStoreModificationOptions JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
5786 protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
5787 protected virtual VectorStoreModificationOptions PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
5788 protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
5789 }
5790 [Experimental("OPENAI001")]
5791 public enum VectorStoreStatus {
5792 Unknown = 0,
5793 InProgress = 1,
5794 Completed = 2,
5795 Expired = 3
5796 }
5797}