openai/openai-dotnet

Public

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

CodeCommitsIssuesPull requestsActionsInsightsSecurity
OpenAI_2.2.0-beta.2

Branches

Tags

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

Clone

HTTPS

Download ZIP

api/OpenAI.netstandard2.0.cs

3001lines · modecode

1namespace OpenAI {
2 public class OpenAIClient {
3 protected OpenAIClient();
4 public OpenAIClient(ApiKeyCredential credential, OpenAIClientOptions options);
5 public OpenAIClient(ApiKeyCredential credential);
6 protected internal OpenAIClient(ClientPipeline pipeline, OpenAIClientOptions options);
7 public OpenAIClient(string apiKey);
8 public ClientPipeline Pipeline { get; }
9 public virtual AssistantClient GetAssistantClient();
10 public virtual AudioClient GetAudioClient(string model);
11 public virtual BatchClient GetBatchClient();
12 public virtual ChatClient GetChatClient(string model);
13 public virtual EmbeddingClient GetEmbeddingClient(string model);
14 public virtual FineTuningClient GetFineTuningClient();
15 public virtual ImageClient GetImageClient(string model);
16 public virtual ModerationClient GetModerationClient(string model);
17 public virtual OpenAIFileClient GetOpenAIFileClient();
18 public virtual OpenAIModelClient GetOpenAIModelClient();
19 public virtual RealtimeConversation.RealtimeConversationClient GetRealtimeConversationClient(string model);
20 public virtual VectorStoreClient GetVectorStoreClient();
21 }
22 public class OpenAIClientOptions : ClientPipelineOptions {
23 public Uri Endpoint { get; set; }
24 public string OrganizationId { get; set; }
25 public string ProjectId { get; set; }
26 public string UserAgentApplicationId { get; set; }
27 }
28}
29namespace OpenAI.Assistants {
30 public class Assistant : IJsonModel<Assistant>, IPersistableModel<Assistant> {
31 public DateTimeOffset CreatedAt { get; }
32 public string Description { get; }
33 public string Id { get; }
34 public string Instructions { get; }
35 public IReadOnlyDictionary<string, string> Metadata { get; }
36 public string Model { get; }
37 public string Name { get; }
38 public float? NucleusSamplingFactor { get; }
39 public AssistantResponseFormat ResponseFormat { get; }
40 public float? Temperature { get; }
41 public ToolResources ToolResources { get; }
42 public IReadOnlyList<ToolDefinition> Tools { get; }
43 public static explicit operator Assistant(ClientResult result);
44 public static implicit operator BinaryContent(Assistant assistant);
45 }
46 public class AssistantClient {
47 protected AssistantClient();
48 public AssistantClient(ApiKeyCredential credential, OpenAIClientOptions options);
49 public AssistantClient(ApiKeyCredential credential);
50 protected internal AssistantClient(ClientPipeline pipeline, OpenAIClientOptions options);
51 public AssistantClient(string apiKey);
52 public ClientPipeline Pipeline { get; }
53 [EditorBrowsable(EditorBrowsableState.Never)]
54 public virtual ClientResult CancelRun(string threadId, string runId, RequestOptions options);
55 public virtual ClientResult<ThreadRun> CancelRun(string threadId, string runId, CancellationToken cancellationToken = default);
56 [EditorBrowsable(EditorBrowsableState.Never)]
57 public virtual Task<ClientResult> CancelRunAsync(string threadId, string runId, RequestOptions options);
58 public virtual Task<ClientResult<ThreadRun>> CancelRunAsync(string threadId, string runId, CancellationToken cancellationToken = default);
59 [EditorBrowsable(EditorBrowsableState.Never)]
60 public virtual ClientResult CreateAssistant(BinaryContent content, RequestOptions options = null);
61 public virtual ClientResult<Assistant> CreateAssistant(string model, AssistantCreationOptions options = null, CancellationToken cancellationToken = default);
62 [EditorBrowsable(EditorBrowsableState.Never)]
63 public virtual Task<ClientResult> CreateAssistantAsync(BinaryContent content, RequestOptions options = null);
64 public virtual Task<ClientResult<Assistant>> CreateAssistantAsync(string model, AssistantCreationOptions options = null, CancellationToken cancellationToken = default);
65 public virtual ClientResult<ThreadMessage> CreateMessage(string threadId, MessageRole role, IEnumerable<MessageContent> content, MessageCreationOptions options = null, CancellationToken cancellationToken = default);
66 [EditorBrowsable(EditorBrowsableState.Never)]
67 public virtual ClientResult CreateMessage(string threadId, BinaryContent content, RequestOptions options = null);
68 public virtual Task<ClientResult<ThreadMessage>> CreateMessageAsync(string threadId, MessageRole role, IEnumerable<MessageContent> content, MessageCreationOptions options = null, CancellationToken cancellationToken = default);
69 [EditorBrowsable(EditorBrowsableState.Never)]
70 public virtual Task<ClientResult> CreateMessageAsync(string threadId, BinaryContent content, RequestOptions options = null);
71 [EditorBrowsable(EditorBrowsableState.Never)]
72 public virtual ClientResult CreateRun(string threadId, BinaryContent content, RequestOptions options = null);
73 public virtual ClientResult<ThreadRun> CreateRun(string threadId, string assistantId, RunCreationOptions options = null, CancellationToken cancellationToken = default);
74 [EditorBrowsable(EditorBrowsableState.Never)]
75 public virtual Task<ClientResult> CreateRunAsync(string threadId, BinaryContent content, RequestOptions options = null);
76 public virtual Task<ClientResult<ThreadRun>> CreateRunAsync(string threadId, string assistantId, RunCreationOptions options = null, CancellationToken cancellationToken = default);
77 public virtual CollectionResult<StreamingUpdate> CreateRunStreaming(string threadId, string assistantId, RunCreationOptions options = null, CancellationToken cancellationToken = default);
78 public virtual AsyncCollectionResult<StreamingUpdate> CreateRunStreamingAsync(string threadId, string assistantId, RunCreationOptions options = null, CancellationToken cancellationToken = default);
79 public virtual ClientResult<AssistantThread> CreateThread(ThreadCreationOptions options = null, CancellationToken cancellationToken = default);
80 [EditorBrowsable(EditorBrowsableState.Never)]
81 public virtual ClientResult CreateThread(BinaryContent content, RequestOptions options = null);
82 [EditorBrowsable(EditorBrowsableState.Never)]
83 public virtual ClientResult CreateThreadAndRun(BinaryContent content, RequestOptions options = null);
84 public virtual ClientResult<ThreadRun> CreateThreadAndRun(string assistantId, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null, CancellationToken cancellationToken = default);
85 [EditorBrowsable(EditorBrowsableState.Never)]
86 public virtual Task<ClientResult> CreateThreadAndRunAsync(BinaryContent content, RequestOptions options = null);
87 public virtual Task<ClientResult<ThreadRun>> CreateThreadAndRunAsync(string assistantId, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null, CancellationToken cancellationToken = default);
88 public virtual CollectionResult<StreamingUpdate> CreateThreadAndRunStreaming(string assistantId, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null, CancellationToken cancellationToken = default);
89 public virtual AsyncCollectionResult<StreamingUpdate> CreateThreadAndRunStreamingAsync(string assistantId, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null, CancellationToken cancellationToken = default);
90 public virtual Task<ClientResult<AssistantThread>> CreateThreadAsync(ThreadCreationOptions options = null, CancellationToken cancellationToken = default);
91 [EditorBrowsable(EditorBrowsableState.Never)]
92 public virtual Task<ClientResult> CreateThreadAsync(BinaryContent content, RequestOptions options = null);
93 [EditorBrowsable(EditorBrowsableState.Never)]
94 public virtual ClientResult DeleteAssistant(string assistantId, RequestOptions options);
95 public virtual ClientResult<AssistantDeletionResult> DeleteAssistant(string assistantId, CancellationToken cancellationToken = default);
96 [EditorBrowsable(EditorBrowsableState.Never)]
97 public virtual Task<ClientResult> DeleteAssistantAsync(string assistantId, RequestOptions options);
98 public virtual Task<ClientResult<AssistantDeletionResult>> DeleteAssistantAsync(string assistantId, CancellationToken cancellationToken = default);
99 [EditorBrowsable(EditorBrowsableState.Never)]
100 public virtual ClientResult DeleteMessage(string threadId, string messageId, RequestOptions options);
101 public virtual ClientResult<MessageDeletionResult> DeleteMessage(string threadId, string messageId, CancellationToken cancellationToken = default);
102 [EditorBrowsable(EditorBrowsableState.Never)]
103 public virtual Task<ClientResult> DeleteMessageAsync(string threadId, string messageId, RequestOptions options);
104 public virtual Task<ClientResult<MessageDeletionResult>> DeleteMessageAsync(string threadId, string messageId, CancellationToken cancellationToken = default);
105 [EditorBrowsable(EditorBrowsableState.Never)]
106 public virtual ClientResult DeleteThread(string threadId, RequestOptions options);
107 public virtual ClientResult<ThreadDeletionResult> DeleteThread(string threadId, CancellationToken cancellationToken = default);
108 [EditorBrowsable(EditorBrowsableState.Never)]
109 public virtual Task<ClientResult> DeleteThreadAsync(string threadId, RequestOptions options);
110 public virtual Task<ClientResult<ThreadDeletionResult>> DeleteThreadAsync(string threadId, CancellationToken cancellationToken = default);
111 [EditorBrowsable(EditorBrowsableState.Never)]
112 public virtual ClientResult GetAssistant(string assistantId, RequestOptions options);
113 public virtual ClientResult<Assistant> GetAssistant(string assistantId, CancellationToken cancellationToken = default);
114 [EditorBrowsable(EditorBrowsableState.Never)]
115 public virtual Task<ClientResult> GetAssistantAsync(string assistantId, RequestOptions options);
116 public virtual Task<ClientResult<Assistant>> GetAssistantAsync(string assistantId, CancellationToken cancellationToken = default);
117 public virtual CollectionResult<Assistant> GetAssistants(AssistantCollectionOptions options = null, CancellationToken cancellationToken = default);
118 public virtual CollectionResult<Assistant> GetAssistants(ContinuationToken firstPageToken, CancellationToken cancellationToken = default);
119 [EditorBrowsable(EditorBrowsableState.Never)]
120 public virtual CollectionResult GetAssistants(int? limit, string order, string after, string before, RequestOptions options);
121 public virtual AsyncCollectionResult<Assistant> GetAssistantsAsync(AssistantCollectionOptions options = null, CancellationToken cancellationToken = default);
122 public virtual AsyncCollectionResult<Assistant> GetAssistantsAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = default);
123 [EditorBrowsable(EditorBrowsableState.Never)]
124 public virtual AsyncCollectionResult GetAssistantsAsync(int? limit, string order, string after, string before, RequestOptions options);
125 [EditorBrowsable(EditorBrowsableState.Never)]
126 public virtual ClientResult GetMessage(string threadId, string messageId, RequestOptions options);
127 public virtual ClientResult<ThreadMessage> GetMessage(string threadId, string messageId, CancellationToken cancellationToken = default);
128 [EditorBrowsable(EditorBrowsableState.Never)]
129 public virtual Task<ClientResult> GetMessageAsync(string threadId, string messageId, RequestOptions options);
130 public virtual Task<ClientResult<ThreadMessage>> GetMessageAsync(string threadId, string messageId, CancellationToken cancellationToken = default);
131 public virtual CollectionResult<ThreadMessage> GetMessages(ContinuationToken firstPageToken, CancellationToken cancellationToken = default);
132 public virtual CollectionResult<ThreadMessage> GetMessages(string threadId, MessageCollectionOptions options = null, CancellationToken cancellationToken = default);
133 [EditorBrowsable(EditorBrowsableState.Never)]
134 public virtual CollectionResult GetMessages(string threadId, int? limit, string order, string after, string before, RequestOptions options);
135 public virtual AsyncCollectionResult<ThreadMessage> GetMessagesAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = default);
136 public virtual AsyncCollectionResult<ThreadMessage> GetMessagesAsync(string threadId, MessageCollectionOptions options = null, CancellationToken cancellationToken = default);
137 [EditorBrowsable(EditorBrowsableState.Never)]
138 public virtual AsyncCollectionResult GetMessagesAsync(string threadId, int? limit, string order, string after, string before, RequestOptions options);
139 [EditorBrowsable(EditorBrowsableState.Never)]
140 public virtual ClientResult GetRun(string threadId, string runId, RequestOptions options);
141 public virtual ClientResult<ThreadRun> GetRun(string threadId, string runId, CancellationToken cancellationToken = default);
142 [EditorBrowsable(EditorBrowsableState.Never)]
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 [EditorBrowsable(EditorBrowsableState.Never)]
148 public virtual CollectionResult GetRuns(string threadId, int? limit, string order, string after, string before, RequestOptions options);
149 public virtual AsyncCollectionResult<ThreadRun> GetRunsAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = default);
150 public virtual AsyncCollectionResult<ThreadRun> GetRunsAsync(string threadId, RunCollectionOptions options = null, CancellationToken cancellationToken = default);
151 [EditorBrowsable(EditorBrowsableState.Never)]
152 public virtual AsyncCollectionResult GetRunsAsync(string threadId, int? limit, string order, string after, string before, RequestOptions options);
153 [EditorBrowsable(EditorBrowsableState.Never)]
154 public virtual ClientResult GetRunStep(string threadId, string runId, string stepId, RequestOptions options);
155 public virtual ClientResult<RunStep> GetRunStep(string threadId, string runId, string stepId, CancellationToken cancellationToken = default);
156 [EditorBrowsable(EditorBrowsableState.Never)]
157 public virtual Task<ClientResult> GetRunStepAsync(string threadId, string runId, string stepId, RequestOptions options);
158 public virtual Task<ClientResult<RunStep>> GetRunStepAsync(string threadId, string runId, string stepId, CancellationToken cancellationToken = default);
159 public virtual CollectionResult<RunStep> GetRunSteps(ContinuationToken firstPageToken, CancellationToken cancellationToken = default);
160 public virtual CollectionResult<RunStep> GetRunSteps(string threadId, string runId, RunStepCollectionOptions options = null, CancellationToken cancellationToken = default);
161 [EditorBrowsable(EditorBrowsableState.Never)]
162 public virtual CollectionResult GetRunSteps(string threadId, string runId, int? limit, string order, string after, string before, RequestOptions options);
163 public virtual AsyncCollectionResult<RunStep> GetRunStepsAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = default);
164 public virtual AsyncCollectionResult<RunStep> GetRunStepsAsync(string threadId, string runId, RunStepCollectionOptions options = null, CancellationToken cancellationToken = default);
165 [EditorBrowsable(EditorBrowsableState.Never)]
166 public virtual AsyncCollectionResult GetRunStepsAsync(string threadId, string runId, int? limit, string order, string after, string before, RequestOptions options);
167 [EditorBrowsable(EditorBrowsableState.Never)]
168 public virtual ClientResult GetThread(string threadId, RequestOptions options);
169 public virtual ClientResult<AssistantThread> GetThread(string threadId, CancellationToken cancellationToken = default);
170 [EditorBrowsable(EditorBrowsableState.Never)]
171 public virtual Task<ClientResult> GetThreadAsync(string threadId, RequestOptions options);
172 public virtual Task<ClientResult<AssistantThread>> GetThreadAsync(string threadId, CancellationToken cancellationToken = default);
173 public virtual ClientResult<Assistant> ModifyAssistant(string assistantId, AssistantModificationOptions options, CancellationToken cancellationToken = default);
174 [EditorBrowsable(EditorBrowsableState.Never)]
175 public virtual ClientResult ModifyAssistant(string assistantId, BinaryContent content, RequestOptions options = null);
176 public virtual Task<ClientResult<Assistant>> ModifyAssistantAsync(string assistantId, AssistantModificationOptions options, CancellationToken cancellationToken = default);
177 [EditorBrowsable(EditorBrowsableState.Never)]
178 public virtual Task<ClientResult> ModifyAssistantAsync(string assistantId, BinaryContent content, RequestOptions options = null);
179 public virtual ClientResult<ThreadMessage> ModifyMessage(string threadId, string messageId, MessageModificationOptions options, CancellationToken cancellationToken = default);
180 [EditorBrowsable(EditorBrowsableState.Never)]
181 public virtual ClientResult ModifyMessage(string threadId, string messageId, BinaryContent content, RequestOptions options = null);
182 public virtual Task<ClientResult<ThreadMessage>> ModifyMessageAsync(string threadId, string messageId, MessageModificationOptions options, CancellationToken cancellationToken = default);
183 [EditorBrowsable(EditorBrowsableState.Never)]
184 public virtual Task<ClientResult> ModifyMessageAsync(string threadId, string messageId, BinaryContent content, RequestOptions options = null);
185 [EditorBrowsable(EditorBrowsableState.Never)]
186 public virtual ClientResult ModifyRun(string threadId, string runId, BinaryContent content, RequestOptions options = null);
187 [EditorBrowsable(EditorBrowsableState.Never)]
188 public virtual Task<ClientResult> ModifyRunAsync(string threadId, string runId, BinaryContent content, RequestOptions options = null);
189 public virtual ClientResult<AssistantThread> ModifyThread(string threadId, ThreadModificationOptions options, CancellationToken cancellationToken = default);
190 [EditorBrowsable(EditorBrowsableState.Never)]
191 public virtual ClientResult ModifyThread(string threadId, BinaryContent content, RequestOptions options = null);
192 public virtual Task<ClientResult<AssistantThread>> ModifyThreadAsync(string threadId, ThreadModificationOptions options, CancellationToken cancellationToken = default);
193 [EditorBrowsable(EditorBrowsableState.Never)]
194 public virtual Task<ClientResult> ModifyThreadAsync(string threadId, BinaryContent content, RequestOptions options = null);
195 [EditorBrowsable(EditorBrowsableState.Never)]
196 public virtual ClientResult SubmitToolOutputsToRun(string threadId, string runId, BinaryContent content, RequestOptions options = null);
197 public virtual ClientResult<ThreadRun> SubmitToolOutputsToRun(string threadId, string runId, IEnumerable<ToolOutput> toolOutputs, CancellationToken cancellationToken = default);
198 [EditorBrowsable(EditorBrowsableState.Never)]
199 public virtual Task<ClientResult> SubmitToolOutputsToRunAsync(string threadId, string runId, BinaryContent content, RequestOptions options = null);
200 public virtual Task<ClientResult<ThreadRun>> SubmitToolOutputsToRunAsync(string threadId, string runId, IEnumerable<ToolOutput> toolOutputs, CancellationToken cancellationToken = default);
201 public virtual CollectionResult<StreamingUpdate> SubmitToolOutputsToRunStreaming(string threadId, string runId, IEnumerable<ToolOutput> toolOutputs, CancellationToken cancellationToken = default);
202 public virtual AsyncCollectionResult<StreamingUpdate> SubmitToolOutputsToRunStreamingAsync(string threadId, string runId, IEnumerable<ToolOutput> toolOutputs, CancellationToken cancellationToken = default);
203 }
204 public class AssistantCollectionOptions {
205 public string AfterId { get; set; }
206 public string BeforeId { get; set; }
207 public AssistantCollectionOrder? Order { get; set; }
208 public int? PageSizeLimit { get; set; }
209 }
210 public readonly partial struct AssistantCollectionOrder : IEquatable<AssistantCollectionOrder> {
211 public AssistantCollectionOrder(string value);
212 public static AssistantCollectionOrder Ascending { get; }
213 public static AssistantCollectionOrder Descending { get; }
214 public readonly bool Equals(AssistantCollectionOrder other);
215 [EditorBrowsable(EditorBrowsableState.Never)]
216 public override readonly bool Equals(object obj);
217 [EditorBrowsable(EditorBrowsableState.Never)]
218 public override readonly int GetHashCode();
219 public static bool operator ==(AssistantCollectionOrder left, AssistantCollectionOrder right);
220 public static implicit operator AssistantCollectionOrder(string value);
221 public static bool operator !=(AssistantCollectionOrder left, AssistantCollectionOrder right);
222 public override readonly string ToString();
223 }
224 public class AssistantCreationOptions : IJsonModel<AssistantCreationOptions>, IPersistableModel<AssistantCreationOptions> {
225 public string Description { get; set; }
226 public string Instructions { get; set; }
227 public IDictionary<string, string> Metadata { get; }
228 public string Name { get; set; }
229 public float? NucleusSamplingFactor { get; set; }
230 public AssistantResponseFormat ResponseFormat { get; set; }
231 public float? Temperature { get; set; }
232 public ToolResources ToolResources { get; set; }
233 public IList<ToolDefinition> Tools { get; }
234 public static explicit operator AssistantCreationOptions(ClientResult result);
235 public static implicit operator BinaryContent(AssistantCreationOptions assistantCreationOptions);
236 }
237 public class AssistantDeletionResult : IJsonModel<AssistantDeletionResult>, IPersistableModel<AssistantDeletionResult> {
238 public string AssistantId { get; }
239 public bool Deleted { get; }
240 public static explicit operator AssistantDeletionResult(ClientResult result);
241 public static implicit operator BinaryContent(AssistantDeletionResult assistantDeletionResult);
242 }
243 public class AssistantModificationOptions : IJsonModel<AssistantModificationOptions>, IPersistableModel<AssistantModificationOptions> {
244 public IList<ToolDefinition> DefaultTools { get; }
245 public string Description { get; set; }
246 public string Instructions { get; set; }
247 public IDictionary<string, string> Metadata { get; }
248 public string Model { get; set; }
249 public string Name { get; set; }
250 public float? NucleusSamplingFactor { get; set; }
251 public AssistantResponseFormat ResponseFormat { get; set; }
252 public float? Temperature { get; set; }
253 public ToolResources ToolResources { get; set; }
254 public static explicit operator AssistantModificationOptions(ClientResult result);
255 public static implicit operator BinaryContent(AssistantModificationOptions assistantModificationOptions);
256 }
257 public abstract class AssistantResponseFormat : IEquatable<AssistantResponseFormat>, IEquatable<string>, IJsonModel<AssistantResponseFormat>, IPersistableModel<AssistantResponseFormat> {
258 public static AssistantResponseFormat Auto { get; }
259 public static AssistantResponseFormat JsonObject { get; }
260 public static AssistantResponseFormat Text { get; }
261 public static AssistantResponseFormat CreateAutoFormat();
262 public static AssistantResponseFormat CreateJsonObjectFormat();
263 public static AssistantResponseFormat CreateJsonSchemaFormat(string name, BinaryData jsonSchema, string description = null, bool? strictSchemaEnabled = null);
264 public static AssistantResponseFormat CreateTextFormat();
265 [EditorBrowsable(EditorBrowsableState.Never)]
266 public override bool Equals(object obj);
267 [EditorBrowsable(EditorBrowsableState.Never)]
268 public override int GetHashCode();
269 [EditorBrowsable(EditorBrowsableState.Never)]
270 public static bool operator ==(AssistantResponseFormat first, AssistantResponseFormat second);
271 public static explicit operator AssistantResponseFormat(ClientResult result);
272 public static implicit operator BinaryContent(AssistantResponseFormat assistantResponseFormat);
273 [EditorBrowsable(EditorBrowsableState.Never)]
274 public static implicit operator AssistantResponseFormat(string plainTextFormat);
275 [EditorBrowsable(EditorBrowsableState.Never)]
276 public static bool operator !=(AssistantResponseFormat first, AssistantResponseFormat second);
277 [EditorBrowsable(EditorBrowsableState.Never)]
278 bool IEquatable<AssistantResponseFormat>.Equals(AssistantResponseFormat other);
279 [EditorBrowsable(EditorBrowsableState.Never)]
280 bool IEquatable<string>.Equals(string other);
281 public override string ToString();
282 }
283 public class AssistantThread : IJsonModel<AssistantThread>, IPersistableModel<AssistantThread> {
284 public DateTimeOffset CreatedAt { get; }
285 public string Id { get; }
286 public IReadOnlyDictionary<string, string> Metadata { get; }
287 public ToolResources ToolResources { get; }
288 public static explicit operator AssistantThread(ClientResult result);
289 public static implicit operator BinaryContent(AssistantThread assistantThread);
290 }
291 public class CodeInterpreterToolDefinition : ToolDefinition, IJsonModel<CodeInterpreterToolDefinition>, IPersistableModel<CodeInterpreterToolDefinition> {
292 public new static explicit operator CodeInterpreterToolDefinition(ClientResult result);
293 public static implicit operator BinaryContent(CodeInterpreterToolDefinition codeInterpreterToolDefinition);
294 }
295 public class CodeInterpreterToolResources : IJsonModel<CodeInterpreterToolResources>, IPersistableModel<CodeInterpreterToolResources> {
296 public IList<string> FileIds { get; }
297 public static explicit operator CodeInterpreterToolResources(ClientResult result);
298 public static implicit operator BinaryContent(CodeInterpreterToolResources codeInterpreterToolResources);
299 }
300 public readonly partial struct FileSearchRanker : IEquatable<FileSearchRanker> {
301 public FileSearchRanker(string value);
302 public static FileSearchRanker Auto { get; }
303 public static FileSearchRanker Default20240821 { get; }
304 public readonly bool Equals(FileSearchRanker other);
305 [EditorBrowsable(EditorBrowsableState.Never)]
306 public override readonly bool Equals(object obj);
307 [EditorBrowsable(EditorBrowsableState.Never)]
308 public override readonly int GetHashCode();
309 public static bool operator ==(FileSearchRanker left, FileSearchRanker right);
310 public static implicit operator FileSearchRanker(string value);
311 public static bool operator !=(FileSearchRanker left, FileSearchRanker right);
312 public override readonly string ToString();
313 }
314 public class FileSearchRankingOptions : IJsonModel<FileSearchRankingOptions>, IPersistableModel<FileSearchRankingOptions> {
315 public FileSearchRankingOptions();
316 public FileSearchRankingOptions(float scoreThreshold);
317 public FileSearchRanker? Ranker { get; set; }
318 public required float ScoreThreshold { get; set; }
319 public static explicit operator FileSearchRankingOptions(ClientResult result);
320 public static implicit operator BinaryContent(FileSearchRankingOptions fileSearchRankingOptions);
321 }
322 public class FileSearchToolDefinition : ToolDefinition, IJsonModel<FileSearchToolDefinition>, IPersistableModel<FileSearchToolDefinition> {
323 public int? MaxResults { get; set; }
324 public FileSearchRankingOptions RankingOptions { get; set; }
325 public new static explicit operator FileSearchToolDefinition(ClientResult result);
326 public static implicit operator BinaryContent(FileSearchToolDefinition fileSearchToolDefinition);
327 }
328 public class FileSearchToolResources : IJsonModel<FileSearchToolResources>, IPersistableModel<FileSearchToolResources> {
329 public IList<VectorStoreCreationHelper> NewVectorStores { get; }
330 public IList<string> VectorStoreIds { get; }
331 public static explicit operator FileSearchToolResources(ClientResult result);
332 public static implicit operator BinaryContent(FileSearchToolResources fileSearchToolResources);
333 }
334 public class FunctionToolDefinition : ToolDefinition, IJsonModel<FunctionToolDefinition>, IPersistableModel<FunctionToolDefinition> {
335 public FunctionToolDefinition();
336 public FunctionToolDefinition(string name);
337 public string Description { get; set; }
338 public required string FunctionName { get; set; }
339 public BinaryData Parameters { get; set; }
340 public bool? StrictParameterSchemaEnabled { get; set; }
341 public new static explicit operator FunctionToolDefinition(ClientResult result);
342 public static implicit operator BinaryContent(FunctionToolDefinition functionToolDefinition);
343 }
344 public class MessageCollectionOptions {
345 public string AfterId { get; set; }
346 public string BeforeId { get; set; }
347 public MessageCollectionOrder? Order { get; set; }
348 public int? PageSizeLimit { get; set; }
349 }
350 public readonly partial struct MessageCollectionOrder : IEquatable<MessageCollectionOrder> {
351 public MessageCollectionOrder(string value);
352 public static MessageCollectionOrder Ascending { get; }
353 public static MessageCollectionOrder Descending { get; }
354 public readonly bool Equals(MessageCollectionOrder other);
355 [EditorBrowsable(EditorBrowsableState.Never)]
356 public override readonly bool Equals(object obj);
357 [EditorBrowsable(EditorBrowsableState.Never)]
358 public override readonly int GetHashCode();
359 public static bool operator ==(MessageCollectionOrder left, MessageCollectionOrder right);
360 public static implicit operator MessageCollectionOrder(string value);
361 public static bool operator !=(MessageCollectionOrder left, MessageCollectionOrder right);
362 public override readonly string ToString();
363 }
364 public abstract class MessageContent : IJsonModel<MessageContent>, IPersistableModel<MessageContent> {
365 public MessageImageDetail? ImageDetail { get; }
366 public string ImageFileId { get; }
367 public Uri ImageUri { get; }
368 public string Refusal { get; }
369 public string Text { get; }
370 public IReadOnlyList<TextAnnotation> TextAnnotations { get; }
371 public static MessageContent FromImageFileId(string imageFileId, MessageImageDetail? detail = null);
372 public static MessageContent FromImageUri(Uri imageUri, MessageImageDetail? detail = null);
373 public static MessageContent FromText(string text);
374 public static explicit operator MessageContent(ClientResult result);
375 public static implicit operator BinaryContent(MessageContent messageContent);
376 public static implicit operator MessageContent(string value);
377 }
378 public class MessageContentUpdate : StreamingUpdate {
379 public MessageImageDetail? ImageDetail { get; }
380 public string ImageFileId { get; }
381 public string MessageId { get; }
382 public int MessageIndex { get; }
383 public string RefusalUpdate { get; }
384 public MessageRole? Role { get; }
385 public string Text { get; }
386 public TextAnnotationUpdate TextAnnotation { get; }
387 }
388 public class MessageCreationAttachment : IJsonModel<MessageCreationAttachment>, IPersistableModel<MessageCreationAttachment> {
389 public MessageCreationAttachment(string fileId, IEnumerable<ToolDefinition> tools);
390 public string FileId { get; }
391 public IReadOnlyList<ToolDefinition> Tools { get; }
392 public static explicit operator MessageCreationAttachment(ClientResult result);
393 public static implicit operator BinaryContent(MessageCreationAttachment messageCreationAttachment);
394 }
395 public class MessageCreationOptions : IJsonModel<MessageCreationOptions>, IPersistableModel<MessageCreationOptions> {
396 public IList<MessageCreationAttachment> Attachments { get; set; }
397 public IDictionary<string, string> Metadata { get; }
398 public static explicit operator MessageCreationOptions(ClientResult result);
399 public static implicit operator BinaryContent(MessageCreationOptions messageCreationOptions);
400 }
401 public class MessageDeletionResult : IJsonModel<MessageDeletionResult>, IPersistableModel<MessageDeletionResult> {
402 public bool Deleted { get; }
403 public string MessageId { get; }
404 public static explicit operator MessageDeletionResult(ClientResult result);
405 public static implicit operator BinaryContent(MessageDeletionResult messageDeletionResult);
406 }
407 public class MessageFailureDetails : IJsonModel<MessageFailureDetails>, IPersistableModel<MessageFailureDetails> {
408 public MessageFailureReason Reason { get; }
409 public static explicit operator MessageFailureDetails(ClientResult result);
410 public static implicit operator BinaryContent(MessageFailureDetails messageFailureDetails);
411 }
412 public readonly partial struct MessageFailureReason : IEquatable<MessageFailureReason> {
413 public MessageFailureReason(string value);
414 public static MessageFailureReason ContentFilter { get; }
415 public static MessageFailureReason MaxTokens { get; }
416 public static MessageFailureReason RunCancelled { get; }
417 public static MessageFailureReason RunExpired { get; }
418 public static MessageFailureReason RunFailed { get; }
419 public readonly bool Equals(MessageFailureReason other);
420 [EditorBrowsable(EditorBrowsableState.Never)]
421 public override readonly bool Equals(object obj);
422 [EditorBrowsable(EditorBrowsableState.Never)]
423 public override readonly int GetHashCode();
424 public static bool operator ==(MessageFailureReason left, MessageFailureReason right);
425 public static implicit operator MessageFailureReason(string value);
426 public static bool operator !=(MessageFailureReason left, MessageFailureReason right);
427 public override readonly string ToString();
428 }
429 public enum MessageImageDetail {
430 Auto = 0,
431 Low = 1,
432 High = 2
433 }
434 public class MessageModificationOptions : IJsonModel<MessageModificationOptions>, IPersistableModel<MessageModificationOptions> {
435 public IDictionary<string, string> Metadata { get; }
436 public static explicit operator MessageModificationOptions(ClientResult result);
437 public static implicit operator BinaryContent(MessageModificationOptions messageModificationOptions);
438 }
439 public enum MessageRole {
440 User = 0,
441 Assistant = 1
442 }
443 public readonly partial struct MessageStatus : IEquatable<MessageStatus> {
444 public MessageStatus(string value);
445 public static MessageStatus Completed { get; }
446 public static MessageStatus Incomplete { get; }
447 public static MessageStatus InProgress { get; }
448 public readonly bool Equals(MessageStatus other);
449 [EditorBrowsable(EditorBrowsableState.Never)]
450 public override readonly bool Equals(object obj);
451 [EditorBrowsable(EditorBrowsableState.Never)]
452 public override readonly int GetHashCode();
453 public static bool operator ==(MessageStatus left, MessageStatus right);
454 public static implicit operator MessageStatus(string value);
455 public static bool operator !=(MessageStatus left, MessageStatus right);
456 public override readonly string ToString();
457 }
458 public class MessageStatusUpdate : StreamingUpdate<ThreadMessage> {
459 }
460 public abstract class RequiredAction {
461 public string FunctionArguments { get; }
462 public string FunctionName { get; }
463 public string ToolCallId { get; }
464 }
465 public class RequiredActionUpdate : RunUpdate {
466 public string FunctionArguments { get; }
467 public string FunctionName { get; }
468 public string ToolCallId { get; }
469 public ThreadRun GetThreadRun();
470 }
471 public class RunCollectionOptions {
472 public string AfterId { get; set; }
473 public string BeforeId { get; set; }
474 public RunCollectionOrder? Order { get; set; }
475 public int? PageSizeLimit { get; set; }
476 }
477 public readonly partial struct RunCollectionOrder : IEquatable<RunCollectionOrder> {
478 public RunCollectionOrder(string value);
479 public static RunCollectionOrder Ascending { get; }
480 public static RunCollectionOrder Descending { get; }
481 public readonly bool Equals(RunCollectionOrder other);
482 [EditorBrowsable(EditorBrowsableState.Never)]
483 public override readonly bool Equals(object obj);
484 [EditorBrowsable(EditorBrowsableState.Never)]
485 public override readonly int GetHashCode();
486 public static bool operator ==(RunCollectionOrder left, RunCollectionOrder right);
487 public static implicit operator RunCollectionOrder(string value);
488 public static bool operator !=(RunCollectionOrder left, RunCollectionOrder right);
489 public override readonly string ToString();
490 }
491 public class RunCreationOptions : IJsonModel<RunCreationOptions>, IPersistableModel<RunCreationOptions> {
492 public string AdditionalInstructions { get; set; }
493 public IList<ThreadInitializationMessage> AdditionalMessages { get; }
494 public bool? AllowParallelToolCalls { get; set; }
495 public string InstructionsOverride { get; set; }
496 public int? MaxInputTokenCount { get; set; }
497 public int? MaxOutputTokenCount { get; set; }
498 public IDictionary<string, string> Metadata { get; }
499 public string ModelOverride { get; set; }
500 public float? NucleusSamplingFactor { get; set; }
501 public AssistantResponseFormat ResponseFormat { get; set; }
502 public float? Temperature { get; set; }
503 public ToolConstraint ToolConstraint { get; set; }
504 public IList<ToolDefinition> ToolsOverride { get; }
505 public RunTruncationStrategy TruncationStrategy { get; set; }
506 public static explicit operator RunCreationOptions(ClientResult result);
507 public static implicit operator BinaryContent(RunCreationOptions runCreationOptions);
508 }
509 public class RunError : IJsonModel<RunError>, IPersistableModel<RunError> {
510 public RunErrorCode Code { get; }
511 public string Message { get; }
512 public static explicit operator RunError(ClientResult result);
513 public static implicit operator BinaryContent(RunError runError);
514 }
515 public readonly partial struct RunErrorCode : IEquatable<RunErrorCode> {
516 public RunErrorCode(string value);
517 public static RunErrorCode InvalidPrompt { get; }
518 public static RunErrorCode RateLimitExceeded { get; }
519 public static RunErrorCode ServerError { get; }
520 public readonly bool Equals(RunErrorCode other);
521 [EditorBrowsable(EditorBrowsableState.Never)]
522 public override readonly bool Equals(object obj);
523 [EditorBrowsable(EditorBrowsableState.Never)]
524 public override readonly int GetHashCode();
525 public static bool operator ==(RunErrorCode left, RunErrorCode right);
526 public static implicit operator RunErrorCode(string value);
527 public static bool operator !=(RunErrorCode left, RunErrorCode right);
528 public override readonly string ToString();
529 }
530 public class RunIncompleteDetails : IJsonModel<RunIncompleteDetails>, IPersistableModel<RunIncompleteDetails> {
531 public RunIncompleteReason? Reason { get; }
532 public static explicit operator RunIncompleteDetails(ClientResult result);
533 public static implicit operator BinaryContent(RunIncompleteDetails runIncompleteDetails);
534 }
535 public readonly partial struct RunIncompleteReason : IEquatable<RunIncompleteReason> {
536 public RunIncompleteReason(string value);
537 public static RunIncompleteReason MaxInputTokenCount { get; }
538 public static RunIncompleteReason MaxOutputTokenCount { get; }
539 public readonly bool Equals(RunIncompleteReason other);
540 [EditorBrowsable(EditorBrowsableState.Never)]
541 public override readonly bool Equals(object obj);
542 [EditorBrowsable(EditorBrowsableState.Never)]
543 public override readonly int GetHashCode();
544 public static bool operator ==(RunIncompleteReason left, RunIncompleteReason right);
545 public static implicit operator RunIncompleteReason(string value);
546 public static bool operator !=(RunIncompleteReason left, RunIncompleteReason right);
547 public override readonly string ToString();
548 }
549 public class RunModificationOptions : IJsonModel<RunModificationOptions>, IPersistableModel<RunModificationOptions> {
550 public IDictionary<string, string> Metadata { get; }
551 public static explicit operator RunModificationOptions(ClientResult result);
552 public static implicit operator BinaryContent(RunModificationOptions runModificationOptions);
553 }
554 public readonly partial struct RunStatus : IEquatable<RunStatus> {
555 public RunStatus(string value);
556 public static RunStatus Cancelled { get; }
557 public static RunStatus Cancelling { get; }
558 public static RunStatus Completed { get; }
559 public static RunStatus Expired { get; }
560 public static RunStatus Failed { get; }
561 public static RunStatus Incomplete { get; }
562 public static RunStatus InProgress { get; }
563 public bool IsTerminal { get; }
564 public static RunStatus Queued { get; }
565 public static RunStatus RequiresAction { get; }
566 public readonly bool Equals(RunStatus other);
567 [EditorBrowsable(EditorBrowsableState.Never)]
568 public override readonly bool Equals(object obj);
569 [EditorBrowsable(EditorBrowsableState.Never)]
570 public override readonly int GetHashCode();
571 public static bool operator ==(RunStatus left, RunStatus right);
572 public static implicit operator RunStatus(string value);
573 public static bool operator !=(RunStatus left, RunStatus right);
574 public override readonly string ToString();
575 }
576 public class RunStep : IJsonModel<RunStep>, IPersistableModel<RunStep> {
577 public string AssistantId { get; }
578 public DateTimeOffset? CancelledAt { get; }
579 public DateTimeOffset? CompletedAt { get; }
580 public DateTimeOffset CreatedAt { get; }
581 public RunStepDetails Details { get; }
582 public DateTimeOffset? ExpiredAt { get; }
583 public DateTimeOffset? FailedAt { get; }
584 public string Id { get; }
585 public RunStepKind Kind { get; }
586 public RunStepError LastError { get; }
587 public IReadOnlyDictionary<string, string> Metadata { get; }
588 public string RunId { get; }
589 public RunStepStatus Status { get; }
590 public string ThreadId { get; }
591 public RunStepTokenUsage Usage { get; }
592 public static explicit operator RunStep(ClientResult result);
593 public static implicit operator BinaryContent(RunStep runStep);
594 }
595 public abstract class RunStepCodeInterpreterOutput : IJsonModel<RunStepCodeInterpreterOutput>, IPersistableModel<RunStepCodeInterpreterOutput> {
596 public string ImageFileId { get; }
597 public string Logs { get; }
598 public static explicit operator RunStepCodeInterpreterOutput(ClientResult result);
599 public static implicit operator BinaryContent(RunStepCodeInterpreterOutput runStepCodeInterpreterOutput);
600 }
601 public class RunStepCollectionOptions {
602 public string AfterId { get; set; }
603 public string BeforeId { get; set; }
604 public RunStepCollectionOrder? Order { get; set; }
605 public int? PageSizeLimit { get; set; }
606 }
607 public readonly partial struct RunStepCollectionOrder : IEquatable<RunStepCollectionOrder> {
608 public RunStepCollectionOrder(string value);
609 public static RunStepCollectionOrder Ascending { get; }
610 public static RunStepCollectionOrder Descending { get; }
611 public readonly bool Equals(RunStepCollectionOrder other);
612 [EditorBrowsable(EditorBrowsableState.Never)]
613 public override readonly bool Equals(object obj);
614 [EditorBrowsable(EditorBrowsableState.Never)]
615 public override readonly int GetHashCode();
616 public static bool operator ==(RunStepCollectionOrder left, RunStepCollectionOrder right);
617 public static implicit operator RunStepCollectionOrder(string value);
618 public static bool operator !=(RunStepCollectionOrder left, RunStepCollectionOrder right);
619 public override readonly string ToString();
620 }
621 public abstract class RunStepDetails : IJsonModel<RunStepDetails>, IPersistableModel<RunStepDetails> {
622 public string CreatedMessageId { get; }
623 public IReadOnlyList<RunStepToolCall> ToolCalls { get; }
624 public static explicit operator RunStepDetails(ClientResult result);
625 public static implicit operator BinaryContent(RunStepDetails runStepDetails);
626 }
627 public class RunStepDetailsUpdate : StreamingUpdate {
628 public string CodeInterpreterInput { get; }
629 public IReadOnlyList<RunStepUpdateCodeInterpreterOutput> CodeInterpreterOutputs { get; }
630 public string CreatedMessageId { get; }
631 public FileSearchRankingOptions FileSearchRankingOptions { get; }
632 public IReadOnlyList<RunStepFileSearchResult> FileSearchResults { get; }
633 public string FunctionArguments { get; }
634 public string FunctionName { get; }
635 public string FunctionOutput { get; }
636 public string StepId { get; }
637 public string ToolCallId { get; }
638 public int? ToolCallIndex { get; }
639 }
640 public class RunStepError : IJsonModel<RunStepError>, IPersistableModel<RunStepError> {
641 public RunStepErrorCode Code { get; }
642 public string Message { get; }
643 public static explicit operator RunStepError(ClientResult result);
644 public static implicit operator BinaryContent(RunStepError runStepError);
645 }
646 public readonly partial struct RunStepErrorCode : IEquatable<RunStepErrorCode> {
647 public RunStepErrorCode(string value);
648 public static RunStepErrorCode RateLimitExceeded { get; }
649 public static RunStepErrorCode ServerError { get; }
650 public readonly bool Equals(RunStepErrorCode other);
651 [EditorBrowsable(EditorBrowsableState.Never)]
652 public override readonly bool Equals(object obj);
653 [EditorBrowsable(EditorBrowsableState.Never)]
654 public override readonly int GetHashCode();
655 public static bool operator ==(RunStepErrorCode left, RunStepErrorCode right);
656 public static implicit operator RunStepErrorCode(string value);
657 public static bool operator !=(RunStepErrorCode left, RunStepErrorCode right);
658 public override readonly string ToString();
659 }
660 public class RunStepFileSearchResult : IJsonModel<RunStepFileSearchResult>, IPersistableModel<RunStepFileSearchResult> {
661 public IReadOnlyList<RunStepFileSearchResultContent> Content { get; }
662 public string FileId { get; }
663 public string FileName { get; }
664 public float Score { get; }
665 public static explicit operator RunStepFileSearchResult(ClientResult result);
666 public static implicit operator BinaryContent(RunStepFileSearchResult runStepFileSearchResult);
667 }
668 public class RunStepFileSearchResultContent : IJsonModel<RunStepFileSearchResultContent>, IPersistableModel<RunStepFileSearchResultContent> {
669 public RunStepFileSearchResultContentKind Kind { get; }
670 public string Text { get; }
671 public static explicit operator RunStepFileSearchResultContent(ClientResult result);
672 public static implicit operator BinaryContent(RunStepFileSearchResultContent runStepFileSearchResultContent);
673 }
674 public enum RunStepFileSearchResultContentKind {
675 Text = 0
676 }
677 public enum RunStepKind {
678 CreatedMessage = 0,
679 ToolCall = 1
680 }
681 public readonly partial struct RunStepStatus : IEquatable<RunStepStatus> {
682 public RunStepStatus(string value);
683 public static RunStepStatus Cancelled { get; }
684 public static RunStepStatus Completed { get; }
685 public static RunStepStatus Expired { get; }
686 public static RunStepStatus Failed { get; }
687 public static RunStepStatus InProgress { get; }
688 public readonly bool Equals(RunStepStatus other);
689 [EditorBrowsable(EditorBrowsableState.Never)]
690 public override readonly bool Equals(object obj);
691 [EditorBrowsable(EditorBrowsableState.Never)]
692 public override readonly int GetHashCode();
693 public static bool operator ==(RunStepStatus left, RunStepStatus right);
694 public static implicit operator RunStepStatus(string value);
695 public static bool operator !=(RunStepStatus left, RunStepStatus right);
696 public override readonly string ToString();
697 }
698 public class RunStepTokenUsage : IJsonModel<RunStepTokenUsage>, IPersistableModel<RunStepTokenUsage> {
699 public int InputTokenCount { get; }
700 public int OutputTokenCount { get; }
701 public int TotalTokenCount { get; }
702 public static explicit operator RunStepTokenUsage(ClientResult result);
703 public static implicit operator BinaryContent(RunStepTokenUsage runStepTokenUsage);
704 }
705 public abstract class RunStepToolCall : IJsonModel<RunStepToolCall>, IPersistableModel<RunStepToolCall> {
706 public string CodeInterpreterInput { get; }
707 public IReadOnlyList<RunStepCodeInterpreterOutput> CodeInterpreterOutputs { get; }
708 public FileSearchRankingOptions FileSearchRankingOptions { get; }
709 public IReadOnlyList<RunStepFileSearchResult> FileSearchResults { get; }
710 public string FunctionArguments { get; }
711 public string FunctionName { get; }
712 public string FunctionOutput { get; }
713 public string Id { get; }
714 public RunStepToolCallKind Kind { get; }
715 public static explicit operator RunStepToolCall(ClientResult result);
716 public static implicit operator BinaryContent(RunStepToolCall runStepToolCall);
717 }
718 public enum RunStepToolCallKind {
719 CodeInterpreter = 0,
720 FileSearch = 1,
721 Function = 2
722 }
723 public class RunStepUpdate : StreamingUpdate<RunStep> {
724 }
725 public abstract class RunStepUpdateCodeInterpreterOutput : IJsonModel<RunStepUpdateCodeInterpreterOutput>, IPersistableModel<RunStepUpdateCodeInterpreterOutput> {
726 public string ImageFileId { get; }
727 public string Logs { get; }
728 public int OutputIndex { get; }
729 public static explicit operator RunStepUpdateCodeInterpreterOutput(ClientResult result);
730 public static implicit operator BinaryContent(RunStepUpdateCodeInterpreterOutput runStepUpdateCodeInterpreterOutput);
731 }
732 public class RunTokenUsage : IJsonModel<RunTokenUsage>, IPersistableModel<RunTokenUsage> {
733 public int InputTokenCount { get; }
734 public int OutputTokenCount { get; }
735 public int TotalTokenCount { get; }
736 public static explicit operator RunTokenUsage(ClientResult result);
737 public static implicit operator BinaryContent(RunTokenUsage runTokenUsage);
738 }
739 public class RunTruncationStrategy : IJsonModel<RunTruncationStrategy>, IPersistableModel<RunTruncationStrategy> {
740 public static RunTruncationStrategy Auto { get; }
741 public int? LastMessages { get; }
742 public static RunTruncationStrategy CreateLastMessagesStrategy(int lastMessageCount);
743 public static explicit operator RunTruncationStrategy(ClientResult result);
744 public static implicit operator BinaryContent(RunTruncationStrategy runTruncationStrategy);
745 }
746 public class RunUpdate : StreamingUpdate<ThreadRun> {
747 }
748 public abstract class StreamingUpdate {
749 public StreamingUpdateReason UpdateKind { get; }
750 }
751 public enum StreamingUpdateReason {
752 Unknown = 0,
753 ThreadCreated = 1,
754 RunCreated = 2,
755 RunQueued = 3,
756 RunInProgress = 4,
757 RunRequiresAction = 5,
758 RunCompleted = 6,
759 RunIncomplete = 7,
760 RunFailed = 8,
761 RunCancelling = 9,
762 RunCancelled = 10,
763 RunExpired = 11,
764 RunStepCreated = 12,
765 RunStepInProgress = 13,
766 RunStepUpdated = 14,
767 RunStepCompleted = 15,
768 RunStepFailed = 16,
769 RunStepCancelled = 17,
770 RunStepExpired = 18,
771 MessageCreated = 19,
772 MessageInProgress = 20,
773 MessageUpdated = 21,
774 MessageCompleted = 22,
775 MessageFailed = 23,
776 Error = 24,
777 Done = 25
778 }
779 public class StreamingUpdate<T> : StreamingUpdate where T : class {
780 public T Value { get; }
781 public static implicit operator T(StreamingUpdate<T> update);
782 }
783 public class TextAnnotation {
784 public int EndIndex { get; }
785 public string InputFileId { get; }
786 public string OutputFileId { get; }
787 public int StartIndex { get; }
788 public string TextToReplace { get; }
789 }
790 public class TextAnnotationUpdate {
791 public int ContentIndex { get; }
792 public int? EndIndex { get; }
793 public string InputFileId { get; }
794 public string OutputFileId { get; }
795 public int? StartIndex { get; }
796 public string TextToReplace { get; }
797 }
798 public class ThreadCreationOptions : IJsonModel<ThreadCreationOptions>, IPersistableModel<ThreadCreationOptions> {
799 public IList<ThreadInitializationMessage> InitialMessages { get; }
800 public IDictionary<string, string> Metadata { get; }
801 public ToolResources ToolResources { get; set; }
802 public static explicit operator ThreadCreationOptions(ClientResult result);
803 public static implicit operator BinaryContent(ThreadCreationOptions threadCreationOptions);
804 }
805 public class ThreadDeletionResult : IJsonModel<ThreadDeletionResult>, IPersistableModel<ThreadDeletionResult> {
806 public bool Deleted { get; }
807 public string ThreadId { get; }
808 public static explicit operator ThreadDeletionResult(ClientResult result);
809 public static implicit operator BinaryContent(ThreadDeletionResult threadDeletionResult);
810 }
811 public class ThreadInitializationMessage : MessageCreationOptions {
812 public ThreadInitializationMessage(MessageRole role, IEnumerable<MessageContent> content);
813 public static implicit operator ThreadInitializationMessage(string initializationMessage);
814 }
815 public class ThreadMessage : IJsonModel<ThreadMessage>, IPersistableModel<ThreadMessage> {
816 public string AssistantId { get; }
817 public IReadOnlyList<MessageCreationAttachment> Attachments { get; }
818 public DateTimeOffset? CompletedAt { get; }
819 public IReadOnlyList<MessageContent> Content { get; }
820 public DateTimeOffset CreatedAt { get; }
821 public string Id { get; }
822 public DateTimeOffset? IncompleteAt { get; }
823 public MessageFailureDetails IncompleteDetails { get; }
824 public IReadOnlyDictionary<string, string> Metadata { get; }
825 public MessageRole Role { get; }
826 public string RunId { get; }
827 public MessageStatus Status { get; }
828 public string ThreadId { get; }
829 public static explicit operator ThreadMessage(ClientResult result);
830 public static implicit operator BinaryContent(ThreadMessage threadMessage);
831 }
832 public class ThreadModificationOptions : IJsonModel<ThreadModificationOptions>, IPersistableModel<ThreadModificationOptions> {
833 public IDictionary<string, string> Metadata { get; }
834 public ToolResources ToolResources { get; set; }
835 public static explicit operator ThreadModificationOptions(ClientResult result);
836 public static implicit operator BinaryContent(ThreadModificationOptions threadModificationOptions);
837 }
838 public class ThreadRun : IJsonModel<ThreadRun>, IPersistableModel<ThreadRun> {
839 public bool? AllowParallelToolCalls { get; }
840 public string AssistantId { get; }
841 public DateTimeOffset? CancelledAt { get; }
842 public DateTimeOffset? CompletedAt { get; }
843 public DateTimeOffset CreatedAt { get; }
844 public DateTimeOffset? ExpiresAt { get; }
845 public DateTimeOffset? FailedAt { get; }
846 public string Id { get; }
847 public RunIncompleteDetails IncompleteDetails { get; }
848 public string Instructions { get; }
849 public RunError LastError { get; }
850 public int? MaxInputTokenCount { get; }
851 public int? MaxOutputTokenCount { get; }
852 public IReadOnlyDictionary<string, string> Metadata { get; }
853 public string Model { get; }
854 public float? NucleusSamplingFactor { get; }
855 public IReadOnlyList<RequiredAction> RequiredActions { get; }
856 public AssistantResponseFormat ResponseFormat { get; }
857 public DateTimeOffset? StartedAt { get; }
858 public RunStatus Status { get; }
859 public float? Temperature { get; }
860 public string ThreadId { get; }
861 public ToolConstraint ToolConstraint { get; }
862 public IReadOnlyList<ToolDefinition> Tools { get; }
863 public RunTruncationStrategy TruncationStrategy { get; }
864 public RunTokenUsage Usage { get; }
865 public static explicit operator ThreadRun(ClientResult result);
866 public static implicit operator BinaryContent(ThreadRun threadRun);
867 }
868 public class ThreadUpdate : StreamingUpdate<AssistantThread> {
869 public DateTimeOffset CreatedAt { get; }
870 public string Id { get; }
871 public IReadOnlyDictionary<string, string> Metadata { get; }
872 public ToolResources ToolResources { get; }
873 }
874 public class ToolConstraint : IJsonModel<ToolConstraint>, IPersistableModel<ToolConstraint> {
875 public ToolConstraint(ToolDefinition toolDefinition);
876 public static ToolConstraint Auto { get; }
877 public static ToolConstraint None { get; }
878 public static ToolConstraint Required { get; }
879 public static explicit operator ToolConstraint(ClientResult result);
880 public static implicit operator BinaryContent(ToolConstraint toolConstraint);
881 }
882 public abstract class ToolDefinition : IJsonModel<ToolDefinition>, IPersistableModel<ToolDefinition> {
883 protected ToolDefinition();
884 protected ToolDefinition(string type);
885 public static CodeInterpreterToolDefinition CreateCodeInterpreter();
886 public static FileSearchToolDefinition CreateFileSearch(int? maxResults = null);
887 public static FunctionToolDefinition CreateFunction(string name, string description = null, BinaryData parameters = null, bool? strictParameterSchemaEnabled = null);
888 public static explicit operator ToolDefinition(ClientResult result);
889 public static implicit operator BinaryContent(ToolDefinition toolDefinition);
890 }
891 public class ToolOutput : IJsonModel<ToolOutput>, IPersistableModel<ToolOutput> {
892 public ToolOutput();
893 public ToolOutput(string toolCallId, string output);
894 public string Output { get; set; }
895 public string ToolCallId { get; set; }
896 public static explicit operator ToolOutput(ClientResult result);
897 public static implicit operator BinaryContent(ToolOutput toolOutput);
898 }
899 public class ToolResources : IJsonModel<ToolResources>, IPersistableModel<ToolResources> {
900 public CodeInterpreterToolResources CodeInterpreter { get; set; }
901 public FileSearchToolResources FileSearch { get; set; }
902 public static explicit operator ToolResources(ClientResult result);
903 public static implicit operator BinaryContent(ToolResources toolResources);
904 }
905 public class VectorStoreCreationHelper : IJsonModel<VectorStoreCreationHelper>, IPersistableModel<VectorStoreCreationHelper> {
906 public VectorStoreCreationHelper();
907 public VectorStoreCreationHelper(IEnumerable<OpenAIFile> files);
908 public VectorStoreCreationHelper(IEnumerable<string> fileIds);
909 public FileChunkingStrategy ChunkingStrategy { get; set; }
910 public IList<string> FileIds { get; }
911 public IDictionary<string, string> Metadata { get; }
912 public static explicit operator VectorStoreCreationHelper(ClientResult result);
913 public static implicit operator BinaryContent(VectorStoreCreationHelper vectorStoreCreationHelper);
914 }
915}
916namespace OpenAI.Audio {
917 public class AudioClient {
918 protected AudioClient();
919 protected internal AudioClient(ClientPipeline pipeline, string model, OpenAIClientOptions options);
920 public AudioClient(string model, ApiKeyCredential credential, OpenAIClientOptions options);
921 public AudioClient(string model, ApiKeyCredential credential);
922 public AudioClient(string model, string apiKey);
923 public ClientPipeline Pipeline { get; }
924 [EditorBrowsable(EditorBrowsableState.Never)]
925 public virtual ClientResult GenerateSpeech(BinaryContent content, RequestOptions options = null);
926 public virtual ClientResult<BinaryData> GenerateSpeech(string text, GeneratedSpeechVoice voice, SpeechGenerationOptions options = null, CancellationToken cancellationToken = default);
927 [EditorBrowsable(EditorBrowsableState.Never)]
928 public virtual Task<ClientResult> GenerateSpeechAsync(BinaryContent content, RequestOptions options = null);
929 public virtual Task<ClientResult<BinaryData>> GenerateSpeechAsync(string text, GeneratedSpeechVoice voice, SpeechGenerationOptions options = null, CancellationToken cancellationToken = default);
930 [EditorBrowsable(EditorBrowsableState.Never)]
931 public virtual ClientResult TranscribeAudio(BinaryContent content, string contentType, RequestOptions options = null);
932 public virtual ClientResult<AudioTranscription> TranscribeAudio(Stream audio, string audioFilename, AudioTranscriptionOptions options = null, CancellationToken cancellationToken = default);
933 public virtual ClientResult<AudioTranscription> TranscribeAudio(string audioFilePath, AudioTranscriptionOptions options = null);
934 [EditorBrowsable(EditorBrowsableState.Never)]
935 public virtual Task<ClientResult> TranscribeAudioAsync(BinaryContent content, string contentType, RequestOptions options = null);
936 public virtual Task<ClientResult<AudioTranscription>> TranscribeAudioAsync(Stream audio, string audioFilename, AudioTranscriptionOptions options = null, CancellationToken cancellationToken = default);
937 public virtual Task<ClientResult<AudioTranscription>> TranscribeAudioAsync(string audioFilePath, AudioTranscriptionOptions options = null);
938 public virtual ClientResult TranslateAudio(BinaryContent content, string contentType, RequestOptions options = null);
939 public virtual ClientResult<AudioTranslation> TranslateAudio(Stream audio, string audioFilename, AudioTranslationOptions options = null, CancellationToken cancellationToken = default);
940 public virtual ClientResult<AudioTranslation> TranslateAudio(string audioFilePath, AudioTranslationOptions options = null);
941 public virtual Task<ClientResult> TranslateAudioAsync(BinaryContent content, string contentType, RequestOptions options = null);
942 public virtual Task<ClientResult<AudioTranslation>> TranslateAudioAsync(Stream audio, string audioFilename, AudioTranslationOptions options = null, CancellationToken cancellationToken = default);
943 public virtual Task<ClientResult<AudioTranslation>> TranslateAudioAsync(string audioFilePath, AudioTranslationOptions options = null);
944 }
945 [Flags]
946 public enum AudioTimestampGranularities {
947 Default = 0,
948 Word = 1,
949 Segment = 2
950 }
951 public class AudioTranscription : IJsonModel<AudioTranscription>, IPersistableModel<AudioTranscription> {
952 public TimeSpan? Duration { get; }
953 public string Language { get; }
954 public IReadOnlyList<TranscribedSegment> Segments { get; }
955 public string Text { get; }
956 public IReadOnlyList<TranscribedWord> Words { get; }
957 public static explicit operator AudioTranscription(ClientResult result);
958 public static implicit operator BinaryContent(AudioTranscription audioTranscription);
959 }
960 public readonly partial struct AudioTranscriptionFormat : IEquatable<AudioTranscriptionFormat> {
961 public AudioTranscriptionFormat(string value);
962 public static AudioTranscriptionFormat Simple { get; }
963 public static AudioTranscriptionFormat Srt { get; }
964 [EditorBrowsable(EditorBrowsableState.Never)]
965 public static AudioTranscriptionFormat Text { get; }
966 public static AudioTranscriptionFormat Verbose { get; }
967 public static AudioTranscriptionFormat Vtt { get; }
968 public readonly bool Equals(AudioTranscriptionFormat other);
969 [EditorBrowsable(EditorBrowsableState.Never)]
970 public override readonly bool Equals(object obj);
971 [EditorBrowsable(EditorBrowsableState.Never)]
972 public override readonly int GetHashCode();
973 public static bool operator ==(AudioTranscriptionFormat left, AudioTranscriptionFormat right);
974 public static implicit operator AudioTranscriptionFormat(string value);
975 public static bool operator !=(AudioTranscriptionFormat left, AudioTranscriptionFormat right);
976 public override readonly string ToString();
977 }
978 public class AudioTranscriptionOptions : IJsonModel<AudioTranscriptionOptions>, IPersistableModel<AudioTranscriptionOptions> {
979 public string Language { get; set; }
980 public string Prompt { get; set; }
981 public AudioTranscriptionFormat? ResponseFormat { get; set; }
982 public float? Temperature { get; set; }
983 public AudioTimestampGranularities TimestampGranularities { get; set; }
984 public static explicit operator AudioTranscriptionOptions(ClientResult result);
985 public static implicit operator BinaryContent(AudioTranscriptionOptions audioTranscriptionOptions);
986 }
987 public class AudioTranslation : IJsonModel<AudioTranslation>, IPersistableModel<AudioTranslation> {
988 public TimeSpan? Duration { get; }
989 public string Language { get; }
990 public IReadOnlyList<TranscribedSegment> Segments { get; }
991 public string Text { get; }
992 public static explicit operator AudioTranslation(ClientResult result);
993 public static implicit operator BinaryContent(AudioTranslation audioTranslation);
994 }
995 public readonly partial struct AudioTranslationFormat : IEquatable<AudioTranslationFormat> {
996 public AudioTranslationFormat(string value);
997 public static AudioTranslationFormat Simple { get; }
998 public static AudioTranslationFormat Srt { get; }
999 [EditorBrowsable(EditorBrowsableState.Never)]
1000 public static AudioTranslationFormat Text { get; }
1001 public static AudioTranslationFormat Verbose { get; }
1002 public static AudioTranslationFormat Vtt { get; }
1003 public readonly bool Equals(AudioTranslationFormat other);
1004 [EditorBrowsable(EditorBrowsableState.Never)]
1005 public override readonly bool Equals(object obj);
1006 [EditorBrowsable(EditorBrowsableState.Never)]
1007 public override readonly int GetHashCode();
1008 public static bool operator ==(AudioTranslationFormat left, AudioTranslationFormat right);
1009 public static implicit operator AudioTranslationFormat(string value);
1010 public static bool operator !=(AudioTranslationFormat left, AudioTranslationFormat right);
1011 public override readonly string ToString();
1012 }
1013 public class AudioTranslationOptions : IJsonModel<AudioTranslationOptions>, IPersistableModel<AudioTranslationOptions> {
1014 public string Prompt { get; set; }
1015 public AudioTranslationFormat? ResponseFormat { get; set; }
1016 public float? Temperature { get; set; }
1017 public static explicit operator AudioTranslationOptions(ClientResult result);
1018 public static implicit operator BinaryContent(AudioTranslationOptions audioTranslationOptions);
1019 }
1020 public readonly partial struct GeneratedSpeechFormat : IEquatable<GeneratedSpeechFormat> {
1021 public GeneratedSpeechFormat(string value);
1022 public static GeneratedSpeechFormat Aac { get; }
1023 public static GeneratedSpeechFormat Flac { get; }
1024 public static GeneratedSpeechFormat Mp3 { get; }
1025 public static GeneratedSpeechFormat Opus { get; }
1026 public static GeneratedSpeechFormat Pcm { get; }
1027 public static GeneratedSpeechFormat Wav { get; }
1028 public readonly bool Equals(GeneratedSpeechFormat other);
1029 [EditorBrowsable(EditorBrowsableState.Never)]
1030 public override readonly bool Equals(object obj);
1031 [EditorBrowsable(EditorBrowsableState.Never)]
1032 public override readonly int GetHashCode();
1033 public static bool operator ==(GeneratedSpeechFormat left, GeneratedSpeechFormat right);
1034 public static implicit operator GeneratedSpeechFormat(string value);
1035 public static bool operator !=(GeneratedSpeechFormat left, GeneratedSpeechFormat right);
1036 public override readonly string ToString();
1037 }
1038 public readonly partial struct GeneratedSpeechVoice : IEquatable<GeneratedSpeechVoice> {
1039 public GeneratedSpeechVoice(string value);
1040 public static GeneratedSpeechVoice Alloy { get; }
1041 public static GeneratedSpeechVoice Ash { get; }
1042 public static GeneratedSpeechVoice Coral { get; }
1043 public static GeneratedSpeechVoice Echo { get; }
1044 public static GeneratedSpeechVoice Fable { get; }
1045 public static GeneratedSpeechVoice Nova { get; }
1046 public static GeneratedSpeechVoice Onyx { get; }
1047 public static GeneratedSpeechVoice Sage { get; }
1048 public static GeneratedSpeechVoice Shimmer { get; }
1049 public readonly bool Equals(GeneratedSpeechVoice other);
1050 [EditorBrowsable(EditorBrowsableState.Never)]
1051 public override readonly bool Equals(object obj);
1052 [EditorBrowsable(EditorBrowsableState.Never)]
1053 public override readonly int GetHashCode();
1054 public static bool operator ==(GeneratedSpeechVoice left, GeneratedSpeechVoice right);
1055 public static implicit operator GeneratedSpeechVoice(string value);
1056 public static bool operator !=(GeneratedSpeechVoice left, GeneratedSpeechVoice right);
1057 public override readonly string ToString();
1058 }
1059 public static class OpenAIAudioModelFactory {
1060 public static AudioTranscription AudioTranscription(string language = null, TimeSpan? duration = null, string text = null, IEnumerable<TranscribedWord> words = null, IEnumerable<TranscribedSegment> segments = null);
1061 public static AudioTranslation AudioTranslation(string language = null, TimeSpan? duration = null, string text = null, IEnumerable<TranscribedSegment> segments = null);
1062 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);
1063 public static TranscribedWord TranscribedWord(string word = null, TimeSpan startTime = default, TimeSpan endTime = default);
1064 }
1065 public class SpeechGenerationOptions : IJsonModel<SpeechGenerationOptions>, IPersistableModel<SpeechGenerationOptions> {
1066 public GeneratedSpeechFormat? ResponseFormat { get; set; }
1067 public float? SpeedRatio { get; set; }
1068 public static explicit operator SpeechGenerationOptions(ClientResult result);
1069 public static implicit operator BinaryContent(SpeechGenerationOptions speechGenerationOptions);
1070 }
1071 public readonly partial struct TranscribedSegment : IJsonModel<TranscribedSegment>, IPersistableModel<TranscribedSegment>, IJsonModel<object>, IPersistableModel<object> {
1072 public float AverageLogProbability { get; }
1073 public float CompressionRatio { get; }
1074 public TimeSpan EndTime { get; }
1075 public int Id { get; }
1076 public float NoSpeechProbability { get; }
1077 public int SeekOffset { get; }
1078 public TimeSpan StartTime { get; }
1079 public float Temperature { get; }
1080 public string Text { get; }
1081 public ReadOnlyMemory<int> TokenIds { get; }
1082 public static explicit operator TranscribedSegment(ClientResult result);
1083 public static implicit operator BinaryContent(TranscribedSegment transcribedSegment);
1084 }
1085 public readonly partial struct TranscribedWord : IJsonModel<TranscribedWord>, IPersistableModel<TranscribedWord>, IJsonModel<object>, IPersistableModel<object> {
1086 public TimeSpan EndTime { get; }
1087 public TimeSpan StartTime { get; }
1088 public string Word { get; }
1089 public static explicit operator TranscribedWord(ClientResult result);
1090 public static implicit operator BinaryContent(TranscribedWord transcribedWord);
1091 }
1092}
1093namespace OpenAI.Batch {
1094 public class BatchClient {
1095 protected BatchClient();
1096 public BatchClient(ApiKeyCredential credential, OpenAIClientOptions options);
1097 public BatchClient(ApiKeyCredential credential);
1098 protected internal BatchClient(ClientPipeline pipeline, OpenAIClientOptions options);
1099 public BatchClient(string apiKey);
1100 public ClientPipeline Pipeline { get; }
1101 public virtual CreateBatchOperation CreateBatch(BinaryContent content, bool waitUntilCompleted, RequestOptions options = null);
1102 public virtual Task<CreateBatchOperation> CreateBatchAsync(BinaryContent content, bool waitUntilCompleted, RequestOptions options = null);
1103 public virtual CollectionResult GetBatches(string after, int? limit, RequestOptions options);
1104 public virtual AsyncCollectionResult GetBatchesAsync(string after, int? limit, RequestOptions options);
1105 }
1106 public class CreateBatchOperation : OperationResult {
1107 public string BatchId { get; }
1108 public override ContinuationToken? RehydrationToken { get; protected set; }
1109 public virtual ClientResult Cancel(RequestOptions? options);
1110 public virtual Task<ClientResult> CancelAsync(RequestOptions? options);
1111 public virtual ClientResult GetBatch(RequestOptions? options);
1112 public virtual Task<ClientResult> GetBatchAsync(RequestOptions? options);
1113 public static CreateBatchOperation Rehydrate(BatchClient client, ContinuationToken rehydrationToken, CancellationToken cancellationToken = default);
1114 public static Task<CreateBatchOperation> RehydrateAsync(BatchClient client, ContinuationToken rehydrationToken, CancellationToken cancellationToken = default);
1115 public override ClientResult UpdateStatus(RequestOptions? options = null);
1116 public override ValueTask<ClientResult> UpdateStatusAsync(RequestOptions? options = null);
1117 }
1118}
1119namespace OpenAI.Chat {
1120 public class AssistantChatMessage : ChatMessage, IJsonModel<AssistantChatMessage>, IPersistableModel<AssistantChatMessage> {
1121 public AssistantChatMessage(ChatCompletion chatCompletion);
1122 [Obsolete("This constructor is obsolete. Please use the constructor that takes an IEnumerable<ChatToolCall> parameter instead.")]
1123 public AssistantChatMessage(ChatFunctionCall functionCall);
1124 public AssistantChatMessage(params ChatMessageContentPart[] contentParts);
1125 public AssistantChatMessage(ChatOutputAudioReference outputAudioReference);
1126 public AssistantChatMessage(IEnumerable<ChatMessageContentPart> contentParts);
1127 public AssistantChatMessage(IEnumerable<ChatToolCall> toolCalls);
1128 public AssistantChatMessage(string content);
1129 [Obsolete("This property is obsolete. Please use ToolCalls instead.")]
1130 public ChatFunctionCall FunctionCall { get; set; }
1131 public ChatOutputAudioReference OutputAudioReference { get; set; }
1132 public string ParticipantName { get; set; }
1133 public string Refusal { get; set; }
1134 public IList<ChatToolCall> ToolCalls { get; }
1135 public new static explicit operator AssistantChatMessage(ClientResult result);
1136 public static implicit operator BinaryContent(AssistantChatMessage assistantChatMessage);
1137 }
1138 public class ChatAudioOptions : IJsonModel<ChatAudioOptions>, IPersistableModel<ChatAudioOptions> {
1139 public ChatAudioOptions(ChatOutputAudioVoice outputAudioVoice, ChatOutputAudioFormat outputAudioFormat);
1140 public ChatOutputAudioFormat OutputAudioFormat { get; }
1141 public ChatOutputAudioVoice OutputAudioVoice { get; }
1142 public static explicit operator ChatAudioOptions(ClientResult result);
1143 public static implicit operator BinaryContent(ChatAudioOptions chatAudioOptions);
1144 }
1145 public class ChatClient {
1146 protected ChatClient();
1147 protected internal ChatClient(ClientPipeline pipeline, string model, OpenAIClientOptions options);
1148 public ChatClient(string model, ApiKeyCredential credential, OpenAIClientOptions options);
1149 public ChatClient(string model, ApiKeyCredential credential);
1150 public ChatClient(string model, string apiKey);
1151 public ClientPipeline Pipeline { get; }
1152 public virtual ClientResult<ChatCompletion> CompleteChat(params ChatMessage[] messages);
1153 [EditorBrowsable(EditorBrowsableState.Never)]
1154 public virtual ClientResult CompleteChat(BinaryContent content, RequestOptions options = null);
1155 public virtual ClientResult<ChatCompletion> CompleteChat(IEnumerable<ChatMessage> messages, ChatCompletionOptions options = null, CancellationToken cancellationToken = default);
1156 public virtual Task<ClientResult<ChatCompletion>> CompleteChatAsync(params ChatMessage[] messages);
1157 [EditorBrowsable(EditorBrowsableState.Never)]
1158 public virtual Task<ClientResult> CompleteChatAsync(BinaryContent content, RequestOptions options = null);
1159 public virtual Task<ClientResult<ChatCompletion>> CompleteChatAsync(IEnumerable<ChatMessage> messages, ChatCompletionOptions options = null, CancellationToken cancellationToken = default);
1160 public virtual CollectionResult<StreamingChatCompletionUpdate> CompleteChatStreaming(params ChatMessage[] messages);
1161 public virtual CollectionResult<StreamingChatCompletionUpdate> CompleteChatStreaming(IEnumerable<ChatMessage> messages, ChatCompletionOptions options = null, CancellationToken cancellationToken = default);
1162 public virtual AsyncCollectionResult<StreamingChatCompletionUpdate> CompleteChatStreamingAsync(params ChatMessage[] messages);
1163 public virtual AsyncCollectionResult<StreamingChatCompletionUpdate> CompleteChatStreamingAsync(IEnumerable<ChatMessage> messages, ChatCompletionOptions options = null, CancellationToken cancellationToken = default);
1164 }
1165 public class ChatCompletion : IJsonModel<ChatCompletion>, IPersistableModel<ChatCompletion> {
1166 public ChatMessageContent Content { get; }
1167 public IReadOnlyList<ChatTokenLogProbabilityDetails> ContentTokenLogProbabilities { get; }
1168 public DateTimeOffset CreatedAt { get; }
1169 public ChatFinishReason FinishReason { get; }
1170 [Obsolete("This property is obsolete. Please use ToolCalls instead.")]
1171 public ChatFunctionCall FunctionCall { get; }
1172 public string Id { get; }
1173 public string Model { get; }
1174 public ChatOutputAudio OutputAudio { get; }
1175 public string Refusal { get; }
1176 public IReadOnlyList<ChatTokenLogProbabilityDetails> RefusalTokenLogProbabilities { get; }
1177 public ChatMessageRole Role { get; }
1178 public string SystemFingerprint { get; }
1179 public IReadOnlyList<ChatToolCall> ToolCalls { get; }
1180 public ChatTokenUsage Usage { get; }
1181 public static explicit operator ChatCompletion(ClientResult result);
1182 public static implicit operator BinaryContent(ChatCompletion chatCompletion);
1183 }
1184 public class ChatCompletionOptions : IJsonModel<ChatCompletionOptions>, IPersistableModel<ChatCompletionOptions> {
1185 public bool? AllowParallelToolCalls { get; set; }
1186 public ChatAudioOptions AudioOptions { get; set; }
1187 public string EndUserId { get; set; }
1188 public float? FrequencyPenalty { get; set; }
1189 [Obsolete("This property is obsolete. Please use ToolChoice instead.")]
1190 public ChatFunctionChoice FunctionChoice { get; set; }
1191 [Obsolete("This property is obsolete. Please use Tools instead.")]
1192 public IList<ChatFunction> Functions { get; }
1193 public bool? IncludeLogProbabilities { get; set; }
1194 public IDictionary<int, int> LogitBiases { get; }
1195 public int? MaxOutputTokenCount { get; set; }
1196 public IDictionary<string, string> Metadata { get; }
1197 public ChatOutputPrediction OutputPrediction { get; set; }
1198 public float? PresencePenalty { get; set; }
1199 public ChatReasoningEffortLevel? ReasoningEffortLevel { get; set; }
1200 public ChatResponseFormat ResponseFormat { get; set; }
1201 public ChatResponseModalities ResponseModalities { get; set; }
1202 public long? Seed { get; set; }
1203 public IList<string> StopSequences { get; }
1204 public bool? StoredOutputEnabled { get; set; }
1205 public float? Temperature { get; set; }
1206 public ChatToolChoice ToolChoice { get; set; }
1207 public IList<ChatTool> Tools { get; }
1208 public int? TopLogProbabilityCount { get; set; }
1209 public float? TopP { get; set; }
1210 public static explicit operator ChatCompletionOptions(ClientResult result);
1211 public static implicit operator BinaryContent(ChatCompletionOptions chatCompletionOptions);
1212 }
1213 public enum ChatFinishReason {
1214 Stop = 0,
1215 Length = 1,
1216 ContentFilter = 2,
1217 ToolCalls = 3,
1218 FunctionCall = 4
1219 }
1220 [Obsolete("This class is obsolete. Please use ChatTool instead.")]
1221 public class ChatFunction : IJsonModel<ChatFunction>, IPersistableModel<ChatFunction> {
1222 public ChatFunction(string functionName);
1223 public string FunctionDescription { get; set; }
1224 public string FunctionName { get; }
1225 public BinaryData FunctionParameters { get; set; }
1226 public static explicit operator ChatFunction(ClientResult result);
1227 public static implicit operator BinaryContent(ChatFunction chatFunction);
1228 }
1229 [Obsolete("This class is obsolete. Please use ChatToolCall instead.")]
1230 public class ChatFunctionCall : IJsonModel<ChatFunctionCall>, IPersistableModel<ChatFunctionCall> {
1231 public ChatFunctionCall(string functionName, BinaryData functionArguments);
1232 public BinaryData FunctionArguments { get; }
1233 public string FunctionName { get; }
1234 public static explicit operator ChatFunctionCall(ClientResult result);
1235 public static implicit operator BinaryContent(ChatFunctionCall chatFunctionCall);
1236 }
1237 [Obsolete("This class is obsolete. Please use ChatToolChoice instead.")]
1238 public class ChatFunctionChoice : IJsonModel<ChatFunctionChoice>, IPersistableModel<ChatFunctionChoice> {
1239 public static ChatFunctionChoice CreateAutoChoice();
1240 public static ChatFunctionChoice CreateNamedChoice(string functionName);
1241 public static ChatFunctionChoice CreateNoneChoice();
1242 public static explicit operator ChatFunctionChoice(ClientResult result);
1243 public static implicit operator BinaryContent(ChatFunctionChoice chatFunctionChoice);
1244 }
1245 public readonly partial struct ChatImageDetailLevel : IEquatable<ChatImageDetailLevel> {
1246 public ChatImageDetailLevel(string value);
1247 public static ChatImageDetailLevel Auto { get; }
1248 public static ChatImageDetailLevel High { get; }
1249 public static ChatImageDetailLevel Low { get; }
1250 public readonly bool Equals(ChatImageDetailLevel other);
1251 [EditorBrowsable(EditorBrowsableState.Never)]
1252 public override readonly bool Equals(object obj);
1253 [EditorBrowsable(EditorBrowsableState.Never)]
1254 public override readonly int GetHashCode();
1255 public static bool operator ==(ChatImageDetailLevel left, ChatImageDetailLevel right);
1256 public static implicit operator ChatImageDetailLevel(string value);
1257 public static bool operator !=(ChatImageDetailLevel left, ChatImageDetailLevel right);
1258 public override readonly string ToString();
1259 }
1260 public readonly partial struct ChatInputAudioFormat : IEquatable<ChatInputAudioFormat> {
1261 public ChatInputAudioFormat(string value);
1262 public static ChatInputAudioFormat Mp3 { get; }
1263 public static ChatInputAudioFormat Wav { get; }
1264 public readonly bool Equals(ChatInputAudioFormat other);
1265 [EditorBrowsable(EditorBrowsableState.Never)]
1266 public override readonly bool Equals(object obj);
1267 [EditorBrowsable(EditorBrowsableState.Never)]
1268 public override readonly int GetHashCode();
1269 public static bool operator ==(ChatInputAudioFormat left, ChatInputAudioFormat right);
1270 public static implicit operator ChatInputAudioFormat(string value);
1271 public static bool operator !=(ChatInputAudioFormat left, ChatInputAudioFormat right);
1272 public override readonly string ToString();
1273 }
1274 public class ChatInputTokenUsageDetails : IJsonModel<ChatInputTokenUsageDetails>, IPersistableModel<ChatInputTokenUsageDetails> {
1275 public int AudioTokenCount { get; }
1276 public int CachedTokenCount { get; }
1277 public static explicit operator ChatInputTokenUsageDetails(ClientResult result);
1278 public static implicit operator BinaryContent(ChatInputTokenUsageDetails chatInputTokenUsageDetails);
1279 }
1280 public class ChatMessage : IJsonModel<ChatMessage>, IPersistableModel<ChatMessage> {
1281 public ChatMessageContent Content { get; }
1282 public static AssistantChatMessage CreateAssistantMessage(ChatCompletion chatCompletion);
1283 public static AssistantChatMessage CreateAssistantMessage(ChatFunctionCall functionCall);
1284 public static AssistantChatMessage CreateAssistantMessage(params ChatMessageContentPart[] contentParts);
1285 public static AssistantChatMessage CreateAssistantMessage(ChatOutputAudioReference outputAudioReference);
1286 public static AssistantChatMessage CreateAssistantMessage(IEnumerable<ChatMessageContentPart> contentParts);
1287 public static AssistantChatMessage CreateAssistantMessage(IEnumerable<ChatToolCall> toolCalls);
1288 public static AssistantChatMessage CreateAssistantMessage(string content);
1289 public static DeveloperChatMessage CreateDeveloperMessage(params ChatMessageContentPart[] contentParts);
1290 public static DeveloperChatMessage CreateDeveloperMessage(IEnumerable<ChatMessageContentPart> contentParts);
1291 public static DeveloperChatMessage CreateDeveloperMessage(string content);
1292 [Obsolete("This method is obsolete. Please use CreateToolMessage instead.")]
1293 public static FunctionChatMessage CreateFunctionMessage(string functionName, string content);
1294 public static SystemChatMessage CreateSystemMessage(params ChatMessageContentPart[] contentParts);
1295 public static SystemChatMessage CreateSystemMessage(IEnumerable<ChatMessageContentPart> contentParts);
1296 public static SystemChatMessage CreateSystemMessage(string content);
1297 public static ToolChatMessage CreateToolMessage(string toolCallId, params ChatMessageContentPart[] contentParts);
1298 public static ToolChatMessage CreateToolMessage(string toolCallId, IEnumerable<ChatMessageContentPart> contentParts);
1299 public static ToolChatMessage CreateToolMessage(string toolCallId, string content);
1300 public static UserChatMessage CreateUserMessage(params ChatMessageContentPart[] contentParts);
1301 public static UserChatMessage CreateUserMessage(IEnumerable<ChatMessageContentPart> contentParts);
1302 public static UserChatMessage CreateUserMessage(string content);
1303 public static explicit operator ChatMessage(ClientResult result);
1304 public static implicit operator BinaryContent(ChatMessage chatMessage);
1305 public static implicit operator ChatMessage(string content);
1306 }
1307 public class ChatMessageContent : ObjectModel.Collection<ChatMessageContentPart> {
1308 public ChatMessageContent();
1309 public ChatMessageContent(params ChatMessageContentPart[] contentParts);
1310 public ChatMessageContent(IEnumerable<ChatMessageContentPart> contentParts);
1311 public ChatMessageContent(string content);
1312 }
1313 public class ChatMessageContentPart : IJsonModel<ChatMessageContentPart>, IPersistableModel<ChatMessageContentPart> {
1314 public BinaryData ImageBytes { get; }
1315 public string ImageBytesMediaType { get; }
1316 public ChatImageDetailLevel? ImageDetailLevel { get; }
1317 public Uri ImageUri { get; }
1318 public BinaryData InputAudioBytes { get; }
1319 public ChatInputAudioFormat? InputAudioFormat { get; }
1320 public ChatMessageContentPartKind Kind { get; }
1321 public string Refusal { get; }
1322 public string Text { get; }
1323 public static ChatMessageContentPart CreateImagePart(BinaryData imageBytes, string imageBytesMediaType, ChatImageDetailLevel? imageDetailLevel = null);
1324 public static ChatMessageContentPart CreateImagePart(Uri imageUri, ChatImageDetailLevel? imageDetailLevel = null);
1325 public static ChatMessageContentPart CreateInputAudioPart(BinaryData inputAudioBytes, ChatInputAudioFormat inputAudioFormat);
1326 public static ChatMessageContentPart CreateRefusalPart(string refusal);
1327 public static ChatMessageContentPart CreateTextPart(string text);
1328 public static explicit operator ChatMessageContentPart(ClientResult result);
1329 public static implicit operator BinaryContent(ChatMessageContentPart chatMessageContentPart);
1330 public static implicit operator ChatMessageContentPart(string text);
1331 }
1332 public enum ChatMessageContentPartKind {
1333 Text = 0,
1334 Refusal = 1,
1335 Image = 2,
1336 InputAudio = 3
1337 }
1338 public enum ChatMessageRole {
1339 System = 0,
1340 User = 1,
1341 Assistant = 2,
1342 Tool = 3,
1343 Function = 4,
1344 Developer = 5
1345 }
1346 public class ChatOutputAudio : IJsonModel<ChatOutputAudio>, IPersistableModel<ChatOutputAudio> {
1347 public BinaryData AudioBytes { get; }
1348 public DateTimeOffset ExpiresAt { get; }
1349 public string Id { get; }
1350 public string Transcript { get; }
1351 public static explicit operator ChatOutputAudio(ClientResult result);
1352 public static implicit operator BinaryContent(ChatOutputAudio chatOutputAudio);
1353 }
1354 public readonly partial struct ChatOutputAudioFormat : IEquatable<ChatOutputAudioFormat> {
1355 public ChatOutputAudioFormat(string value);
1356 public static ChatOutputAudioFormat Flac { get; }
1357 public static ChatOutputAudioFormat Mp3 { get; }
1358 public static ChatOutputAudioFormat Opus { get; }
1359 public static ChatOutputAudioFormat Pcm16 { get; }
1360 public static ChatOutputAudioFormat Wav { get; }
1361 public readonly bool Equals(ChatOutputAudioFormat other);
1362 [EditorBrowsable(EditorBrowsableState.Never)]
1363 public override readonly bool Equals(object obj);
1364 [EditorBrowsable(EditorBrowsableState.Never)]
1365 public override readonly int GetHashCode();
1366 public static bool operator ==(ChatOutputAudioFormat left, ChatOutputAudioFormat right);
1367 public static implicit operator ChatOutputAudioFormat(string value);
1368 public static bool operator !=(ChatOutputAudioFormat left, ChatOutputAudioFormat right);
1369 public override readonly string ToString();
1370 }
1371 public class ChatOutputAudioReference : IJsonModel<ChatOutputAudioReference>, IPersistableModel<ChatOutputAudioReference> {
1372 public ChatOutputAudioReference(string id);
1373 public string Id { get; }
1374 public static explicit operator ChatOutputAudioReference(ClientResult result);
1375 public static implicit operator BinaryContent(ChatOutputAudioReference chatOutputAudioReference);
1376 }
1377 public readonly partial struct ChatOutputAudioVoice : IEquatable<ChatOutputAudioVoice> {
1378 public ChatOutputAudioVoice(string value);
1379 public static ChatOutputAudioVoice Alloy { get; }
1380 public static ChatOutputAudioVoice Ash { get; }
1381 public static ChatOutputAudioVoice Ballad { get; }
1382 public static ChatOutputAudioVoice Coral { get; }
1383 public static ChatOutputAudioVoice Echo { get; }
1384 public static ChatOutputAudioVoice Sage { get; }
1385 public static ChatOutputAudioVoice Shimmer { get; }
1386 public static ChatOutputAudioVoice Verse { get; }
1387 public readonly bool Equals(ChatOutputAudioVoice other);
1388 [EditorBrowsable(EditorBrowsableState.Never)]
1389 public override readonly bool Equals(object obj);
1390 [EditorBrowsable(EditorBrowsableState.Never)]
1391 public override readonly int GetHashCode();
1392 public static bool operator ==(ChatOutputAudioVoice left, ChatOutputAudioVoice right);
1393 public static implicit operator ChatOutputAudioVoice(string value);
1394 public static bool operator !=(ChatOutputAudioVoice left, ChatOutputAudioVoice right);
1395 public override readonly string ToString();
1396 }
1397 public class ChatOutputPrediction : IJsonModel<ChatOutputPrediction>, IPersistableModel<ChatOutputPrediction> {
1398 public static ChatOutputPrediction CreateStaticContentPrediction(IEnumerable<ChatMessageContentPart> staticContentParts);
1399 public static ChatOutputPrediction CreateStaticContentPrediction(string staticContent);
1400 public static explicit operator ChatOutputPrediction(ClientResult result);
1401 public static implicit operator BinaryContent(ChatOutputPrediction chatOutputPrediction);
1402 }
1403 public class ChatOutputTokenUsageDetails : IJsonModel<ChatOutputTokenUsageDetails>, IPersistableModel<ChatOutputTokenUsageDetails> {
1404 public int AcceptedPredictionTokenCount { get; }
1405 public int AudioTokenCount { get; }
1406 public int ReasoningTokenCount { get; }
1407 public int RejectedPredictionTokenCount { get; }
1408 public static explicit operator ChatOutputTokenUsageDetails(ClientResult result);
1409 public static implicit operator BinaryContent(ChatOutputTokenUsageDetails chatOutputTokenUsageDetails);
1410 }
1411 public readonly partial struct ChatReasoningEffortLevel : IEquatable<ChatReasoningEffortLevel> {
1412 public ChatReasoningEffortLevel(string value);
1413 public static ChatReasoningEffortLevel High { get; }
1414 public static ChatReasoningEffortLevel Low { get; }
1415 public static ChatReasoningEffortLevel Medium { get; }
1416 public readonly bool Equals(ChatReasoningEffortLevel other);
1417 [EditorBrowsable(EditorBrowsableState.Never)]
1418 public override readonly bool Equals(object obj);
1419 [EditorBrowsable(EditorBrowsableState.Never)]
1420 public override readonly int GetHashCode();
1421 public static bool operator ==(ChatReasoningEffortLevel left, ChatReasoningEffortLevel right);
1422 public static implicit operator ChatReasoningEffortLevel(string value);
1423 public static bool operator !=(ChatReasoningEffortLevel left, ChatReasoningEffortLevel right);
1424 public override readonly string ToString();
1425 }
1426 public class ChatResponseFormat : IJsonModel<ChatResponseFormat>, IPersistableModel<ChatResponseFormat> {
1427 public static ChatResponseFormat CreateJsonObjectFormat();
1428 public static ChatResponseFormat CreateJsonSchemaFormat(string jsonSchemaFormatName, BinaryData jsonSchema, string jsonSchemaFormatDescription = null, bool? jsonSchemaIsStrict = null);
1429 public static ChatResponseFormat CreateTextFormat();
1430 public static explicit operator ChatResponseFormat(ClientResult result);
1431 public static implicit operator BinaryContent(ChatResponseFormat chatResponseFormat);
1432 }
1433 [Flags]
1434 public enum ChatResponseModalities {
1435 Default = 0,
1436 Text = 1,
1437 Audio = 2
1438 }
1439 public class ChatTokenLogProbabilityDetails : IJsonModel<ChatTokenLogProbabilityDetails>, IPersistableModel<ChatTokenLogProbabilityDetails> {
1440 public float LogProbability { get; }
1441 public string Token { get; }
1442 public IReadOnlyList<ChatTokenTopLogProbabilityDetails> TopLogProbabilities { get; }
1443 public ReadOnlyMemory<byte>? Utf8Bytes { get; }
1444 public static explicit operator ChatTokenLogProbabilityDetails(ClientResult result);
1445 public static implicit operator BinaryContent(ChatTokenLogProbabilityDetails chatTokenLogProbabilityDetails);
1446 }
1447 public class ChatTokenTopLogProbabilityDetails : IJsonModel<ChatTokenTopLogProbabilityDetails>, IPersistableModel<ChatTokenTopLogProbabilityDetails> {
1448 public float LogProbability { get; }
1449 public string Token { get; }
1450 public ReadOnlyMemory<byte>? Utf8Bytes { get; }
1451 public static explicit operator ChatTokenTopLogProbabilityDetails(ClientResult result);
1452 public static implicit operator BinaryContent(ChatTokenTopLogProbabilityDetails chatTokenTopLogProbabilityDetails);
1453 }
1454 public class ChatTokenUsage : IJsonModel<ChatTokenUsage>, IPersistableModel<ChatTokenUsage> {
1455 public int InputTokenCount { get; }
1456 public ChatInputTokenUsageDetails InputTokenDetails { get; }
1457 public int OutputTokenCount { get; }
1458 public ChatOutputTokenUsageDetails OutputTokenDetails { get; }
1459 public int TotalTokenCount { get; }
1460 public static explicit operator ChatTokenUsage(ClientResult result);
1461 public static implicit operator BinaryContent(ChatTokenUsage chatTokenUsage);
1462 }
1463 public class ChatTool : IJsonModel<ChatTool>, IPersistableModel<ChatTool> {
1464 public string FunctionDescription { get; }
1465 public string FunctionName { get; }
1466 public BinaryData FunctionParameters { get; }
1467 public bool? FunctionSchemaIsStrict { get; }
1468 public ChatToolKind Kind { get; }
1469 public static ChatTool CreateFunctionTool(string functionName, string functionDescription = null, BinaryData functionParameters = null, bool? functionSchemaIsStrict = null);
1470 public static explicit operator ChatTool(ClientResult result);
1471 public static implicit operator BinaryContent(ChatTool chatTool);
1472 }
1473 public class ChatToolCall : IJsonModel<ChatToolCall>, IPersistableModel<ChatToolCall> {
1474 public BinaryData FunctionArguments { get; }
1475 public string FunctionName { get; }
1476 public string Id { get; set; }
1477 public ChatToolCallKind Kind { get; }
1478 public static ChatToolCall CreateFunctionToolCall(string id, string functionName, BinaryData functionArguments);
1479 public static explicit operator ChatToolCall(ClientResult result);
1480 public static implicit operator BinaryContent(ChatToolCall chatToolCall);
1481 }
1482 public enum ChatToolCallKind {
1483 Function = 0
1484 }
1485 public class ChatToolChoice : IJsonModel<ChatToolChoice>, IPersistableModel<ChatToolChoice> {
1486 public static ChatToolChoice CreateAutoChoice();
1487 public static ChatToolChoice CreateFunctionChoice(string functionName);
1488 public static ChatToolChoice CreateNoneChoice();
1489 public static ChatToolChoice CreateRequiredChoice();
1490 public static explicit operator ChatToolChoice(ClientResult result);
1491 public static implicit operator BinaryContent(ChatToolChoice chatToolChoice);
1492 }
1493 public enum ChatToolKind {
1494 Function = 0
1495 }
1496 public class DeveloperChatMessage : ChatMessage, IJsonModel<DeveloperChatMessage>, IPersistableModel<DeveloperChatMessage> {
1497 public DeveloperChatMessage(params ChatMessageContentPart[] contentParts);
1498 public DeveloperChatMessage(IEnumerable<ChatMessageContentPart> contentParts);
1499 public DeveloperChatMessage(string content);
1500 public string ParticipantName { get; set; }
1501 public new static explicit operator DeveloperChatMessage(ClientResult result);
1502 public static implicit operator BinaryContent(DeveloperChatMessage developerChatMessage);
1503 }
1504 [Obsolete("This class is obsolete. Please use ToolChatMessage instead.")]
1505 public class FunctionChatMessage : ChatMessage, IJsonModel<FunctionChatMessage>, IPersistableModel<FunctionChatMessage> {
1506 public FunctionChatMessage(string functionName, string content);
1507 public string FunctionName { get; }
1508 public new static explicit operator FunctionChatMessage(ClientResult result);
1509 public static implicit operator BinaryContent(FunctionChatMessage functionChatMessage);
1510 }
1511 public static class OpenAIChatModelFactory {
1512 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);
1513 [EditorBrowsable(EditorBrowsableState.Never)]
1514 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);
1515 public static ChatInputTokenUsageDetails ChatInputTokenUsageDetails(int audioTokenCount = 0, int cachedTokenCount = 0);
1516 public static ChatOutputAudio ChatOutputAudio(BinaryData audioBytes, string id = null, string transcript = null, DateTimeOffset expiresAt = default);
1517 public static ChatOutputTokenUsageDetails ChatOutputTokenUsageDetails(int reasoningTokenCount = 0, int audioTokenCount = 0, int acceptedPredictionTokenCount = 0, int rejectedPredictionTokenCount = 0);
1518 [EditorBrowsable(EditorBrowsableState.Never)]
1519 public static ChatOutputTokenUsageDetails ChatOutputTokenUsageDetails(int reasoningTokenCount, int audioTokenCount);
1520 [EditorBrowsable(EditorBrowsableState.Never)]
1521 public static ChatOutputTokenUsageDetails ChatOutputTokenUsageDetails(int reasoningTokenCount);
1522 public static ChatTokenLogProbabilityDetails ChatTokenLogProbabilityDetails(string token = null, float logProbability = 0, ReadOnlyMemory<byte>? utf8Bytes = null, IEnumerable<ChatTokenTopLogProbabilityDetails> topLogProbabilities = null);
1523 public static ChatTokenTopLogProbabilityDetails ChatTokenTopLogProbabilityDetails(string token = null, float logProbability = 0, ReadOnlyMemory<byte>? utf8Bytes = null);
1524 public static ChatTokenUsage ChatTokenUsage(int outputTokenCount = 0, int inputTokenCount = 0, int totalTokenCount = 0, ChatOutputTokenUsageDetails outputTokenDetails = null, ChatInputTokenUsageDetails inputTokenDetails = null);
1525 [EditorBrowsable(EditorBrowsableState.Never)]
1526 public static ChatTokenUsage ChatTokenUsage(int outputTokenCount, int inputTokenCount, int totalTokenCount, ChatOutputTokenUsageDetails outputTokenDetails);
1527 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);
1528 [EditorBrowsable(EditorBrowsableState.Never)]
1529 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);
1530 [Obsolete("This class is obsolete. Please use StreamingChatToolCallUpdate instead.")]
1531 public static StreamingChatFunctionCallUpdate StreamingChatFunctionCallUpdate(string functionName = null, BinaryData functionArgumentsUpdate = null);
1532 public static StreamingChatOutputAudioUpdate StreamingChatOutputAudioUpdate(string id = null, DateTimeOffset? expiresAt = null, string transcriptUpdate = null, BinaryData audioBytesUpdate = null);
1533 public static StreamingChatToolCallUpdate StreamingChatToolCallUpdate(int index = 0, string toolCallId = null, ChatToolCallKind kind = ChatToolCallKind.Function, string functionName = null, BinaryData functionArgumentsUpdate = null);
1534 }
1535 public class StreamingChatCompletionUpdate : IJsonModel<StreamingChatCompletionUpdate>, IPersistableModel<StreamingChatCompletionUpdate> {
1536 public string CompletionId { get; }
1537 public IReadOnlyList<ChatTokenLogProbabilityDetails> ContentTokenLogProbabilities { get; }
1538 public ChatMessageContent ContentUpdate { get; }
1539 public DateTimeOffset CreatedAt { get; }
1540 public ChatFinishReason? FinishReason { get; }
1541 [Obsolete("This property is obsolete. Please use ToolCallUpdates instead.")]
1542 public StreamingChatFunctionCallUpdate FunctionCallUpdate { get; }
1543 public string Model { get; }
1544 public StreamingChatOutputAudioUpdate OutputAudioUpdate { get; }
1545 public IReadOnlyList<ChatTokenLogProbabilityDetails> RefusalTokenLogProbabilities { get; }
1546 public string RefusalUpdate { get; }
1547 public ChatMessageRole? Role { get; }
1548 public string SystemFingerprint { get; }
1549 public IReadOnlyList<StreamingChatToolCallUpdate> ToolCallUpdates { get; }
1550 public ChatTokenUsage Usage { get; }
1551 public static explicit operator StreamingChatCompletionUpdate(ClientResult result);
1552 public static implicit operator BinaryContent(StreamingChatCompletionUpdate streamingChatCompletionUpdate);
1553 }
1554 [Obsolete("This class is obsolete. Please use StreamingChatToolCallUpdate instead.")]
1555 public class StreamingChatFunctionCallUpdate : IJsonModel<StreamingChatFunctionCallUpdate>, IPersistableModel<StreamingChatFunctionCallUpdate> {
1556 public BinaryData FunctionArgumentsUpdate { get; }
1557 public string FunctionName { get; }
1558 public static explicit operator StreamingChatFunctionCallUpdate(ClientResult result);
1559 public static implicit operator BinaryContent(StreamingChatFunctionCallUpdate streamingChatFunctionCallUpdate);
1560 }
1561 public class StreamingChatOutputAudioUpdate : IJsonModel<StreamingChatOutputAudioUpdate>, IPersistableModel<StreamingChatOutputAudioUpdate> {
1562 public BinaryData AudioBytesUpdate { get; }
1563 public DateTimeOffset? ExpiresAt { get; }
1564 public string Id { get; }
1565 public string TranscriptUpdate { get; }
1566 public static explicit operator StreamingChatOutputAudioUpdate(ClientResult result);
1567 public static implicit operator BinaryContent(StreamingChatOutputAudioUpdate streamingChatOutputAudioUpdate);
1568 }
1569 public class StreamingChatToolCallUpdate : IJsonModel<StreamingChatToolCallUpdate>, IPersistableModel<StreamingChatToolCallUpdate> {
1570 public BinaryData FunctionArgumentsUpdate { get; }
1571 public string FunctionName { get; }
1572 public int Index { get; }
1573 public ChatToolCallKind Kind { get; }
1574 public string ToolCallId { get; }
1575 public static explicit operator StreamingChatToolCallUpdate(ClientResult result);
1576 public static implicit operator BinaryContent(StreamingChatToolCallUpdate streamingChatToolCallUpdate);
1577 }
1578 public class SystemChatMessage : ChatMessage, IJsonModel<SystemChatMessage>, IPersistableModel<SystemChatMessage> {
1579 public SystemChatMessage(params ChatMessageContentPart[] contentParts);
1580 public SystemChatMessage(IEnumerable<ChatMessageContentPart> contentParts);
1581 public SystemChatMessage(string content);
1582 public string ParticipantName { get; set; }
1583 public new static explicit operator SystemChatMessage(ClientResult result);
1584 public static implicit operator BinaryContent(SystemChatMessage systemChatMessage);
1585 }
1586 public class ToolChatMessage : ChatMessage, IJsonModel<ToolChatMessage>, IPersistableModel<ToolChatMessage> {
1587 public ToolChatMessage(string toolCallId, params ChatMessageContentPart[] contentParts);
1588 public ToolChatMessage(string toolCallId, IEnumerable<ChatMessageContentPart> contentParts);
1589 public ToolChatMessage(string toolCallId, string content);
1590 public string ToolCallId { get; }
1591 public new static explicit operator ToolChatMessage(ClientResult result);
1592 public static implicit operator BinaryContent(ToolChatMessage toolChatMessage);
1593 }
1594 public class UserChatMessage : ChatMessage, IJsonModel<UserChatMessage>, IPersistableModel<UserChatMessage> {
1595 public UserChatMessage(params ChatMessageContentPart[] contentParts);
1596 public UserChatMessage(IEnumerable<ChatMessageContentPart> contentParts);
1597 public UserChatMessage(string content);
1598 public string ParticipantName { get; set; }
1599 public new static explicit operator UserChatMessage(ClientResult result);
1600 public static implicit operator BinaryContent(UserChatMessage userChatMessage);
1601 }
1602}
1603namespace OpenAI.Embeddings {
1604 public class EmbeddingClient {
1605 protected EmbeddingClient();
1606 protected internal EmbeddingClient(ClientPipeline pipeline, string model, OpenAIClientOptions options);
1607 public EmbeddingClient(string model, ApiKeyCredential credential, OpenAIClientOptions options);
1608 public EmbeddingClient(string model, ApiKeyCredential credential);
1609 public EmbeddingClient(string model, string apiKey);
1610 public ClientPipeline Pipeline { get; }
1611 public virtual ClientResult<OpenAIEmbedding> GenerateEmbedding(string input, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = default);
1612 public virtual Task<ClientResult<OpenAIEmbedding>> GenerateEmbeddingAsync(string input, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = default);
1613 [EditorBrowsable(EditorBrowsableState.Never)]
1614 public virtual ClientResult GenerateEmbeddings(BinaryContent content, RequestOptions options = null);
1615 public virtual ClientResult<OpenAIEmbeddingCollection> GenerateEmbeddings(IEnumerable<ReadOnlyMemory<int>> inputs, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = default);
1616 public virtual ClientResult<OpenAIEmbeddingCollection> GenerateEmbeddings(IEnumerable<string> inputs, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = default);
1617 [EditorBrowsable(EditorBrowsableState.Never)]
1618 public virtual Task<ClientResult> GenerateEmbeddingsAsync(BinaryContent content, RequestOptions options = null);
1619 public virtual Task<ClientResult<OpenAIEmbeddingCollection>> GenerateEmbeddingsAsync(IEnumerable<ReadOnlyMemory<int>> inputs, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = default);
1620 public virtual Task<ClientResult<OpenAIEmbeddingCollection>> GenerateEmbeddingsAsync(IEnumerable<string> inputs, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = default);
1621 }
1622 public class EmbeddingGenerationOptions : IJsonModel<EmbeddingGenerationOptions>, IPersistableModel<EmbeddingGenerationOptions> {
1623 public int? Dimensions { get; set; }
1624 public string EndUserId { get; set; }
1625 public static explicit operator EmbeddingGenerationOptions(ClientResult result);
1626 public static implicit operator BinaryContent(EmbeddingGenerationOptions embeddingGenerationOptions);
1627 }
1628 public class EmbeddingTokenUsage : IJsonModel<EmbeddingTokenUsage>, IPersistableModel<EmbeddingTokenUsage> {
1629 public int InputTokenCount { get; }
1630 public int TotalTokenCount { get; }
1631 public static explicit operator EmbeddingTokenUsage(ClientResult result);
1632 public static implicit operator BinaryContent(EmbeddingTokenUsage embeddingTokenUsage);
1633 }
1634 public class OpenAIEmbedding : IJsonModel<OpenAIEmbedding>, IPersistableModel<OpenAIEmbedding> {
1635 public int Index { get; }
1636 public static explicit operator OpenAIEmbedding(ClientResult result);
1637 public static implicit operator BinaryContent(OpenAIEmbedding openAIEmbedding);
1638 public ReadOnlyMemory<float> ToFloats();
1639 }
1640 public class OpenAIEmbeddingCollection : ObjectModel.ReadOnlyCollection<OpenAIEmbedding>, IJsonModel<OpenAIEmbeddingCollection>, IPersistableModel<OpenAIEmbeddingCollection> {
1641 public string Model { get; }
1642 public EmbeddingTokenUsage Usage { get; }
1643 public static explicit operator OpenAIEmbeddingCollection(ClientResult result);
1644 public static implicit operator BinaryContent(OpenAIEmbeddingCollection openAIEmbeddingCollection);
1645 }
1646 public static class OpenAIEmbeddingsModelFactory {
1647 public static EmbeddingTokenUsage EmbeddingTokenUsage(int inputTokenCount = 0, int totalTokenCount = 0);
1648 public static OpenAIEmbedding OpenAIEmbedding(int index = 0, IEnumerable<float> vector = null);
1649 public static OpenAIEmbeddingCollection OpenAIEmbeddingCollection(IEnumerable<OpenAIEmbedding> items = null, string model = null, EmbeddingTokenUsage usage = null);
1650 }
1651}
1652namespace OpenAI.Files {
1653 public class FileDeletionResult : IJsonModel<FileDeletionResult>, IPersistableModel<FileDeletionResult> {
1654 public bool Deleted { get; }
1655 public string FileId { get; }
1656 public static explicit operator FileDeletionResult(ClientResult result);
1657 public static implicit operator BinaryContent(FileDeletionResult fileDeletionResult);
1658 }
1659 public enum FilePurpose {
1660 Assistants = 0,
1661 AssistantsOutput = 1,
1662 Batch = 2,
1663 BatchOutput = 3,
1664 FineTune = 4,
1665 FineTuneResults = 5,
1666 Vision = 6
1667 }
1668 [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.")]
1669 public enum FileStatus {
1670 Uploaded = 0,
1671 Processed = 1,
1672 Error = 2
1673 }
1674 public readonly partial struct FileUploadPurpose : IEquatable<FileUploadPurpose> {
1675 public FileUploadPurpose(string value);
1676 public static FileUploadPurpose Assistants { get; }
1677 public static FileUploadPurpose Batch { get; }
1678 public static FileUploadPurpose FineTune { get; }
1679 public static FileUploadPurpose Vision { get; }
1680 public readonly bool Equals(FileUploadPurpose other);
1681 [EditorBrowsable(EditorBrowsableState.Never)]
1682 public override readonly bool Equals(object obj);
1683 [EditorBrowsable(EditorBrowsableState.Never)]
1684 public override readonly int GetHashCode();
1685 public static bool operator ==(FileUploadPurpose left, FileUploadPurpose right);
1686 public static implicit operator FileUploadPurpose(string value);
1687 public static bool operator !=(FileUploadPurpose left, FileUploadPurpose right);
1688 public override readonly string ToString();
1689 }
1690 public class OpenAIFile : IJsonModel<OpenAIFile>, IPersistableModel<OpenAIFile> {
1691 public DateTimeOffset CreatedAt { get; }
1692 public string Filename { get; }
1693 public string Id { get; }
1694 public FilePurpose Purpose { get; }
1695 public int? SizeInBytes { get; }
1696 [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.")]
1697 public FileStatus Status { get; }
1698 [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.")]
1699 public string StatusDetails { get; }
1700 public static explicit operator OpenAIFile(ClientResult result);
1701 public static implicit operator BinaryContent(OpenAIFile openAIFile);
1702 }
1703 public class OpenAIFileClient {
1704 protected OpenAIFileClient();
1705 public OpenAIFileClient(ApiKeyCredential credential, OpenAIClientOptions options);
1706 public OpenAIFileClient(ApiKeyCredential credential);
1707 protected internal OpenAIFileClient(ClientPipeline pipeline, OpenAIClientOptions options);
1708 public OpenAIFileClient(string apiKey);
1709 public ClientPipeline Pipeline { get; }
1710 public virtual ClientResult AddUploadPart(string uploadId, BinaryContent content, string contentType, RequestOptions options = null);
1711 public virtual Task<ClientResult> AddUploadPartAsync(string uploadId, BinaryContent content, string contentType, RequestOptions options = null);
1712 public virtual ClientResult CancelUpload(string uploadId, RequestOptions options = null);
1713 public virtual Task<ClientResult> CancelUploadAsync(string uploadId, RequestOptions options = null);
1714 public virtual ClientResult CompleteUpload(string uploadId, BinaryContent content, RequestOptions options = null);
1715 public virtual Task<ClientResult> CompleteUploadAsync(string uploadId, BinaryContent content, RequestOptions options = null);
1716 public virtual ClientResult CreateUpload(BinaryContent content, RequestOptions options = null);
1717 public virtual Task<ClientResult> CreateUploadAsync(BinaryContent content, RequestOptions options = null);
1718 [EditorBrowsable(EditorBrowsableState.Never)]
1719 public virtual ClientResult DeleteFile(string fileId, RequestOptions options);
1720 public virtual ClientResult<FileDeletionResult> DeleteFile(string fileId, CancellationToken cancellationToken = default);
1721 [EditorBrowsable(EditorBrowsableState.Never)]
1722 public virtual Task<ClientResult> DeleteFileAsync(string fileId, RequestOptions options);
1723 public virtual Task<ClientResult<FileDeletionResult>> DeleteFileAsync(string fileId, CancellationToken cancellationToken = default);
1724 [EditorBrowsable(EditorBrowsableState.Never)]
1725 public virtual ClientResult DownloadFile(string fileId, RequestOptions options);
1726 public virtual ClientResult<BinaryData> DownloadFile(string fileId, CancellationToken cancellationToken = default);
1727 [EditorBrowsable(EditorBrowsableState.Never)]
1728 public virtual Task<ClientResult> DownloadFileAsync(string fileId, RequestOptions options);
1729 public virtual Task<ClientResult<BinaryData>> DownloadFileAsync(string fileId, CancellationToken cancellationToken = default);
1730 [EditorBrowsable(EditorBrowsableState.Never)]
1731 public virtual ClientResult GetFile(string fileId, RequestOptions options);
1732 public virtual ClientResult<OpenAIFile> GetFile(string fileId, CancellationToken cancellationToken = default);
1733 [EditorBrowsable(EditorBrowsableState.Never)]
1734 public virtual Task<ClientResult> GetFileAsync(string fileId, RequestOptions options);
1735 public virtual Task<ClientResult<OpenAIFile>> GetFileAsync(string fileId, CancellationToken cancellationToken = default);
1736 public virtual ClientResult<OpenAIFileCollection> GetFiles(FilePurpose purpose, CancellationToken cancellationToken = default);
1737 [EditorBrowsable(EditorBrowsableState.Never)]
1738 public virtual ClientResult GetFiles(string purpose, RequestOptions options);
1739 public virtual ClientResult<OpenAIFileCollection> GetFiles(CancellationToken cancellationToken = default);
1740 public virtual Task<ClientResult<OpenAIFileCollection>> GetFilesAsync(FilePurpose purpose, CancellationToken cancellationToken = default);
1741 [EditorBrowsable(EditorBrowsableState.Never)]
1742 public virtual Task<ClientResult> GetFilesAsync(string purpose, RequestOptions options);
1743 public virtual Task<ClientResult<OpenAIFileCollection>> GetFilesAsync(CancellationToken cancellationToken = default);
1744 public virtual ClientResult<OpenAIFile> UploadFile(BinaryData file, string filename, FileUploadPurpose purpose);
1745 [EditorBrowsable(EditorBrowsableState.Never)]
1746 public virtual ClientResult UploadFile(BinaryContent content, string contentType, RequestOptions options = null);
1747 public virtual ClientResult<OpenAIFile> UploadFile(Stream file, string filename, FileUploadPurpose purpose, CancellationToken cancellationToken = default);
1748 public virtual ClientResult<OpenAIFile> UploadFile(string filePath, FileUploadPurpose purpose);
1749 public virtual Task<ClientResult<OpenAIFile>> UploadFileAsync(BinaryData file, string filename, FileUploadPurpose purpose);
1750 [EditorBrowsable(EditorBrowsableState.Never)]
1751 public virtual Task<ClientResult> UploadFileAsync(BinaryContent content, string contentType, RequestOptions options = null);
1752 public virtual Task<ClientResult<OpenAIFile>> UploadFileAsync(Stream file, string filename, FileUploadPurpose purpose, CancellationToken cancellationToken = default);
1753 public virtual Task<ClientResult<OpenAIFile>> UploadFileAsync(string filePath, FileUploadPurpose purpose);
1754 }
1755 public class OpenAIFileCollection : ObjectModel.ReadOnlyCollection<OpenAIFile>, IJsonModel<OpenAIFileCollection>, IPersistableModel<OpenAIFileCollection> {
1756 public static explicit operator OpenAIFileCollection(ClientResult result);
1757 public static implicit operator BinaryContent(OpenAIFileCollection openAIFileCollection);
1758 }
1759 public static class OpenAIFilesModelFactory {
1760 public static FileDeletionResult FileDeletionResult(string fileId = null, bool deleted = false);
1761 public static OpenAIFileCollection OpenAIFileCollection(IEnumerable<OpenAIFile> items = null);
1762 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);
1763 }
1764}
1765namespace OpenAI.FineTuning {
1766 public class FineTuningClient {
1767 protected FineTuningClient();
1768 public FineTuningClient(ApiKeyCredential credential, OpenAIClientOptions options);
1769 public FineTuningClient(ApiKeyCredential credential);
1770 protected internal FineTuningClient(ClientPipeline pipeline, OpenAIClientOptions options);
1771 public FineTuningClient(string apiKey);
1772 public ClientPipeline Pipeline { get; }
1773 public virtual FineTuningJobOperation CreateFineTuningJob(BinaryContent content, bool waitUntilCompleted, RequestOptions options = null);
1774 public virtual Task<FineTuningJobOperation> CreateFineTuningJobAsync(BinaryContent content, bool waitUntilCompleted, RequestOptions options = null);
1775 public virtual ClientResult GetJob(string fineTuningJobId, RequestOptions options);
1776 public virtual Task<ClientResult> GetJobAsync(string fineTuningJobId, RequestOptions options);
1777 public virtual CollectionResult GetJobs(string after, int? limit, RequestOptions options);
1778 public virtual AsyncCollectionResult GetJobsAsync(string after, int? limit, RequestOptions options);
1779 }
1780 public class FineTuningJobOperation : OperationResult {
1781 public string JobId { get; }
1782 public override ContinuationToken? RehydrationToken { get; protected set; }
1783 public virtual ClientResult Cancel(RequestOptions? options);
1784 public virtual Task<ClientResult> CancelAsync(RequestOptions? options);
1785 public virtual ClientResult GetJob(RequestOptions? options);
1786 public virtual Task<ClientResult> GetJobAsync(RequestOptions? options);
1787 public virtual CollectionResult GetJobCheckpoints(string? after, int? limit, RequestOptions? options);
1788 public virtual AsyncCollectionResult GetJobCheckpointsAsync(string? after, int? limit, RequestOptions? options);
1789 public virtual CollectionResult GetJobEvents(string? after, int? limit, RequestOptions options);
1790 public virtual AsyncCollectionResult GetJobEventsAsync(string? after, int? limit, RequestOptions options);
1791 public static FineTuningJobOperation Rehydrate(FineTuningClient client, ContinuationToken rehydrationToken, CancellationToken cancellationToken = default);
1792 public static FineTuningJobOperation Rehydrate(FineTuningClient client, string fineTuningJobId, CancellationToken cancellationToken = default);
1793 public static Task<FineTuningJobOperation> RehydrateAsync(FineTuningClient client, ContinuationToken rehydrationToken, CancellationToken cancellationToken = default);
1794 public static Task<FineTuningJobOperation> RehydrateAsync(FineTuningClient client, string fineTuningJobId, CancellationToken cancellationToken = default);
1795 public override ClientResult UpdateStatus(RequestOptions? options = null);
1796 public override ValueTask<ClientResult> UpdateStatusAsync(RequestOptions? options = null);
1797 }
1798}
1799namespace OpenAI.Images {
1800 public class GeneratedImage : IJsonModel<GeneratedImage>, IPersistableModel<GeneratedImage> {
1801 public BinaryData ImageBytes { get; }
1802 public Uri ImageUri { get; }
1803 public string RevisedPrompt { get; }
1804 public static explicit operator GeneratedImage(ClientResult result);
1805 public static implicit operator BinaryContent(GeneratedImage generatedImage);
1806 }
1807 public class GeneratedImageCollection : ObjectModel.ReadOnlyCollection<GeneratedImage>, IJsonModel<GeneratedImageCollection>, IPersistableModel<GeneratedImageCollection> {
1808 public DateTimeOffset CreatedAt { get; }
1809 public static explicit operator GeneratedImageCollection(ClientResult result);
1810 public static implicit operator BinaryContent(GeneratedImageCollection generatedImageCollection);
1811 }
1812 public readonly partial struct GeneratedImageFormat : IEquatable<GeneratedImageFormat> {
1813 public GeneratedImageFormat(string value);
1814 public static GeneratedImageFormat Bytes { get; }
1815 public static GeneratedImageFormat Uri { get; }
1816 public readonly bool Equals(GeneratedImageFormat other);
1817 [EditorBrowsable(EditorBrowsableState.Never)]
1818 public override readonly bool Equals(object obj);
1819 [EditorBrowsable(EditorBrowsableState.Never)]
1820 public override readonly int GetHashCode();
1821 public static bool operator ==(GeneratedImageFormat left, GeneratedImageFormat right);
1822 public static implicit operator GeneratedImageFormat(string value);
1823 public static bool operator !=(GeneratedImageFormat left, GeneratedImageFormat right);
1824 public override readonly string ToString();
1825 }
1826 public readonly partial struct GeneratedImageQuality : IEquatable<GeneratedImageQuality> {
1827 public GeneratedImageQuality(string value);
1828 public static GeneratedImageQuality High { get; }
1829 public static GeneratedImageQuality Standard { get; }
1830 public readonly bool Equals(GeneratedImageQuality other);
1831 [EditorBrowsable(EditorBrowsableState.Never)]
1832 public override readonly bool Equals(object obj);
1833 [EditorBrowsable(EditorBrowsableState.Never)]
1834 public override readonly int GetHashCode();
1835 public static bool operator ==(GeneratedImageQuality left, GeneratedImageQuality right);
1836 public static implicit operator GeneratedImageQuality(string value);
1837 public static bool operator !=(GeneratedImageQuality left, GeneratedImageQuality right);
1838 public override readonly string ToString();
1839 }
1840 public readonly partial struct GeneratedImageSize : IEquatable<GeneratedImageSize> {
1841 public static readonly GeneratedImageSize W1024xH1024;
1842 public static readonly GeneratedImageSize W1024xH1792;
1843 public static readonly GeneratedImageSize W1792xH1024;
1844 public static readonly GeneratedImageSize W256xH256;
1845 public static readonly GeneratedImageSize W512xH512;
1846 public GeneratedImageSize(int width, int height);
1847 public readonly bool Equals(GeneratedImageSize other);
1848 [EditorBrowsable(EditorBrowsableState.Never)]
1849 public override readonly bool Equals(object obj);
1850 [EditorBrowsable(EditorBrowsableState.Never)]
1851 public override readonly int GetHashCode();
1852 public static bool operator ==(GeneratedImageSize left, GeneratedImageSize right);
1853 public static bool operator !=(GeneratedImageSize left, GeneratedImageSize right);
1854 public override readonly string ToString();
1855 }
1856 public readonly partial struct GeneratedImageStyle : IEquatable<GeneratedImageStyle> {
1857 public GeneratedImageStyle(string value);
1858 public static GeneratedImageStyle Natural { get; }
1859 public static GeneratedImageStyle Vivid { get; }
1860 public readonly bool Equals(GeneratedImageStyle other);
1861 [EditorBrowsable(EditorBrowsableState.Never)]
1862 public override readonly bool Equals(object obj);
1863 [EditorBrowsable(EditorBrowsableState.Never)]
1864 public override readonly int GetHashCode();
1865 public static bool operator ==(GeneratedImageStyle left, GeneratedImageStyle right);
1866 public static implicit operator GeneratedImageStyle(string value);
1867 public static bool operator !=(GeneratedImageStyle left, GeneratedImageStyle right);
1868 public override readonly string ToString();
1869 }
1870 public class ImageClient {
1871 protected ImageClient();
1872 protected internal ImageClient(ClientPipeline pipeline, string model, OpenAIClientOptions options);
1873 public ImageClient(string model, ApiKeyCredential credential, OpenAIClientOptions options);
1874 public ImageClient(string model, ApiKeyCredential credential);
1875 public ImageClient(string model, string apiKey);
1876 public ClientPipeline Pipeline { get; }
1877 public virtual ClientResult<GeneratedImage> GenerateImage(string prompt, ImageGenerationOptions options = null, CancellationToken cancellationToken = default);
1878 public virtual Task<ClientResult<GeneratedImage>> GenerateImageAsync(string prompt, ImageGenerationOptions options = null, CancellationToken cancellationToken = default);
1879 public virtual ClientResult<GeneratedImage> GenerateImageEdit(Stream image, string imageFilename, string prompt, ImageEditOptions options = null, CancellationToken cancellationToken = default);
1880 public virtual ClientResult<GeneratedImage> GenerateImageEdit(Stream image, string imageFilename, string prompt, Stream mask, string maskFilename, ImageEditOptions options = null, CancellationToken cancellationToken = default);
1881 public virtual ClientResult<GeneratedImage> GenerateImageEdit(string imageFilePath, string prompt, ImageEditOptions options = null);
1882 public virtual ClientResult<GeneratedImage> GenerateImageEdit(string imageFilePath, string prompt, string maskFilePath, ImageEditOptions options = null);
1883 public virtual Task<ClientResult<GeneratedImage>> GenerateImageEditAsync(Stream image, string imageFilename, string prompt, ImageEditOptions options = null, CancellationToken cancellationToken = default);
1884 public virtual Task<ClientResult<GeneratedImage>> GenerateImageEditAsync(Stream image, string imageFilename, string prompt, Stream mask, string maskFilename, ImageEditOptions options = null, CancellationToken cancellationToken = default);
1885 public virtual Task<ClientResult<GeneratedImage>> GenerateImageEditAsync(string imageFilePath, string prompt, ImageEditOptions options = null);
1886 public virtual Task<ClientResult<GeneratedImage>> GenerateImageEditAsync(string imageFilePath, string prompt, string maskFilePath, ImageEditOptions options = null);
1887 [EditorBrowsable(EditorBrowsableState.Never)]
1888 public virtual ClientResult GenerateImageEdits(BinaryContent content, string contentType, RequestOptions options = null);
1889 public virtual ClientResult<GeneratedImageCollection> GenerateImageEdits(Stream image, string imageFilename, string prompt, int imageCount, ImageEditOptions options = null, CancellationToken cancellationToken = default);
1890 public virtual ClientResult<GeneratedImageCollection> GenerateImageEdits(Stream image, string imageFilename, string prompt, Stream mask, string maskFilename, int imageCount, ImageEditOptions options = null, CancellationToken cancellationToken = default);
1891 public virtual ClientResult<GeneratedImageCollection> GenerateImageEdits(string imageFilePath, string prompt, int imageCount, ImageEditOptions options = null);
1892 public virtual ClientResult<GeneratedImageCollection> GenerateImageEdits(string imageFilePath, string prompt, string maskFilePath, int imageCount, ImageEditOptions options = null);
1893 [EditorBrowsable(EditorBrowsableState.Never)]
1894 public virtual Task<ClientResult> GenerateImageEditsAsync(BinaryContent content, string contentType, RequestOptions options = null);
1895 public virtual Task<ClientResult<GeneratedImageCollection>> GenerateImageEditsAsync(Stream image, string imageFilename, string prompt, int imageCount, ImageEditOptions options = null, CancellationToken cancellationToken = default);
1896 public virtual Task<ClientResult<GeneratedImageCollection>> GenerateImageEditsAsync(Stream image, string imageFilename, string prompt, Stream mask, string maskFilename, int imageCount, ImageEditOptions options = null, CancellationToken cancellationToken = default);
1897 public virtual Task<ClientResult<GeneratedImageCollection>> GenerateImageEditsAsync(string imageFilePath, string prompt, int imageCount, ImageEditOptions options = null);
1898 public virtual Task<ClientResult<GeneratedImageCollection>> GenerateImageEditsAsync(string imageFilePath, string prompt, string maskFilePath, int imageCount, ImageEditOptions options = null);
1899 [EditorBrowsable(EditorBrowsableState.Never)]
1900 public virtual ClientResult GenerateImages(BinaryContent content, RequestOptions options = null);
1901 public virtual ClientResult<GeneratedImageCollection> GenerateImages(string prompt, int imageCount, ImageGenerationOptions options = null, CancellationToken cancellationToken = default);
1902 [EditorBrowsable(EditorBrowsableState.Never)]
1903 public virtual Task<ClientResult> GenerateImagesAsync(BinaryContent content, RequestOptions options = null);
1904 public virtual Task<ClientResult<GeneratedImageCollection>> GenerateImagesAsync(string prompt, int imageCount, ImageGenerationOptions options = null, CancellationToken cancellationToken = default);
1905 public virtual ClientResult<GeneratedImage> GenerateImageVariation(Stream image, string imageFilename, ImageVariationOptions options = null, CancellationToken cancellationToken = default);
1906 public virtual ClientResult<GeneratedImage> GenerateImageVariation(string imageFilePath, ImageVariationOptions options = null);
1907 public virtual Task<ClientResult<GeneratedImage>> GenerateImageVariationAsync(Stream image, string imageFilename, ImageVariationOptions options = null, CancellationToken cancellationToken = default);
1908 public virtual Task<ClientResult<GeneratedImage>> GenerateImageVariationAsync(string imageFilePath, ImageVariationOptions options = null);
1909 [EditorBrowsable(EditorBrowsableState.Never)]
1910 public virtual ClientResult GenerateImageVariations(BinaryContent content, string contentType, RequestOptions options = null);
1911 public virtual ClientResult<GeneratedImageCollection> GenerateImageVariations(Stream image, string imageFilename, int imageCount, ImageVariationOptions options = null, CancellationToken cancellationToken = default);
1912 public virtual ClientResult<GeneratedImageCollection> GenerateImageVariations(string imageFilePath, int imageCount, ImageVariationOptions options = null);
1913 [EditorBrowsable(EditorBrowsableState.Never)]
1914 public virtual Task<ClientResult> GenerateImageVariationsAsync(BinaryContent content, string contentType, RequestOptions options = null);
1915 public virtual Task<ClientResult<GeneratedImageCollection>> GenerateImageVariationsAsync(Stream image, string imageFilename, int imageCount, ImageVariationOptions options = null, CancellationToken cancellationToken = default);
1916 public virtual Task<ClientResult<GeneratedImageCollection>> GenerateImageVariationsAsync(string imageFilePath, int imageCount, ImageVariationOptions options = null);
1917 }
1918 public class ImageEditOptions : IJsonModel<ImageEditOptions>, IPersistableModel<ImageEditOptions> {
1919 public string EndUserId { get; set; }
1920 public GeneratedImageFormat? ResponseFormat { get; set; }
1921 public GeneratedImageSize? Size { get; set; }
1922 public static explicit operator ImageEditOptions(ClientResult result);
1923 public static implicit operator BinaryContent(ImageEditOptions imageEditOptions);
1924 }
1925 public class ImageGenerationOptions : IJsonModel<ImageGenerationOptions>, IPersistableModel<ImageGenerationOptions> {
1926 public string EndUserId { get; set; }
1927 public GeneratedImageQuality? Quality { get; set; }
1928 public GeneratedImageFormat? ResponseFormat { get; set; }
1929 public GeneratedImageSize? Size { get; set; }
1930 public GeneratedImageStyle? Style { get; set; }
1931 public static explicit operator ImageGenerationOptions(ClientResult result);
1932 public static implicit operator BinaryContent(ImageGenerationOptions imageGenerationOptions);
1933 }
1934 public class ImageVariationOptions : IJsonModel<ImageVariationOptions>, IPersistableModel<ImageVariationOptions> {
1935 public string EndUserId { get; set; }
1936 public GeneratedImageFormat? ResponseFormat { get; set; }
1937 public GeneratedImageSize? Size { get; set; }
1938 public static explicit operator ImageVariationOptions(ClientResult result);
1939 public static implicit operator BinaryContent(ImageVariationOptions imageVariationOptions);
1940 }
1941 public static class OpenAIImagesModelFactory {
1942 public static GeneratedImage GeneratedImage(BinaryData imageBytes = null, Uri imageUri = null, string revisedPrompt = null);
1943 public static GeneratedImageCollection GeneratedImageCollection(DateTimeOffset createdAt = default, IEnumerable<GeneratedImage> items = null);
1944 }
1945}
1946namespace OpenAI.Models {
1947 public class ModelDeletionResult : IJsonModel<ModelDeletionResult>, IPersistableModel<ModelDeletionResult> {
1948 public bool Deleted { get; }
1949 public string ModelId { get; }
1950 public static explicit operator ModelDeletionResult(ClientResult result);
1951 public static implicit operator BinaryContent(ModelDeletionResult modelDeletionResult);
1952 }
1953 public class OpenAIModel : IJsonModel<OpenAIModel>, IPersistableModel<OpenAIModel> {
1954 public DateTimeOffset CreatedAt { get; }
1955 public string Id { get; }
1956 public string OwnedBy { get; }
1957 public static explicit operator OpenAIModel(ClientResult result);
1958 public static implicit operator BinaryContent(OpenAIModel openAIModel);
1959 }
1960 public class OpenAIModelClient {
1961 protected OpenAIModelClient();
1962 public OpenAIModelClient(ApiKeyCredential credential, OpenAIClientOptions options);
1963 public OpenAIModelClient(ApiKeyCredential credential);
1964 protected internal OpenAIModelClient(ClientPipeline pipeline, OpenAIClientOptions options);
1965 public OpenAIModelClient(string apiKey);
1966 public ClientPipeline Pipeline { get; }
1967 [EditorBrowsable(EditorBrowsableState.Never)]
1968 public virtual ClientResult DeleteModel(string model, RequestOptions options);
1969 public virtual ClientResult<ModelDeletionResult> DeleteModel(string model, CancellationToken cancellationToken = default);
1970 [EditorBrowsable(EditorBrowsableState.Never)]
1971 public virtual Task<ClientResult> DeleteModelAsync(string model, RequestOptions options);
1972 public virtual Task<ClientResult<ModelDeletionResult>> DeleteModelAsync(string model, CancellationToken cancellationToken = default);
1973 [EditorBrowsable(EditorBrowsableState.Never)]
1974 public virtual ClientResult GetModel(string model, RequestOptions options);
1975 public virtual ClientResult<OpenAIModel> GetModel(string model, CancellationToken cancellationToken = default);
1976 [EditorBrowsable(EditorBrowsableState.Never)]
1977 public virtual Task<ClientResult> GetModelAsync(string model, RequestOptions options);
1978 public virtual Task<ClientResult<OpenAIModel>> GetModelAsync(string model, CancellationToken cancellationToken = default);
1979 [EditorBrowsable(EditorBrowsableState.Never)]
1980 public virtual ClientResult GetModels(RequestOptions options);
1981 public virtual ClientResult<OpenAIModelCollection> GetModels(CancellationToken cancellationToken = default);
1982 [EditorBrowsable(EditorBrowsableState.Never)]
1983 public virtual Task<ClientResult> GetModelsAsync(RequestOptions options);
1984 public virtual Task<ClientResult<OpenAIModelCollection>> GetModelsAsync(CancellationToken cancellationToken = default);
1985 }
1986 public class OpenAIModelCollection : ObjectModel.ReadOnlyCollection<OpenAIModel>, IJsonModel<OpenAIModelCollection>, IPersistableModel<OpenAIModelCollection> {
1987 public static explicit operator OpenAIModelCollection(ClientResult result);
1988 public static implicit operator BinaryContent(OpenAIModelCollection openAIModelCollection);
1989 }
1990 public static class OpenAIModelsModelFactory {
1991 public static ModelDeletionResult ModelDeletionResult(string modelId = null, bool deleted = false);
1992 public static OpenAIModel OpenAIModel(string id = null, DateTimeOffset createdAt = default, string ownedBy = null);
1993 public static OpenAIModelCollection OpenAIModelCollection(IEnumerable<OpenAIModel> items = null);
1994 }
1995}
1996namespace OpenAI.Moderations {
1997 public class ModerationCategory {
1998 public bool Flagged { get; }
1999 public float Score { get; }
2000 }
2001 public class ModerationClient {
2002 protected ModerationClient();
2003 protected internal ModerationClient(ClientPipeline pipeline, string model, OpenAIClientOptions options);
2004 public ModerationClient(string model, ApiKeyCredential credential, OpenAIClientOptions options);
2005 public ModerationClient(string model, ApiKeyCredential credential);
2006 public ModerationClient(string model, string apiKey);
2007 public ClientPipeline Pipeline { get; }
2008 [EditorBrowsable(EditorBrowsableState.Never)]
2009 public virtual ClientResult ClassifyText(BinaryContent content, RequestOptions options = null);
2010 public virtual ClientResult<ModerationResultCollection> ClassifyText(IEnumerable<string> inputs, CancellationToken cancellationToken = default);
2011 public virtual ClientResult<ModerationResult> ClassifyText(string input, CancellationToken cancellationToken = default);
2012 [EditorBrowsable(EditorBrowsableState.Never)]
2013 public virtual Task<ClientResult> ClassifyTextAsync(BinaryContent content, RequestOptions options = null);
2014 public virtual Task<ClientResult<ModerationResultCollection>> ClassifyTextAsync(IEnumerable<string> inputs, CancellationToken cancellationToken = default);
2015 public virtual Task<ClientResult<ModerationResult>> ClassifyTextAsync(string input, CancellationToken cancellationToken = default);
2016 }
2017 public class ModerationResult : IJsonModel<ModerationResult>, IPersistableModel<ModerationResult> {
2018 public bool Flagged { get; }
2019 public ModerationCategory Harassment { get; }
2020 public ModerationCategory HarassmentThreatening { get; }
2021 public ModerationCategory Hate { get; }
2022 public ModerationCategory HateThreatening { get; }
2023 public ModerationCategory Illicit { get; }
2024 public ModerationCategory IllicitViolent { get; }
2025 public ModerationCategory SelfHarm { get; }
2026 public ModerationCategory SelfHarmInstructions { get; }
2027 public ModerationCategory SelfHarmIntent { get; }
2028 public ModerationCategory Sexual { get; }
2029 public ModerationCategory SexualMinors { get; }
2030 public ModerationCategory Violence { get; }
2031 public ModerationCategory ViolenceGraphic { get; }
2032 public static explicit operator ModerationResult(ClientResult result);
2033 public static implicit operator BinaryContent(ModerationResult moderationResult);
2034 }
2035 public class ModerationResultCollection : ObjectModel.ReadOnlyCollection<ModerationResult>, IJsonModel<ModerationResultCollection>, IPersistableModel<ModerationResultCollection> {
2036 public string Id { get; }
2037 public string Model { get; }
2038 public static explicit operator ModerationResultCollection(ClientResult result);
2039 public static implicit operator BinaryContent(ModerationResultCollection moderationResultCollection);
2040 }
2041 public static class OpenAIModerationsModelFactory {
2042 public static ModerationCategory ModerationCategory(bool flagged = false, float score = 0);
2043 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);
2044 [EditorBrowsable(EditorBrowsableState.Never)]
2045 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);
2046 public static ModerationResultCollection ModerationResultCollection(string id = null, string model = null, IEnumerable<ModerationResult> items = null);
2047 }
2048}
2049namespace OpenAI.RealtimeConversation {
2050 public readonly partial struct ConversationAudioFormat : IEquatable<ConversationAudioFormat> {
2051 public ConversationAudioFormat(string value);
2052 public static ConversationAudioFormat G711Alaw { get; }
2053 public static ConversationAudioFormat G711Ulaw { get; }
2054 public static ConversationAudioFormat Pcm16 { get; }
2055 public readonly bool Equals(ConversationAudioFormat other);
2056 [EditorBrowsable(EditorBrowsableState.Never)]
2057 public override readonly bool Equals(object obj);
2058 [EditorBrowsable(EditorBrowsableState.Never)]
2059 public override readonly int GetHashCode();
2060 public static bool operator ==(ConversationAudioFormat left, ConversationAudioFormat right);
2061 public static implicit operator ConversationAudioFormat(string value);
2062 public static bool operator !=(ConversationAudioFormat left, ConversationAudioFormat right);
2063 public override readonly string ToString();
2064 }
2065 [Flags]
2066 public enum ConversationContentModalities {
2067 Default = 0,
2068 Text = 1,
2069 Audio = 2
2070 }
2071 public abstract class ConversationContentPart : IJsonModel<ConversationContentPart>, IPersistableModel<ConversationContentPart> {
2072 public string AudioTranscript { get; }
2073 public string Text { get; }
2074 public static ConversationContentPart CreateInputAudioTranscriptPart(string transcript = null);
2075 public static ConversationContentPart CreateInputTextPart(string text);
2076 public static ConversationContentPart CreateOutputAudioTranscriptPart(string transcript = null);
2077 public static ConversationContentPart CreateOutputTextPart(string text);
2078 public static explicit operator ConversationContentPart(ClientResult result);
2079 public static implicit operator BinaryContent(ConversationContentPart conversationContentPart);
2080 public static implicit operator ConversationContentPart(string text);
2081 }
2082 public readonly partial struct ConversationContentPartKind : IEquatable<ConversationContentPartKind> {
2083 public ConversationContentPartKind(string value);
2084 public static ConversationContentPartKind InputAudio { get; }
2085 public static ConversationContentPartKind InputText { get; }
2086 public static ConversationContentPartKind OutputAudio { get; }
2087 public static ConversationContentPartKind OutputText { get; }
2088 public readonly bool Equals(ConversationContentPartKind other);
2089 [EditorBrowsable(EditorBrowsableState.Never)]
2090 public override readonly bool Equals(object obj);
2091 [EditorBrowsable(EditorBrowsableState.Never)]
2092 public override readonly int GetHashCode();
2093 public static bool operator ==(ConversationContentPartKind left, ConversationContentPartKind right);
2094 public static implicit operator ConversationContentPartKind(string value);
2095 public static bool operator !=(ConversationContentPartKind left, ConversationContentPartKind right);
2096 public override readonly string ToString();
2097 }
2098 public class ConversationErrorUpdate : ConversationUpdate, IJsonModel<ConversationErrorUpdate>, IPersistableModel<ConversationErrorUpdate> {
2099 public string ErrorCode { get; }
2100 public string ErrorEventId { get; }
2101 public string Message { get; }
2102 public string ParameterName { get; }
2103 public new static explicit operator ConversationErrorUpdate(ClientResult result);
2104 public static implicit operator BinaryContent(ConversationErrorUpdate conversationErrorUpdate);
2105 }
2106 public class ConversationFunctionTool : ConversationTool, IJsonModel<ConversationFunctionTool>, IPersistableModel<ConversationFunctionTool> {
2107 public ConversationFunctionTool();
2108 public ConversationFunctionTool(string name);
2109 public string Description { get; set; }
2110 public required string Name { get; set; }
2111 public BinaryData Parameters { get; set; }
2112 public new static explicit operator ConversationFunctionTool(ClientResult result);
2113 public static implicit operator BinaryContent(ConversationFunctionTool conversationFunctionTool);
2114 }
2115 public readonly partial struct ConversationIncompleteReason : IEquatable<ConversationIncompleteReason> {
2116 public ConversationIncompleteReason(string value);
2117 public static ConversationIncompleteReason ClientCancelled { get; }
2118 public static ConversationIncompleteReason ContentFilter { get; }
2119 public static ConversationIncompleteReason MaxOutputTokens { get; }
2120 public static ConversationIncompleteReason TurnDetected { get; }
2121 public readonly bool Equals(ConversationIncompleteReason other);
2122 [EditorBrowsable(EditorBrowsableState.Never)]
2123 public override readonly bool Equals(object obj);
2124 [EditorBrowsable(EditorBrowsableState.Never)]
2125 public override readonly int GetHashCode();
2126 public static bool operator ==(ConversationIncompleteReason left, ConversationIncompleteReason right);
2127 public static implicit operator ConversationIncompleteReason(string value);
2128 public static bool operator !=(ConversationIncompleteReason left, ConversationIncompleteReason right);
2129 public override readonly string ToString();
2130 }
2131 public class ConversationInputAudioClearedUpdate : ConversationUpdate, IJsonModel<ConversationInputAudioClearedUpdate>, IPersistableModel<ConversationInputAudioClearedUpdate> {
2132 public new static explicit operator ConversationInputAudioClearedUpdate(ClientResult result);
2133 public static implicit operator BinaryContent(ConversationInputAudioClearedUpdate conversationInputAudioClearedUpdate);
2134 }
2135 public class ConversationInputAudioCommittedUpdate : ConversationUpdate, IJsonModel<ConversationInputAudioCommittedUpdate>, IPersistableModel<ConversationInputAudioCommittedUpdate> {
2136 public string ItemId { get; }
2137 public string PreviousItemId { get; }
2138 public new static explicit operator ConversationInputAudioCommittedUpdate(ClientResult result);
2139 public static implicit operator BinaryContent(ConversationInputAudioCommittedUpdate conversationInputAudioCommittedUpdate);
2140 }
2141 public class ConversationInputSpeechFinishedUpdate : ConversationUpdate, IJsonModel<ConversationInputSpeechFinishedUpdate>, IPersistableModel<ConversationInputSpeechFinishedUpdate> {
2142 public TimeSpan AudioEndTime { get; }
2143 public string ItemId { get; }
2144 public new static explicit operator ConversationInputSpeechFinishedUpdate(ClientResult result);
2145 public static implicit operator BinaryContent(ConversationInputSpeechFinishedUpdate conversationInputSpeechFinishedUpdate);
2146 }
2147 public class ConversationInputSpeechStartedUpdate : ConversationUpdate, IJsonModel<ConversationInputSpeechStartedUpdate>, IPersistableModel<ConversationInputSpeechStartedUpdate> {
2148 public TimeSpan AudioStartTime { get; }
2149 public string ItemId { get; }
2150 public new static explicit operator ConversationInputSpeechStartedUpdate(ClientResult result);
2151 public static implicit operator BinaryContent(ConversationInputSpeechStartedUpdate conversationInputSpeechStartedUpdate);
2152 }
2153 public class ConversationInputTokenUsageDetails : IJsonModel<ConversationInputTokenUsageDetails>, IPersistableModel<ConversationInputTokenUsageDetails> {
2154 public int AudioTokenCount { get; }
2155 public int CachedTokenCount { get; }
2156 public int TextTokenCount { get; }
2157 public static explicit operator ConversationInputTokenUsageDetails(ClientResult result);
2158 public static implicit operator BinaryContent(ConversationInputTokenUsageDetails conversationInputTokenUsageDetails);
2159 }
2160 public class ConversationInputTranscriptionFailedUpdate : ConversationUpdate, IJsonModel<ConversationInputTranscriptionFailedUpdate>, IPersistableModel<ConversationInputTranscriptionFailedUpdate> {
2161 public int ContentIndex { get; }
2162 public string ErrorCode { get; }
2163 public string ErrorMessage { get; }
2164 public string ErrorParameterName { get; }
2165 public string ItemId { get; }
2166 public new static explicit operator ConversationInputTranscriptionFailedUpdate(ClientResult result);
2167 public static implicit operator BinaryContent(ConversationInputTranscriptionFailedUpdate conversationInputTranscriptionFailedUpdate);
2168 }
2169 public class ConversationInputTranscriptionFinishedUpdate : ConversationUpdate, IJsonModel<ConversationInputTranscriptionFinishedUpdate>, IPersistableModel<ConversationInputTranscriptionFinishedUpdate> {
2170 public int ContentIndex { get; }
2171 public string ItemId { get; }
2172 public string Transcript { get; }
2173 public new static explicit operator ConversationInputTranscriptionFinishedUpdate(ClientResult result);
2174 public static implicit operator BinaryContent(ConversationInputTranscriptionFinishedUpdate conversationInputTranscriptionFinishedUpdate);
2175 }
2176 public class ConversationInputTranscriptionOptions : IJsonModel<ConversationInputTranscriptionOptions>, IPersistableModel<ConversationInputTranscriptionOptions> {
2177 public ConversationTranscriptionModel? Model { get; set; }
2178 public static explicit operator ConversationInputTranscriptionOptions(ClientResult result);
2179 public static implicit operator BinaryContent(ConversationInputTranscriptionOptions conversationInputTranscriptionOptions);
2180 }
2181 public abstract class ConversationItem : IJsonModel<ConversationItem>, IPersistableModel<ConversationItem> {
2182 public string FunctionArguments { get; }
2183 public string FunctionCallId { get; }
2184 public string FunctionName { get; }
2185 public string Id { get; set; }
2186 public IReadOnlyList<ConversationContentPart> MessageContentParts { get; }
2187 public ConversationMessageRole? MessageRole { get; }
2188 public static ConversationItem CreateAssistantMessage(IEnumerable<ConversationContentPart> contentItems);
2189 public static ConversationItem CreateFunctionCall(string name, string callId, string arguments);
2190 public static ConversationItem CreateFunctionCallOutput(string callId, string output);
2191 public static ConversationItem CreateSystemMessage(IEnumerable<ConversationContentPart> contentItems);
2192 public static ConversationItem CreateUserMessage(IEnumerable<ConversationContentPart> contentItems);
2193 public static explicit operator ConversationItem(ClientResult result);
2194 public static implicit operator BinaryContent(ConversationItem conversationItem);
2195 }
2196 public class ConversationItemCreatedUpdate : ConversationUpdate, IJsonModel<ConversationItemCreatedUpdate>, IPersistableModel<ConversationItemCreatedUpdate> {
2197 public string FunctionCallArguments { get; }
2198 public string FunctionCallId { get; }
2199 public string FunctionCallOutput { get; }
2200 public string FunctionName { get; }
2201 public string ItemId { get; }
2202 public IReadOnlyList<ConversationContentPart> MessageContentParts { get; }
2203 public ConversationMessageRole? MessageRole { get; }
2204 public string PreviousItemId { get; }
2205 public new static explicit operator ConversationItemCreatedUpdate(ClientResult result);
2206 public static implicit operator BinaryContent(ConversationItemCreatedUpdate conversationItemCreatedUpdate);
2207 }
2208 public class ConversationItemDeletedUpdate : ConversationUpdate, IJsonModel<ConversationItemDeletedUpdate>, IPersistableModel<ConversationItemDeletedUpdate> {
2209 public string ItemId { get; }
2210 public new static explicit operator ConversationItemDeletedUpdate(ClientResult result);
2211 public static implicit operator BinaryContent(ConversationItemDeletedUpdate conversationItemDeletedUpdate);
2212 }
2213 public readonly partial struct ConversationItemStatus : IEquatable<ConversationItemStatus> {
2214 public ConversationItemStatus(string value);
2215 public static ConversationItemStatus Completed { get; }
2216 public static ConversationItemStatus Incomplete { get; }
2217 public static ConversationItemStatus InProgress { get; }
2218 public readonly bool Equals(ConversationItemStatus other);
2219 [EditorBrowsable(EditorBrowsableState.Never)]
2220 public override readonly bool Equals(object obj);
2221 [EditorBrowsable(EditorBrowsableState.Never)]
2222 public override readonly int GetHashCode();
2223 public static bool operator ==(ConversationItemStatus left, ConversationItemStatus right);
2224 public static implicit operator ConversationItemStatus(string value);
2225 public static bool operator !=(ConversationItemStatus left, ConversationItemStatus right);
2226 public override readonly string ToString();
2227 }
2228 public class ConversationItemStreamingAudioFinishedUpdate : ConversationUpdate, IJsonModel<ConversationItemStreamingAudioFinishedUpdate>, IPersistableModel<ConversationItemStreamingAudioFinishedUpdate> {
2229 public int ContentIndex { get; }
2230 public string ItemId { get; }
2231 public int OutputIndex { get; }
2232 public string ResponseId { get; }
2233 public new static explicit operator ConversationItemStreamingAudioFinishedUpdate(ClientResult result);
2234 public static implicit operator BinaryContent(ConversationItemStreamingAudioFinishedUpdate conversationItemStreamingAudioFinishedUpdate);
2235 }
2236 public class ConversationItemStreamingAudioTranscriptionFinishedUpdate : ConversationUpdate, IJsonModel<ConversationItemStreamingAudioTranscriptionFinishedUpdate>, IPersistableModel<ConversationItemStreamingAudioTranscriptionFinishedUpdate> {
2237 public int ContentIndex { get; }
2238 public string ItemId { get; }
2239 public int OutputIndex { get; }
2240 public string ResponseId { get; }
2241 public string Transcript { get; }
2242 public new static explicit operator ConversationItemStreamingAudioTranscriptionFinishedUpdate(ClientResult result);
2243 public static implicit operator BinaryContent(ConversationItemStreamingAudioTranscriptionFinishedUpdate conversationItemStreamingAudioTranscriptionFinishedUpdate);
2244 }
2245 public class ConversationItemStreamingFinishedUpdate : ConversationUpdate, IJsonModel<ConversationItemStreamingFinishedUpdate>, IPersistableModel<ConversationItemStreamingFinishedUpdate> {
2246 public string FunctionCallArguments { get; }
2247 public string FunctionCallId { get; }
2248 public string FunctionCallOutput { get; }
2249 public string FunctionName { get; }
2250 public string ItemId { get; }
2251 public IReadOnlyList<ConversationContentPart> MessageContentParts { get; }
2252 public ConversationMessageRole? MessageRole { get; }
2253 public int OutputIndex { get; }
2254 public string ResponseId { get; }
2255 public new static explicit operator ConversationItemStreamingFinishedUpdate(ClientResult result);
2256 public static implicit operator BinaryContent(ConversationItemStreamingFinishedUpdate conversationItemStreamingFinishedUpdate);
2257 }
2258 public class ConversationItemStreamingPartDeltaUpdate : ConversationUpdate, IJsonModel<ConversationItemStreamingPartDeltaUpdate>, IPersistableModel<ConversationItemStreamingPartDeltaUpdate> {
2259 public BinaryData AudioBytes { get; }
2260 public string AudioTranscript { get; }
2261 public int ContentPartIndex { get; }
2262 public string FunctionArguments { get; }
2263 public string FunctionCallId { get; }
2264 public string ItemId { get; }
2265 public int ItemIndex { get; }
2266 public string ResponseId { get; }
2267 public string Text { get; }
2268 }
2269 public class ConversationItemStreamingPartFinishedUpdate : ConversationUpdate, IJsonModel<ConversationItemStreamingPartFinishedUpdate>, IPersistableModel<ConversationItemStreamingPartFinishedUpdate> {
2270 public string AudioTranscript { get; }
2271 public int ContentPartIndex { get; }
2272 public string FunctionArguments { get; }
2273 public string FunctionCallId { get; }
2274 public string ItemId { get; }
2275 public int ItemIndex { get; }
2276 public string ResponseId { get; }
2277 public string Text { get; }
2278 }
2279 public class ConversationItemStreamingStartedUpdate : ConversationUpdate, IJsonModel<ConversationItemStreamingStartedUpdate>, IPersistableModel<ConversationItemStreamingStartedUpdate> {
2280 public string FunctionCallArguments { get; }
2281 public string FunctionCallId { get; }
2282 public string FunctionCallOutput { get; }
2283 public string FunctionName { get; }
2284 public string ItemId { get; }
2285 public int ItemIndex { get; }
2286 public IReadOnlyList<ConversationContentPart> MessageContentParts { get; }
2287 public ConversationMessageRole? MessageRole { get; }
2288 public string ResponseId { get; }
2289 public new static explicit operator ConversationItemStreamingStartedUpdate(ClientResult result);
2290 public static implicit operator BinaryContent(ConversationItemStreamingStartedUpdate conversationItemStreamingStartedUpdate);
2291 }
2292 public class ConversationItemStreamingTextFinishedUpdate : ConversationUpdate, IJsonModel<ConversationItemStreamingTextFinishedUpdate>, IPersistableModel<ConversationItemStreamingTextFinishedUpdate> {
2293 public int ContentIndex { get; }
2294 public string ItemId { get; }
2295 public int OutputIndex { get; }
2296 public string ResponseId { get; }
2297 public string Text { get; }
2298 public new static explicit operator ConversationItemStreamingTextFinishedUpdate(ClientResult result);
2299 public static implicit operator BinaryContent(ConversationItemStreamingTextFinishedUpdate conversationItemStreamingTextFinishedUpdate);
2300 }
2301 public class ConversationItemTruncatedUpdate : ConversationUpdate, IJsonModel<ConversationItemTruncatedUpdate>, IPersistableModel<ConversationItemTruncatedUpdate> {
2302 public int AudioEndMs { get; }
2303 public int ContentIndex { get; }
2304 public string ItemId { get; }
2305 public new static explicit operator ConversationItemTruncatedUpdate(ClientResult result);
2306 public static implicit operator BinaryContent(ConversationItemTruncatedUpdate conversationItemTruncatedUpdate);
2307 }
2308 public class ConversationMaxTokensChoice : IJsonModel<ConversationMaxTokensChoice>, IPersistableModel<ConversationMaxTokensChoice> {
2309 public ConversationMaxTokensChoice(int numberValue);
2310 public int? NumericValue { get; }
2311 public static ConversationMaxTokensChoice CreateDefaultMaxTokensChoice();
2312 public static ConversationMaxTokensChoice CreateInfiniteMaxTokensChoice();
2313 public static ConversationMaxTokensChoice CreateNumericMaxTokensChoice(int maxTokens);
2314 public static implicit operator ConversationMaxTokensChoice(int maxTokens);
2315 }
2316 public readonly partial struct ConversationMessageRole : IEquatable<ConversationMessageRole> {
2317 public ConversationMessageRole(string value);
2318 public static ConversationMessageRole Assistant { get; }
2319 public static ConversationMessageRole System { get; }
2320 public static ConversationMessageRole User { get; }
2321 public readonly bool Equals(ConversationMessageRole other);
2322 [EditorBrowsable(global::EditorBrowsableState.Never)]
2323 public override readonly bool Equals(object obj);
2324 [EditorBrowsable(global::EditorBrowsableState.Never)]
2325 public override readonly int GetHashCode();
2326 public static bool operator ==(ConversationMessageRole left, ConversationMessageRole right);
2327 public static implicit operator ConversationMessageRole(string value);
2328 public static bool operator !=(ConversationMessageRole left, ConversationMessageRole right);
2329 public override readonly string ToString();
2330 }
2331 public class ConversationOutputTokenUsageDetails : IJsonModel<ConversationOutputTokenUsageDetails>, IPersistableModel<ConversationOutputTokenUsageDetails> {
2332 public int AudioTokenCount { get; }
2333 public int TextTokenCount { get; }
2334 public static explicit operator ConversationOutputTokenUsageDetails(ClientResult result);
2335 public static implicit operator BinaryContent(ConversationOutputTokenUsageDetails conversationOutputTokenUsageDetails);
2336 }
2337 public class ConversationRateLimitDetailsItem : IJsonModel<ConversationRateLimitDetailsItem>, IPersistableModel<ConversationRateLimitDetailsItem> {
2338 public int MaximumCount { get; }
2339 public string Name { get; }
2340 public int RemainingCount { get; }
2341 public TimeSpan TimeUntilReset { get; }
2342 public static explicit operator ConversationRateLimitDetailsItem(ClientResult result);
2343 public static implicit operator BinaryContent(ConversationRateLimitDetailsItem conversationRateLimitDetailsItem);
2344 }
2345 public class ConversationRateLimitsUpdate : ConversationUpdate, IJsonModel<ConversationRateLimitsUpdate>, IPersistableModel<ConversationRateLimitsUpdate> {
2346 public IReadOnlyList<ConversationRateLimitDetailsItem> AllDetails { get; }
2347 public ConversationRateLimitDetailsItem RequestDetails { get; }
2348 public ConversationRateLimitDetailsItem TokenDetails { get; }
2349 public new static explicit operator ConversationRateLimitsUpdate(ClientResult result);
2350 public static implicit operator BinaryContent(ConversationRateLimitsUpdate conversationRateLimitsUpdate);
2351 }
2352 public class ConversationResponseFinishedUpdate : ConversationUpdate, IJsonModel<ConversationResponseFinishedUpdate>, IPersistableModel<ConversationResponseFinishedUpdate> {
2353 public IReadOnlyList<ConversationItem> CreatedItems { get; }
2354 public string ResponseId { get; }
2355 public ConversationStatus? Status { get; }
2356 public ConversationStatusDetails StatusDetails { get; }
2357 public ConversationTokenUsage Usage { get; }
2358 public new static explicit operator ConversationResponseFinishedUpdate(ClientResult result);
2359 public static implicit operator BinaryContent(ConversationResponseFinishedUpdate conversationResponseFinishedUpdate);
2360 }
2361 public class ConversationResponseOptions : IJsonModel<ConversationResponseOptions>, IPersistableModel<ConversationResponseOptions> {
2362 public ConversationContentModalities ContentModalities { get; set; }
2363 public ResponseConversationSelection? ConversationSelection { get; set; }
2364 public string Instructions { get; set; }
2365 public ConversationMaxTokensChoice MaxOutputTokens { get; set; }
2366 public IDictionary<string, string> Metadata { get; }
2367 public ConversationAudioFormat? OutputAudioFormat { get; set; }
2368 public IList<ConversationItem> OverrideItems { get; }
2369 public float? Temperature { get; set; }
2370 public ConversationToolChoice ToolChoice { get; set; }
2371 public IList<ConversationTool> Tools { get; }
2372 public ConversationVoice? Voice { get; set; }
2373 public static explicit operator ConversationResponseOptions(ClientResult result);
2374 public static implicit operator BinaryContent(ConversationResponseOptions conversationResponseOptions);
2375 }
2376 public class ConversationResponseStartedUpdate : ConversationUpdate, IJsonModel<ConversationResponseStartedUpdate>, IPersistableModel<ConversationResponseStartedUpdate> {
2377 public IReadOnlyList<ConversationItem> CreatedItems { get; }
2378 public string ResponseId { get; }
2379 public ConversationStatus Status { get; }
2380 public ConversationStatusDetails StatusDetails { get; }
2381 public ConversationTokenUsage Usage { get; }
2382 public new static explicit operator ConversationResponseStartedUpdate(ClientResult result);
2383 public static implicit operator BinaryContent(ConversationResponseStartedUpdate conversationResponseStartedUpdate);
2384 }
2385 public class ConversationSessionConfiguredUpdate : ConversationUpdate, IJsonModel<ConversationSessionConfiguredUpdate>, IPersistableModel<ConversationSessionConfiguredUpdate> {
2386 public ConversationContentModalities ContentModalities { get; }
2387 public ConversationAudioFormat InputAudioFormat { get; }
2388 public ConversationInputTranscriptionOptions InputTranscriptionOptions { get; }
2389 public string Instructions { get; }
2390 public ConversationMaxTokensChoice MaxOutputTokens { get; }
2391 public string Model { get; }
2392 public ConversationAudioFormat OutputAudioFormat { get; }
2393 public string SessionId { get; }
2394 public float Temperature { get; }
2395 public ConversationToolChoice ToolChoice { get; }
2396 public IReadOnlyList<ConversationTool> Tools { get; }
2397 public ConversationTurnDetectionOptions TurnDetectionOptions { get; }
2398 public ConversationVoice Voice { get; }
2399 public new static explicit operator ConversationSessionConfiguredUpdate(ClientResult result);
2400 public static implicit operator BinaryContent(ConversationSessionConfiguredUpdate conversationSessionConfiguredUpdate);
2401 }
2402 public class ConversationSessionOptions : IJsonModel<ConversationSessionOptions>, IPersistableModel<ConversationSessionOptions> {
2403 public ConversationContentModalities ContentModalities { get; set; }
2404 public ConversationAudioFormat? InputAudioFormat { get; set; }
2405 public ConversationInputTranscriptionOptions InputTranscriptionOptions { get; set; }
2406 public string Instructions { get; set; }
2407 public ConversationMaxTokensChoice MaxOutputTokens { get; set; }
2408 public ConversationAudioFormat? OutputAudioFormat { get; set; }
2409 public float? Temperature { get; set; }
2410 public ConversationToolChoice ToolChoice { get; set; }
2411 public IList<ConversationTool> Tools { get; }
2412 public ConversationTurnDetectionOptions TurnDetectionOptions { get; set; }
2413 public ConversationVoice? Voice { get; set; }
2414 public static explicit operator ConversationSessionOptions(ClientResult result);
2415 public static implicit operator BinaryContent(ConversationSessionOptions conversationSessionOptions);
2416 }
2417 public class ConversationSessionStartedUpdate : ConversationUpdate, IJsonModel<ConversationSessionStartedUpdate>, IPersistableModel<ConversationSessionStartedUpdate> {
2418 public ConversationContentModalities ContentModalities { get; }
2419 public ConversationAudioFormat InputAudioFormat { get; }
2420 public ConversationInputTranscriptionOptions InputTranscriptionOptions { get; }
2421 public string Instructions { get; }
2422 public ConversationMaxTokensChoice MaxOutputTokens { get; }
2423 public string Model { get; }
2424 public ConversationAudioFormat OutputAudioFormat { get; }
2425 public string SessionId { get; }
2426 public float Temperature { get; }
2427 public ConversationToolChoice ToolChoice { get; }
2428 public IReadOnlyList<ConversationTool> Tools { get; }
2429 public ConversationTurnDetectionOptions TurnDetectionOptions { get; }
2430 public ConversationVoice Voice { get; }
2431 public new static explicit operator ConversationSessionStartedUpdate(ClientResult result);
2432 public static implicit operator BinaryContent(ConversationSessionStartedUpdate conversationSessionStartedUpdate);
2433 }
2434 public readonly partial struct ConversationStatus : IEquatable<ConversationStatus> {
2435 public ConversationStatus(string value);
2436 public static ConversationStatus Cancelled { get; }
2437 public static ConversationStatus Completed { get; }
2438 public static ConversationStatus Failed { get; }
2439 public static ConversationStatus Incomplete { get; }
2440 public readonly bool Equals(ConversationStatus other);
2441 [EditorBrowsable(EditorBrowsableState.Never)]
2442 public override readonly bool Equals(object obj);
2443 [EditorBrowsable(EditorBrowsableState.Never)]
2444 public override readonly int GetHashCode();
2445 public static bool operator ==(ConversationStatus left, ConversationStatus right);
2446 public static implicit operator ConversationStatus(string value);
2447 public static bool operator !=(ConversationStatus left, ConversationStatus right);
2448 public override readonly string ToString();
2449 }
2450 public class ConversationStatusDetails : IJsonModel<ConversationStatusDetails>, IPersistableModel<ConversationStatusDetails> {
2451 public string ErrorCode { get; }
2452 public string ErrorKind { get; }
2453 public ConversationIncompleteReason? IncompleteReason { get; }
2454 public ConversationStatus StatusKind { get; }
2455 public static explicit operator ConversationStatusDetails(ClientResult result);
2456 public static implicit operator BinaryContent(ConversationStatusDetails conversationStatusDetails);
2457 }
2458 public class ConversationTokenUsage : IJsonModel<ConversationTokenUsage>, IPersistableModel<ConversationTokenUsage> {
2459 public int InputTokenCount { get; }
2460 public ConversationInputTokenUsageDetails InputTokenDetails { get; }
2461 public int OutputTokenCount { get; }
2462 public ConversationOutputTokenUsageDetails OutputTokenDetails { get; }
2463 public int TotalTokenCount { get; }
2464 public static explicit operator ConversationTokenUsage(ClientResult result);
2465 public static implicit operator BinaryContent(ConversationTokenUsage conversationTokenUsage);
2466 }
2467 public abstract class ConversationTool : IJsonModel<ConversationTool>, IPersistableModel<ConversationTool> {
2468 public ConversationToolKind Kind { get; }
2469 public static ConversationTool CreateFunctionTool(string name, string description = null, BinaryData parameters = null);
2470 public static explicit operator ConversationTool(ClientResult result);
2471 public static implicit operator BinaryContent(ConversationTool conversationTool);
2472 }
2473 public class ConversationToolChoice : IJsonModel<ConversationToolChoice>, IPersistableModel<ConversationToolChoice> {
2474 public string FunctionName { get; }
2475 public ConversationToolChoiceKind Kind { get; }
2476 public static ConversationToolChoice CreateAutoToolChoice();
2477 public static ConversationToolChoice CreateFunctionToolChoice(string functionName);
2478 public static ConversationToolChoice CreateNoneToolChoice();
2479 public static ConversationToolChoice CreateRequiredToolChoice();
2480 }
2481 public enum ConversationToolChoiceKind {
2482 Unknown = 0,
2483 Auto = 1,
2484 None = 2,
2485 Required = 3,
2486 Function = 4
2487 }
2488 public readonly partial struct ConversationToolKind : IEquatable<ConversationToolKind> {
2489 public ConversationToolKind(string value);
2490 public static ConversationToolKind Function { get; }
2491 public readonly bool Equals(ConversationToolKind other);
2492 [EditorBrowsable(EditorBrowsableState.Never)]
2493 public override readonly bool Equals(object obj);
2494 [EditorBrowsable(EditorBrowsableState.Never)]
2495 public override readonly int GetHashCode();
2496 public static bool operator ==(ConversationToolKind left, ConversationToolKind right);
2497 public static implicit operator ConversationToolKind(string value);
2498 public static bool operator !=(ConversationToolKind left, ConversationToolKind right);
2499 public override readonly string ToString();
2500 }
2501 public readonly partial struct ConversationTranscriptionModel : IEquatable<ConversationTranscriptionModel> {
2502 public ConversationTranscriptionModel(string value);
2503 public static ConversationTranscriptionModel Whisper1 { get; }
2504 public readonly bool Equals(ConversationTranscriptionModel other);
2505 [EditorBrowsable(EditorBrowsableState.Never)]
2506 public override readonly bool Equals(object obj);
2507 [EditorBrowsable(EditorBrowsableState.Never)]
2508 public override readonly int GetHashCode();
2509 public static bool operator ==(ConversationTranscriptionModel left, ConversationTranscriptionModel right);
2510 public static implicit operator ConversationTranscriptionModel(string value);
2511 public static bool operator !=(ConversationTranscriptionModel left, ConversationTranscriptionModel right);
2512 public override readonly string ToString();
2513 }
2514 public enum ConversationTurnDetectionKind {
2515 ServerVoiceActivityDetection = 0,
2516 Disabled = 1
2517 }
2518 public abstract class ConversationTurnDetectionOptions : IJsonModel<ConversationTurnDetectionOptions>, IPersistableModel<ConversationTurnDetectionOptions> {
2519 public ConversationTurnDetectionKind Kind { get; protected internal set; }
2520 public static ConversationTurnDetectionOptions CreateDisabledTurnDetectionOptions();
2521 public static ConversationTurnDetectionOptions CreateServerVoiceActivityTurnDetectionOptions(float? detectionThreshold = null, TimeSpan? prefixPaddingDuration = null, TimeSpan? silenceDuration = null, bool? enableAutomaticResponseCreation = null);
2522 public static explicit operator ConversationTurnDetectionOptions(ClientResult result);
2523 public static implicit operator BinaryContent(ConversationTurnDetectionOptions conversationTurnDetectionOptions);
2524 }
2525 public abstract class ConversationUpdate : IJsonModel<ConversationUpdate>, IPersistableModel<ConversationUpdate> {
2526 public string EventId { get; }
2527 public ConversationUpdateKind Kind { get; protected internal set; }
2528 public BinaryData GetRawContent();
2529 public static explicit operator ConversationUpdate(ClientResult result);
2530 public static implicit operator BinaryContent(ConversationUpdate conversationUpdate);
2531 }
2532 public enum ConversationUpdateKind {
2533 Unknown = 0,
2534 SessionStarted = 1,
2535 SessionConfigured = 2,
2536 ItemCreated = 3,
2537 ConversationCreated = 4,
2538 ItemDeleted = 5,
2539 ItemTruncated = 6,
2540 ResponseStarted = 7,
2541 ResponseFinished = 8,
2542 RateLimitsUpdated = 9,
2543 ItemStreamingStarted = 10,
2544 ItemStreamingFinished = 11,
2545 ItemContentPartStarted = 12,
2546 ItemContentPartFinished = 13,
2547 ItemStreamingPartAudioDelta = 14,
2548 ItemStreamingPartAudioFinished = 15,
2549 ItemStreamingPartAudioTranscriptionDelta = 16,
2550 ItemStreamingPartAudioTranscriptionFinished = 17,
2551 ItemStreamingPartTextDelta = 18,
2552 ItemStreamingPartTextFinished = 19,
2553 ItemStreamingFunctionCallArgumentsDelta = 20,
2554 ItemStreamingFunctionCallArgumentsFinished = 21,
2555 InputSpeechStarted = 22,
2556 InputSpeechStopped = 23,
2557 InputTranscriptionFinished = 24,
2558 InputTranscriptionFailed = 25,
2559 InputAudioCommitted = 26,
2560 InputAudioCleared = 27,
2561 Error = 28
2562 }
2563 public readonly partial struct ConversationVoice : IEquatable<ConversationVoice> {
2564 public ConversationVoice(string value);
2565 public static ConversationVoice Alloy { get; }
2566 public static ConversationVoice Ash { get; }
2567 public static ConversationVoice Ballad { get; }
2568 public static ConversationVoice Coral { get; }
2569 public static ConversationVoice Echo { get; }
2570 public static ConversationVoice Sage { get; }
2571 public static ConversationVoice Shimmer { get; }
2572 public static ConversationVoice Verse { get; }
2573 public readonly bool Equals(ConversationVoice other);
2574 [EditorBrowsable(EditorBrowsableState.Never)]
2575 public override readonly bool Equals(object obj);
2576 [EditorBrowsable(EditorBrowsableState.Never)]
2577 public override readonly int GetHashCode();
2578 public static bool operator ==(ConversationVoice left, ConversationVoice right);
2579 public static implicit operator ConversationVoice(string value);
2580 public static bool operator !=(ConversationVoice left, ConversationVoice right);
2581 public override readonly string ToString();
2582 }
2583 public class RealtimeConversationClient {
2584 protected RealtimeConversationClient();
2585 protected internal RealtimeConversationClient(ClientPipeline pipeline, OpenAIClientOptions options);
2586 public RealtimeConversationClient(string model, ApiKeyCredential credential, OpenAIClientOptions options);
2587 public RealtimeConversationClient(string model, ApiKeyCredential credential);
2588 public ClientPipeline Pipeline { get; }
2589 public event EventHandler<BinaryData> OnReceivingCommand { add; remove; }
2590 public event EventHandler<BinaryData> OnSendingCommand { add; remove; }
2591 public RealtimeConversationSession StartConversationSession(CancellationToken cancellationToken = default);
2592 public virtual Task<RealtimeConversationSession> StartConversationSessionAsync(RequestOptions options);
2593 public virtual Task<RealtimeConversationSession> StartConversationSessionAsync(CancellationToken cancellationToken = default);
2594 }
2595 public class RealtimeConversationSession : IDisposable {
2596 protected internal RealtimeConversationSession(RealtimeConversationClient parentClient, Uri endpoint, ApiKeyCredential credential);
2597 public Net.WebSockets.WebSocket WebSocket { get; protected set; }
2598 public virtual void AddItem(ConversationItem item, string previousItemId, CancellationToken cancellationToken = default);
2599 public virtual void AddItem(ConversationItem item, CancellationToken cancellationToken = default);
2600 public virtual Task AddItemAsync(ConversationItem item, string previousItemId, CancellationToken cancellationToken = default);
2601 public virtual Task AddItemAsync(ConversationItem item, CancellationToken cancellationToken = default);
2602 public virtual void CancelResponse(CancellationToken cancellationToken = default);
2603 public virtual Task CancelResponseAsync(CancellationToken cancellationToken = default);
2604 public virtual void ClearInputAudio(CancellationToken cancellationToken = default);
2605 public virtual Task ClearInputAudioAsync(CancellationToken cancellationToken = default);
2606 public virtual void CommitPendingAudio(CancellationToken cancellationToken = default);
2607 public virtual Task CommitPendingAudioAsync(CancellationToken cancellationToken = default);
2608 public virtual void ConfigureSession(ConversationSessionOptions sessionOptions, CancellationToken cancellationToken = default);
2609 public virtual Task ConfigureSessionAsync(ConversationSessionOptions sessionOptions, CancellationToken cancellationToken = default);
2610 [EditorBrowsable(EditorBrowsableState.Never)]
2611 protected internal virtual void Connect(RequestOptions options);
2612 [EditorBrowsable(EditorBrowsableState.Never)]
2613 protected internal virtual Task ConnectAsync(RequestOptions options);
2614 public virtual void DeleteItem(string itemId, CancellationToken cancellationToken = default);
2615 public virtual Task DeleteItemAsync(string itemId, CancellationToken cancellationToken = default);
2616 public void Dispose();
2617 public virtual void InterruptResponse(CancellationToken cancellationToken = default);
2618 public virtual Task InterruptResponseAsync(CancellationToken cancellationToken = default);
2619 [EditorBrowsable(EditorBrowsableState.Never)]
2620 public virtual IEnumerable<ClientResult> ReceiveUpdates(RequestOptions options);
2621 public virtual IEnumerable<ConversationUpdate> ReceiveUpdates(CancellationToken cancellationToken = default);
2622 [EditorBrowsable(EditorBrowsableState.Never)]
2623 public virtual IAsyncEnumerable<ClientResult> ReceiveUpdatesAsync(RequestOptions options);
2624 public virtual IAsyncEnumerable<ConversationUpdate> ReceiveUpdatesAsync(CancellationToken cancellationToken = default);
2625 [EditorBrowsable(EditorBrowsableState.Never)]
2626 public virtual void SendCommand(BinaryData data, RequestOptions options);
2627 [EditorBrowsable(EditorBrowsableState.Never)]
2628 public virtual Task SendCommandAsync(BinaryData data, RequestOptions options);
2629 public virtual void SendInputAudio(BinaryData audio, CancellationToken cancellationToken = default);
2630 public virtual void SendInputAudio(Stream audio, CancellationToken cancellationToken = default);
2631 public virtual Task SendInputAudioAsync(BinaryData audio, CancellationToken cancellationToken = default);
2632 public virtual Task SendInputAudioAsync(Stream audio, CancellationToken cancellationToken = default);
2633 public virtual void StartResponse(ConversationResponseOptions options, CancellationToken cancellationToken = default);
2634 public void StartResponse(CancellationToken cancellationToken = default);
2635 public virtual Task StartResponseAsync(ConversationResponseOptions options, CancellationToken cancellationToken = default);
2636 public virtual Task StartResponseAsync(CancellationToken cancellationToken = default);
2637 public virtual void TruncateItem(string itemId, int contentPartIndex, TimeSpan audioDuration, CancellationToken cancellationToken = default);
2638 public virtual Task TruncateItemAsync(string itemId, int contentPartIndex, TimeSpan audioDuration, CancellationToken cancellationToken = default);
2639 }
2640 public readonly partial struct ResponseConversationSelection : IEquatable<ResponseConversationSelection> {
2641 public ResponseConversationSelection(string value);
2642 public static ResponseConversationSelection Auto { get; }
2643 public static ResponseConversationSelection None { get; }
2644 public readonly bool Equals(ResponseConversationSelection other);
2645 [EditorBrowsable(EditorBrowsableState.Never)]
2646 public override readonly bool Equals(object obj);
2647 [EditorBrowsable(EditorBrowsableState.Never)]
2648 public override readonly int GetHashCode();
2649 public static bool operator ==(ResponseConversationSelection left, ResponseConversationSelection right);
2650 public static implicit operator ResponseConversationSelection(string value);
2651 public static bool operator !=(ResponseConversationSelection left, ResponseConversationSelection right);
2652 public override readonly string ToString();
2653 }
2654}
2655namespace OpenAI.VectorStores {
2656 public class AddFileToVectorStoreOperation : OperationResult {
2657 public string FileId { get; }
2658 public override ContinuationToken? RehydrationToken { get; protected set; }
2659 public VectorStoreFileAssociationStatus? Status { get; }
2660 public VectorStoreFileAssociation? Value { get; }
2661 public string VectorStoreId { get; }
2662 [EditorBrowsable(EditorBrowsableState.Never)]
2663 public virtual ClientResult GetFileAssociation(RequestOptions? options);
2664 public virtual ClientResult<VectorStoreFileAssociation> GetFileAssociation(CancellationToken cancellationToken = default);
2665 [EditorBrowsable(EditorBrowsableState.Never)]
2666 public virtual Task<ClientResult> GetFileAssociationAsync(RequestOptions? options);
2667 public virtual Task<ClientResult<VectorStoreFileAssociation>> GetFileAssociationAsync(CancellationToken cancellationToken = default);
2668 public static AddFileToVectorStoreOperation Rehydrate(VectorStoreClient client, ContinuationToken rehydrationToken, CancellationToken cancellationToken = default);
2669 public static Task<AddFileToVectorStoreOperation> RehydrateAsync(VectorStoreClient client, ContinuationToken rehydrationToken, CancellationToken cancellationToken = default);
2670 public override ClientResult UpdateStatus(RequestOptions? options = null);
2671 public override ValueTask<ClientResult> UpdateStatusAsync(RequestOptions? options = null);
2672 }
2673 public class CreateBatchFileJobOperation : OperationResult {
2674 public string BatchId { get; }
2675 public override ContinuationToken? RehydrationToken { get; protected set; }
2676 public VectorStoreBatchFileJobStatus? Status { get; }
2677 public VectorStoreBatchFileJob? Value { get; }
2678 public string VectorStoreId { get; }
2679 [EditorBrowsable(EditorBrowsableState.Never)]
2680 public virtual ClientResult Cancel(RequestOptions? options);
2681 public virtual ClientResult<VectorStoreBatchFileJob> Cancel(CancellationToken cancellationToken = default);
2682 [EditorBrowsable(EditorBrowsableState.Never)]
2683 public virtual Task<ClientResult> CancelAsync(RequestOptions? options);
2684 public virtual Task<ClientResult<VectorStoreBatchFileJob>> CancelAsync(CancellationToken cancellationToken = default);
2685 [EditorBrowsable(EditorBrowsableState.Never)]
2686 public virtual ClientResult GetFileBatch(RequestOptions? options);
2687 public virtual ClientResult<VectorStoreBatchFileJob> GetFileBatch(CancellationToken cancellationToken = default);
2688 [EditorBrowsable(EditorBrowsableState.Never)]
2689 public virtual Task<ClientResult> GetFileBatchAsync(RequestOptions? options);
2690 public virtual Task<ClientResult<VectorStoreBatchFileJob>> GetFileBatchAsync(CancellationToken cancellationToken = default);
2691 public static CreateBatchFileJobOperation Rehydrate(VectorStoreClient client, ContinuationToken rehydrationToken, CancellationToken cancellationToken = default);
2692 public static Task<CreateBatchFileJobOperation> RehydrateAsync(VectorStoreClient client, ContinuationToken rehydrationToken, CancellationToken cancellationToken = default);
2693 public override ClientResult UpdateStatus(RequestOptions? options = null);
2694 public override ValueTask<ClientResult> UpdateStatusAsync(RequestOptions? options = null);
2695 }
2696 public class CreateVectorStoreOperation : OperationResult {
2697 public override ContinuationToken? RehydrationToken { get; protected set; }
2698 public VectorStoreStatus? Status { get; }
2699 public VectorStore? Value { get; }
2700 public string VectorStoreId { get; }
2701 [EditorBrowsable(EditorBrowsableState.Never)]
2702 public virtual ClientResult GetVectorStore(RequestOptions? options);
2703 public virtual ClientResult<VectorStore> GetVectorStore(CancellationToken cancellationToken = default);
2704 [EditorBrowsable(EditorBrowsableState.Never)]
2705 public virtual Task<ClientResult> GetVectorStoreAsync(RequestOptions? options);
2706 public virtual Task<ClientResult<VectorStore>> GetVectorStoreAsync(CancellationToken cancellationToken = default);
2707 public static CreateVectorStoreOperation Rehydrate(VectorStoreClient client, ContinuationToken rehydrationToken, CancellationToken cancellationToken = default);
2708 public static Task<CreateVectorStoreOperation> RehydrateAsync(VectorStoreClient client, ContinuationToken rehydrationToken, CancellationToken cancellationToken = default);
2709 public override ClientResult UpdateStatus(RequestOptions? options = null);
2710 public override ValueTask<ClientResult> UpdateStatusAsync(RequestOptions? options = null);
2711 }
2712 public abstract class FileChunkingStrategy : IJsonModel<FileChunkingStrategy>, IPersistableModel<FileChunkingStrategy> {
2713 public static FileChunkingStrategy Auto { get; }
2714 public static FileChunkingStrategy Unknown { get; }
2715 public static FileChunkingStrategy CreateStaticStrategy(int maxTokensPerChunk, int overlappingTokenCount);
2716 public static explicit operator FileChunkingStrategy(ClientResult result);
2717 public static implicit operator BinaryContent(FileChunkingStrategy fileChunkingStrategy);
2718 }
2719 public class FileFromStoreRemovalResult : IJsonModel<FileFromStoreRemovalResult>, IPersistableModel<FileFromStoreRemovalResult> {
2720 public string FileId { get; }
2721 public bool Removed { get; }
2722 public static explicit operator FileFromStoreRemovalResult(ClientResult result);
2723 public static implicit operator BinaryContent(FileFromStoreRemovalResult fileFromStoreRemovalResult);
2724 }
2725 public class StaticFileChunkingStrategy : FileChunkingStrategy, IJsonModel<StaticFileChunkingStrategy>, IPersistableModel<StaticFileChunkingStrategy> {
2726 public StaticFileChunkingStrategy(int maxTokensPerChunk, int overlappingTokenCount);
2727 public int MaxTokensPerChunk { get; }
2728 public int OverlappingTokenCount { get; }
2729 public new static explicit operator StaticFileChunkingStrategy(ClientResult result);
2730 public static implicit operator BinaryContent(StaticFileChunkingStrategy staticFileChunkingStrategy);
2731 }
2732 public class VectorStore : IJsonModel<VectorStore>, IPersistableModel<VectorStore> {
2733 public DateTimeOffset CreatedAt { get; }
2734 public VectorStoreExpirationPolicy ExpirationPolicy { get; }
2735 public DateTimeOffset? ExpiresAt { get; }
2736 public VectorStoreFileCounts FileCounts { get; }
2737 public string Id { get; }
2738 public DateTimeOffset? LastActiveAt { get; }
2739 public IReadOnlyDictionary<string, string> Metadata { get; }
2740 public string Name { get; }
2741 public VectorStoreStatus Status { get; }
2742 public int UsageBytes { get; }
2743 public static explicit operator VectorStore(ClientResult result);
2744 public static implicit operator BinaryContent(VectorStore vectorStore);
2745 }
2746 public class VectorStoreBatchFileJob : IJsonModel<VectorStoreBatchFileJob>, IPersistableModel<VectorStoreBatchFileJob> {
2747 public string BatchId { get; }
2748 public DateTimeOffset CreatedAt { get; }
2749 public VectorStoreFileCounts FileCounts { get; }
2750 public VectorStoreBatchFileJobStatus Status { get; }
2751 public string VectorStoreId { get; }
2752 public static explicit operator VectorStoreBatchFileJob(ClientResult result);
2753 public static implicit operator BinaryContent(VectorStoreBatchFileJob vectorStoreBatchFileJob);
2754 }
2755 public readonly partial struct VectorStoreBatchFileJobStatus : IEquatable<VectorStoreBatchFileJobStatus> {
2756 public VectorStoreBatchFileJobStatus(string value);
2757 public static VectorStoreBatchFileJobStatus Cancelled { get; }
2758 public static VectorStoreBatchFileJobStatus Completed { get; }
2759 public static VectorStoreBatchFileJobStatus Failed { get; }
2760 public static VectorStoreBatchFileJobStatus InProgress { get; }
2761 public readonly bool Equals(VectorStoreBatchFileJobStatus other);
2762 [EditorBrowsable(EditorBrowsableState.Never)]
2763 public override readonly bool Equals(object obj);
2764 [EditorBrowsable(EditorBrowsableState.Never)]
2765 public override readonly int GetHashCode();
2766 public static bool operator ==(VectorStoreBatchFileJobStatus left, VectorStoreBatchFileJobStatus right);
2767 public static implicit operator VectorStoreBatchFileJobStatus(string value);
2768 public static bool operator !=(VectorStoreBatchFileJobStatus left, VectorStoreBatchFileJobStatus right);
2769 public override readonly string ToString();
2770 }
2771 public class VectorStoreClient {
2772 protected VectorStoreClient();
2773 public VectorStoreClient(ApiKeyCredential credential, OpenAIClientOptions options);
2774 public VectorStoreClient(ApiKeyCredential credential);
2775 protected internal VectorStoreClient(ClientPipeline pipeline, OpenAIClientOptions options);
2776 public VectorStoreClient(string apiKey);
2777 public ClientPipeline Pipeline { get; }
2778 [EditorBrowsable(EditorBrowsableState.Never)]
2779 public virtual AddFileToVectorStoreOperation AddFileToVectorStore(string vectorStoreId, BinaryContent content, bool waitUntilCompleted, RequestOptions options = null);
2780 public virtual AddFileToVectorStoreOperation AddFileToVectorStore(string vectorStoreId, string fileId, bool waitUntilCompleted, CancellationToken cancellationToken = default);
2781 [EditorBrowsable(EditorBrowsableState.Never)]
2782 public virtual Task<AddFileToVectorStoreOperation> AddFileToVectorStoreAsync(string vectorStoreId, BinaryContent content, bool waitUntilCompleted, RequestOptions options = null);
2783 public virtual Task<AddFileToVectorStoreOperation> AddFileToVectorStoreAsync(string vectorStoreId, string fileId, bool waitUntilCompleted, CancellationToken cancellationToken = default);
2784 [EditorBrowsable(EditorBrowsableState.Never)]
2785 public virtual ClientResult CancelBatchFileJob(string vectorStoreId, string batchId, RequestOptions options);
2786 public virtual ClientResult<VectorStoreBatchFileJob> CancelBatchFileJob(string vectorStoreId, string batchJobId, CancellationToken cancellationToken = default);
2787 [EditorBrowsable(EditorBrowsableState.Never)]
2788 public virtual Task<ClientResult> CancelBatchFileJobAsync(string vectorStoreId, string batchId, RequestOptions options);
2789 public virtual Task<ClientResult<VectorStoreBatchFileJob>> CancelBatchFileJobAsync(string vectorStoreId, string batchJobId, CancellationToken cancellationToken = default);
2790 [EditorBrowsable(EditorBrowsableState.Never)]
2791 public virtual CreateBatchFileJobOperation CreateBatchFileJob(string vectorStoreId, BinaryContent content, bool waitUntilCompleted, RequestOptions options = null);
2792 public virtual CreateBatchFileJobOperation CreateBatchFileJob(string vectorStoreId, IEnumerable<string> fileIds, bool waitUntilCompleted, CancellationToken cancellationToken = default);
2793 [EditorBrowsable(EditorBrowsableState.Never)]
2794 public virtual Task<CreateBatchFileJobOperation> CreateBatchFileJobAsync(string vectorStoreId, BinaryContent content, bool waitUntilCompleted, RequestOptions options = null);
2795 public virtual Task<CreateBatchFileJobOperation> CreateBatchFileJobAsync(string vectorStoreId, IEnumerable<string> fileIds, bool waitUntilCompleted, CancellationToken cancellationToken = default);
2796 public virtual CreateVectorStoreOperation CreateVectorStore(bool waitUntilCompleted, VectorStoreCreationOptions vectorStore = null, CancellationToken cancellationToken = default);
2797 [EditorBrowsable(EditorBrowsableState.Never)]
2798 public virtual CreateVectorStoreOperation CreateVectorStore(BinaryContent content, bool waitUntilCompleted, RequestOptions options = null);
2799 public virtual ClientResult CreateVectorStore(BinaryContent content, RequestOptions options = null);
2800 public virtual Task<CreateVectorStoreOperation> CreateVectorStoreAsync(bool waitUntilCompleted, VectorStoreCreationOptions vectorStore = null, CancellationToken cancellationToken = default);
2801 [EditorBrowsable(EditorBrowsableState.Never)]
2802 public virtual Task<CreateVectorStoreOperation> CreateVectorStoreAsync(BinaryContent content, bool waitUntilCompleted, RequestOptions options = null);
2803 public virtual Task<ClientResult> CreateVectorStoreAsync(BinaryContent content, RequestOptions options = null);
2804 [EditorBrowsable(EditorBrowsableState.Never)]
2805 public virtual ClientResult DeleteVectorStore(string vectorStoreId, RequestOptions options);
2806 public virtual ClientResult<VectorStoreDeletionResult> DeleteVectorStore(string vectorStoreId, CancellationToken cancellationToken = default);
2807 [EditorBrowsable(EditorBrowsableState.Never)]
2808 public virtual Task<ClientResult> DeleteVectorStoreAsync(string vectorStoreId, RequestOptions options);
2809 public virtual Task<ClientResult<VectorStoreDeletionResult>> DeleteVectorStoreAsync(string vectorStoreId, CancellationToken cancellationToken = default);
2810 public virtual ClientResult<VectorStoreBatchFileJob> GetBatchFileJob(string vectorStoreId, string batchJobId, CancellationToken cancellationToken = default);
2811 public virtual Task<ClientResult<VectorStoreBatchFileJob>> GetBatchFileJobAsync(string vectorStoreId, string batchJobId, CancellationToken cancellationToken = default);
2812 [EditorBrowsable(EditorBrowsableState.Never)]
2813 public virtual ClientResult GetFileAssociation(string vectorStoreId, string fileId, RequestOptions options);
2814 public virtual ClientResult<VectorStoreFileAssociation> GetFileAssociation(string vectorStoreId, string fileId, CancellationToken cancellationToken = default);
2815 [EditorBrowsable(EditorBrowsableState.Never)]
2816 public virtual Task<ClientResult> GetFileAssociationAsync(string vectorStoreId, string fileId, RequestOptions options);
2817 public virtual Task<ClientResult<VectorStoreFileAssociation>> GetFileAssociationAsync(string vectorStoreId, string fileId, CancellationToken cancellationToken = default);
2818 public virtual CollectionResult<VectorStoreFileAssociation> GetFileAssociations(ContinuationToken firstPageToken, CancellationToken cancellationToken = default);
2819 public virtual CollectionResult<VectorStoreFileAssociation> GetFileAssociations(string vectorStoreId, VectorStoreFileAssociationCollectionOptions options = null, CancellationToken cancellationToken = default);
2820 [EditorBrowsable(EditorBrowsableState.Never)]
2821 public virtual CollectionResult GetFileAssociations(string vectorStoreId, int? limit, string order, string after, string before, string filter, RequestOptions options);
2822 public virtual CollectionResult<VectorStoreFileAssociation> GetFileAssociations(string vectorStoreId, string batchJobId, VectorStoreFileAssociationCollectionOptions options = null, CancellationToken cancellationToken = default);
2823 public virtual CollectionResult<VectorStoreFileAssociation> GetFileAssociations(string vectorStoreId, string batchJobId, ContinuationToken firstPageToken, CancellationToken cancellationToken = default);
2824 [EditorBrowsable(EditorBrowsableState.Never)]
2825 public virtual CollectionResult GetFileAssociations(string vectorStoreId, string batchId, int? limit, string order, string after, string before, string filter, RequestOptions options);
2826 public virtual AsyncCollectionResult<VectorStoreFileAssociation> GetFileAssociationsAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = default);
2827 public virtual AsyncCollectionResult<VectorStoreFileAssociation> GetFileAssociationsAsync(string vectorStoreId, VectorStoreFileAssociationCollectionOptions options = null, CancellationToken cancellationToken = default);
2828 [EditorBrowsable(EditorBrowsableState.Never)]
2829 public virtual AsyncCollectionResult GetFileAssociationsAsync(string vectorStoreId, int? limit, string order, string after, string before, string filter, RequestOptions options);
2830 public virtual AsyncCollectionResult<VectorStoreFileAssociation> GetFileAssociationsAsync(string vectorStoreId, string batchJobId, VectorStoreFileAssociationCollectionOptions options = null, CancellationToken cancellationToken = default);
2831 public virtual AsyncCollectionResult<VectorStoreFileAssociation> GetFileAssociationsAsync(string vectorStoreId, string batchJobId, ContinuationToken firstPageToken, CancellationToken cancellationToken = default);
2832 [EditorBrowsable(EditorBrowsableState.Never)]
2833 public virtual AsyncCollectionResult GetFileAssociationsAsync(string vectorStoreId, string batchId, int? limit, string order, string after, string before, string filter, RequestOptions options);
2834 public virtual ClientResult<VectorStore> GetVectorStore(string vectorStoreId, CancellationToken cancellationToken = default);
2835 public virtual CollectionResult<VectorStore> GetVectorStores(VectorStoreCollectionOptions options = null, CancellationToken cancellationToken = default);
2836 public virtual CollectionResult<VectorStore> GetVectorStores(ContinuationToken firstPageToken, CancellationToken cancellationToken = default);
2837 [EditorBrowsable(EditorBrowsableState.Never)]
2838 public virtual CollectionResult GetVectorStores(int? limit, string order, string after, string before, RequestOptions options);
2839 public virtual AsyncCollectionResult<VectorStore> GetVectorStoresAsync(VectorStoreCollectionOptions options = null, CancellationToken cancellationToken = default);
2840 public virtual AsyncCollectionResult<VectorStore> GetVectorStoresAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = default);
2841 [EditorBrowsable(EditorBrowsableState.Never)]
2842 public virtual AsyncCollectionResult GetVectorStoresAsync(int? limit, string order, string after, string before, RequestOptions options);
2843 public virtual ClientResult<VectorStore> ModifyVectorStore(string vectorStoreId, VectorStoreModificationOptions vectorStore, CancellationToken cancellationToken = default);
2844 [EditorBrowsable(EditorBrowsableState.Never)]
2845 public virtual ClientResult ModifyVectorStore(string vectorStoreId, BinaryContent content, RequestOptions options = null);
2846 public virtual Task<ClientResult<VectorStore>> ModifyVectorStoreAsync(string vectorStoreId, VectorStoreModificationOptions vectorStore, CancellationToken cancellationToken = default);
2847 [EditorBrowsable(EditorBrowsableState.Never)]
2848 public virtual Task<ClientResult> ModifyVectorStoreAsync(string vectorStoreId, BinaryContent content, RequestOptions options = null);
2849 [EditorBrowsable(EditorBrowsableState.Never)]
2850 public virtual ClientResult RemoveFileFromStore(string vectorStoreId, string fileId, RequestOptions options);
2851 public virtual ClientResult<FileFromStoreRemovalResult> RemoveFileFromStore(string vectorStoreId, string fileId, CancellationToken cancellationToken = default);
2852 [EditorBrowsable(EditorBrowsableState.Never)]
2853 public virtual Task<ClientResult> RemoveFileFromStoreAsync(string vectorStoreId, string fileId, RequestOptions options);
2854 public virtual Task<ClientResult<FileFromStoreRemovalResult>> RemoveFileFromStoreAsync(string vectorStoreId, string fileId, CancellationToken cancellationToken = default);
2855 }
2856 public class VectorStoreCollectionOptions {
2857 public string AfterId { get; set; }
2858 public string BeforeId { get; set; }
2859 public VectorStoreCollectionOrder? Order { get; set; }
2860 public int? PageSizeLimit { get; set; }
2861 }
2862 public readonly partial struct VectorStoreCollectionOrder : IEquatable<VectorStoreCollectionOrder> {
2863 public VectorStoreCollectionOrder(string value);
2864 public static VectorStoreCollectionOrder Ascending { get; }
2865 public static VectorStoreCollectionOrder Descending { get; }
2866 public readonly bool Equals(VectorStoreCollectionOrder other);
2867 [EditorBrowsable(EditorBrowsableState.Never)]
2868 public override readonly bool Equals(object obj);
2869 [EditorBrowsable(EditorBrowsableState.Never)]
2870 public override readonly int GetHashCode();
2871 public static bool operator ==(VectorStoreCollectionOrder left, VectorStoreCollectionOrder right);
2872 public static implicit operator VectorStoreCollectionOrder(string value);
2873 public static bool operator !=(VectorStoreCollectionOrder left, VectorStoreCollectionOrder right);
2874 public override readonly string ToString();
2875 }
2876 public class VectorStoreCreationOptions : IJsonModel<VectorStoreCreationOptions>, IPersistableModel<VectorStoreCreationOptions> {
2877 public FileChunkingStrategy ChunkingStrategy { get; set; }
2878 public VectorStoreExpirationPolicy ExpirationPolicy { get; set; }
2879 public IList<string> FileIds { get; }
2880 public IDictionary<string, string> Metadata { get; }
2881 public string Name { get; set; }
2882 public static explicit operator VectorStoreCreationOptions(ClientResult result);
2883 public static implicit operator BinaryContent(VectorStoreCreationOptions vectorStoreCreationOptions);
2884 }
2885 public class VectorStoreDeletionResult : IJsonModel<VectorStoreDeletionResult>, IPersistableModel<VectorStoreDeletionResult> {
2886 public bool Deleted { get; }
2887 public string VectorStoreId { get; }
2888 public static explicit operator VectorStoreDeletionResult(ClientResult result);
2889 public static implicit operator BinaryContent(VectorStoreDeletionResult vectorStoreDeletionResult);
2890 }
2891 public enum VectorStoreExpirationAnchor {
2892 Unknown = 0,
2893 LastActiveAt = 1
2894 }
2895 public class VectorStoreExpirationPolicy : IJsonModel<VectorStoreExpirationPolicy>, IPersistableModel<VectorStoreExpirationPolicy> {
2896 public VectorStoreExpirationPolicy();
2897 public VectorStoreExpirationPolicy(VectorStoreExpirationAnchor anchor, int days);
2898 public required VectorStoreExpirationAnchor Anchor { get; set; }
2899 public required int Days { get; set; }
2900 public static explicit operator VectorStoreExpirationPolicy(ClientResult result);
2901 public static implicit operator BinaryContent(VectorStoreExpirationPolicy vectorStoreExpirationPolicy);
2902 }
2903 public class VectorStoreFileAssociation : IJsonModel<VectorStoreFileAssociation>, IPersistableModel<VectorStoreFileAssociation> {
2904 public FileChunkingStrategy ChunkingStrategy { get; }
2905 public DateTimeOffset CreatedAt { get; }
2906 public string FileId { get; }
2907 public VectorStoreFileAssociationError LastError { get; }
2908 public int Size { get; }
2909 public VectorStoreFileAssociationStatus Status { get; }
2910 public string VectorStoreId { get; }
2911 public static explicit operator VectorStoreFileAssociation(ClientResult result);
2912 public static implicit operator BinaryContent(VectorStoreFileAssociation vectorStoreFileAssociation);
2913 }
2914 public class VectorStoreFileAssociationCollectionOptions {
2915 public string AfterId { get; set; }
2916 public string BeforeId { get; set; }
2917 public VectorStoreFileStatusFilter? Filter { get; set; }
2918 public VectorStoreFileAssociationCollectionOrder? Order { get; set; }
2919 public int? PageSizeLimit { get; set; }
2920 }
2921 public readonly partial struct VectorStoreFileAssociationCollectionOrder : IEquatable<VectorStoreFileAssociationCollectionOrder> {
2922 public VectorStoreFileAssociationCollectionOrder(string value);
2923 public static VectorStoreFileAssociationCollectionOrder Ascending { get; }
2924 public static VectorStoreFileAssociationCollectionOrder Descending { get; }
2925 public readonly bool Equals(VectorStoreFileAssociationCollectionOrder other);
2926 [EditorBrowsable(EditorBrowsableState.Never)]
2927 public override readonly bool Equals(object obj);
2928 [EditorBrowsable(EditorBrowsableState.Never)]
2929 public override readonly int GetHashCode();
2930 public static bool operator ==(VectorStoreFileAssociationCollectionOrder left, VectorStoreFileAssociationCollectionOrder right);
2931 public static implicit operator VectorStoreFileAssociationCollectionOrder(string value);
2932 public static bool operator !=(VectorStoreFileAssociationCollectionOrder left, VectorStoreFileAssociationCollectionOrder right);
2933 public override readonly string ToString();
2934 }
2935 public class VectorStoreFileAssociationError : IJsonModel<VectorStoreFileAssociationError>, IPersistableModel<VectorStoreFileAssociationError> {
2936 public VectorStoreFileAssociationErrorCode Code { get; }
2937 public string Message { get; }
2938 public static explicit operator VectorStoreFileAssociationError(ClientResult result);
2939 public static implicit operator BinaryContent(VectorStoreFileAssociationError vectorStoreFileAssociationError);
2940 }
2941 public readonly partial struct VectorStoreFileAssociationErrorCode : IEquatable<VectorStoreFileAssociationErrorCode> {
2942 public VectorStoreFileAssociationErrorCode(string value);
2943 public static VectorStoreFileAssociationErrorCode InvalidFile { get; }
2944 public static VectorStoreFileAssociationErrorCode ServerError { get; }
2945 public static VectorStoreFileAssociationErrorCode UnsupportedFile { get; }
2946 public readonly bool Equals(VectorStoreFileAssociationErrorCode other);
2947 [EditorBrowsable(EditorBrowsableState.Never)]
2948 public override readonly bool Equals(object obj);
2949 [EditorBrowsable(EditorBrowsableState.Never)]
2950 public override readonly int GetHashCode();
2951 public static bool operator ==(VectorStoreFileAssociationErrorCode left, VectorStoreFileAssociationErrorCode right);
2952 public static implicit operator VectorStoreFileAssociationErrorCode(string value);
2953 public static bool operator !=(VectorStoreFileAssociationErrorCode left, VectorStoreFileAssociationErrorCode right);
2954 public override readonly string ToString();
2955 }
2956 public enum VectorStoreFileAssociationStatus {
2957 Unknown = 0,
2958 InProgress = 1,
2959 Completed = 2,
2960 Cancelled = 3,
2961 Failed = 4
2962 }
2963 public class VectorStoreFileCounts : IJsonModel<VectorStoreFileCounts>, IPersistableModel<VectorStoreFileCounts> {
2964 public int Cancelled { get; }
2965 public int Completed { get; }
2966 public int Failed { get; }
2967 public int InProgress { get; }
2968 public int Total { get; }
2969 public static explicit operator VectorStoreFileCounts(ClientResult result);
2970 public static implicit operator BinaryContent(VectorStoreFileCounts vectorStoreFileCounts);
2971 }
2972 public readonly partial struct VectorStoreFileStatusFilter : IEquatable<VectorStoreFileStatusFilter> {
2973 public VectorStoreFileStatusFilter(string value);
2974 public static VectorStoreFileStatusFilter Cancelled { get; }
2975 public static VectorStoreFileStatusFilter Completed { get; }
2976 public static VectorStoreFileStatusFilter Failed { get; }
2977 public static VectorStoreFileStatusFilter InProgress { get; }
2978 public readonly bool Equals(VectorStoreFileStatusFilter other);
2979 [EditorBrowsable(EditorBrowsableState.Never)]
2980 public override readonly bool Equals(object obj);
2981 [EditorBrowsable(EditorBrowsableState.Never)]
2982 public override readonly int GetHashCode();
2983 public static bool operator ==(VectorStoreFileStatusFilter left, VectorStoreFileStatusFilter right);
2984 public static implicit operator VectorStoreFileStatusFilter(string value);
2985 public static bool operator !=(VectorStoreFileStatusFilter left, VectorStoreFileStatusFilter right);
2986 public override readonly string ToString();
2987 }
2988 public class VectorStoreModificationOptions : IJsonModel<VectorStoreModificationOptions>, IPersistableModel<VectorStoreModificationOptions> {
2989 public VectorStoreExpirationPolicy ExpirationPolicy { get; set; }
2990 public IDictionary<string, string> Metadata { get; }
2991 public string Name { get; set; }
2992 public static explicit operator VectorStoreModificationOptions(ClientResult result);
2993 public static implicit operator BinaryContent(VectorStoreModificationOptions vectorStoreModificationOptions);
2994 }
2995 public enum VectorStoreStatus {
2996 Unknown = 0,
2997 InProgress = 1,
2998 Completed = 2,
2999 Expired = 3
3000 }
3001}