From 07b4c0445837cb1e22ef933177ab6156cf6bc3a1 Mon Sep 17 00:00:00 2001 From: Travis Wilson Date: Thu, 25 Jul 2024 15:12:12 -0700 Subject: [PATCH 1/7] Generate-Api script (using private ported tool) --- .dotnet/api/api.md | 1373 +++++++++++++++++++------------------ .scripts/Generate-Api.ps1 | 41 ++ 2 files changed, 754 insertions(+), 660 deletions(-) create mode 100644 .scripts/Generate-Api.ps1 diff --git a/.dotnet/api/api.md b/.dotnet/api/api.md index de4ad415e..72189bdd6 100644 --- a/.dotnet/api/api.md +++ b/.dotnet/api/api.md @@ -1,189 +1,216 @@ ```csharp namespace OpenAI { - public class OpenAIClient { - public OpenAIClient(ApiKeyCredential credential, OpenAIClientOptions options = null); - public OpenAIClient(OpenAIClientOptions options = null); - protected OpenAIClient(ClientPipeline pipeline, Uri endpoint, OpenAIClientOptions options); - protected OpenAIClient(); - public virtual ClientPipeline Pipeline { get; } - protected Uri Endpoint { get; } - internal [Experimental("OPENAI001")] - public virtual AssistantClient GetAssistantClient(); - public virtual AudioClient GetAudioClient(string model); - public virtual BatchClient GetBatchClient(); - public virtual ChatClient GetChatClient(string model); - public virtual EmbeddingClient GetEmbeddingClient(string model); - public virtual FileClient GetFileClient(); - public virtual FineTuningClient GetFineTuningClient(); - public virtual ImageClient GetImageClient(string model); - public virtual ModelClient GetModelClient(); - public virtual ModerationClient GetModerationClient(string model); - internal [Experimental("OPENAI001")] - public virtual VectorStoreClient GetVectorStoreClient(); - } - public class OpenAIClientOptions : ClientPipelineOptions { - public OpenAIClientOptions(); - public string ApplicationId { get; init; } - public Uri Endpoint { get; init; } - } - public readonly struct ListOrder : IEquatable { + public sealed class ListOrder { public ListOrder(string value); public static ListOrder NewestFirst { get; } public static ListOrder OldestFirst { get; } - public static bool operator ==(ListOrder left, ListOrder right); - public static implicit operator ListOrder(string value); - public static bool operator !=(ListOrder left, ListOrder right); public bool Equals(ListOrder other); public override bool Equals(object obj); public override int GetHashCode(); + public static bool operator ==(ListOrder left, ListOrder right); + public static implicit operator ListOrder(string value); + public static bool operator !=(ListOrder left, ListOrder right); public override string ToString(); } + public class OpenAIClient { + protected OpenAIClient(); + public OpenAIClient(OpenAIClientOptions options = null); + public OpenAIClient(ApiKeyCredential credential, OpenAIClientOptions options = null); + protected OpenAIClient(ClientPipeline pipeline, Uri endpoint, OpenAIClientOptions options); + protected Uri Endpoint { get; } + public virtual ClientPipeline Pipeline { get; } + public AssistantClient GetAssistantClient(); + public AudioClient GetAudioClient(string model); + public BatchClient GetBatchClient(); + public ChatClient GetChatClient(string model); + public EmbeddingClient GetEmbeddingClient(string model); + public FileClient GetFileClient(); + public FineTuningClient GetFineTuningClient(); + public ImageClient GetImageClient(string model); + public ModelClient GetModelClient(); + public ModerationClient GetModerationClient(string model); + public VectorStoreClient GetVectorStoreClient(); + } + public class OpenAIClientOptions { + public OpenAIClientOptions(); + public string ApplicationId { get; init; } + public Uri Endpoint { get; init; } + public string OrganizationId { get; init; } + public string ProjectId { get; init; } + } } namespace OpenAI.Assistants { - internal [Experimental("OPENAI001")] + public class Assistant { + public DateTimeOffset CreatedAt { get; } + public string Description { get; } + public string Id { get; } + public string Instructions { get; } + public IReadOnlyDictionary Metadata { get; } + public string Model { get; } + public string Name { get; } + public float? NucleusSamplingFactor { get; } + public AssistantResponseFormat ResponseFormat { get; } + public float? Temperature { get; } + public ToolResources ToolResources { get; } + public IReadOnlyList Tools { get; } + } public class AssistantClient { protected AssistantClient(); public AssistantClient(OpenAIClientOptions options = null); public AssistantClient(ApiKeyCredential credential, OpenAIClientOptions options = null); - protected AssistantClient(ClientPipeline pipeline, Uri endpoint, OpenAIClientOptions options); + protected internal AssistantClient(ClientPipeline pipeline, Uri endpoint, OpenAIClientOptions options); + public virtual ClientPipeline Pipeline { get; } public virtual ClientResult CancelRun(ThreadRun run); public virtual ClientResult CancelRun(string threadId, string runId, RequestOptions options); - public virtual ClientResult CancelRun(string threadId, string runId, CancellationToken cancellationToken = default); + public virtual ClientResult CancelRun(string threadId, string runId, CancellationToken cancellationToken = null); public virtual Task> CancelRunAsync(ThreadRun run); public virtual Task CancelRunAsync(string threadId, string runId, RequestOptions options); - public virtual Task> CancelRunAsync(string threadId, string runId, CancellationToken cancellationToken = default); - public virtual ClientResult CreateAssistant(string model, AssistantCreationOptions options = null, CancellationToken cancellationToken = default); + public virtual Task> CancelRunAsync(string threadId, string runId, CancellationToken cancellationToken = null); public virtual ClientResult CreateAssistant(BinaryContent content, RequestOptions options = null); - public virtual Task> CreateAssistantAsync(string model, AssistantCreationOptions options = null, CancellationToken cancellationToken = default); + public virtual ClientResult CreateAssistant(string model, AssistantCreationOptions options = null, CancellationToken cancellationToken = null); public virtual Task CreateAssistantAsync(BinaryContent content, RequestOptions options = null); + public virtual Task> CreateAssistantAsync(string model, AssistantCreationOptions options = null, CancellationToken cancellationToken = null); public virtual ClientResult CreateMessage(AssistantThread thread, MessageRole role, IEnumerable content, MessageCreationOptions options = null); - public virtual ClientResult CreateMessage(string threadId, MessageRole role, IEnumerable content, MessageCreationOptions options = null, CancellationToken cancellationToken = default); + public virtual ClientResult CreateMessage(string threadId, MessageRole role, IEnumerable content, MessageCreationOptions options = null, CancellationToken cancellationToken = null); public virtual ClientResult CreateMessage(string threadId, BinaryContent content, RequestOptions options = null); public virtual Task> CreateMessageAsync(AssistantThread thread, MessageRole role, IEnumerable content, MessageCreationOptions options = null); - public virtual Task> CreateMessageAsync(string threadId, MessageRole role, IEnumerable content, MessageCreationOptions options = null, CancellationToken cancellationToken = default); + public virtual Task> CreateMessageAsync(string threadId, MessageRole role, IEnumerable content, MessageCreationOptions options = null, CancellationToken cancellationToken = null); public virtual Task CreateMessageAsync(string threadId, BinaryContent content, RequestOptions options = null); public virtual ClientResult CreateRun(AssistantThread thread, Assistant assistant, RunCreationOptions options = null); - public virtual ClientResult CreateRun(string threadId, string assistantId, RunCreationOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult CreateRun(string threadId, BinaryContent content, RequestOptions options = null); + public virtual ClientResult CreateRun(string threadId, string assistantId, RunCreationOptions options = null, CancellationToken cancellationToken = null); public virtual Task> CreateRunAsync(AssistantThread thread, Assistant assistant, RunCreationOptions options = null); - public virtual Task> CreateRunAsync(string threadId, string assistantId, RunCreationOptions options = null, CancellationToken cancellationToken = default); public virtual Task CreateRunAsync(string threadId, BinaryContent content, RequestOptions options = null); - public virtual ResultCollection CreateRunStreaming(AssistantThread thread, Assistant assistant, RunCreationOptions options = null); - public virtual ResultCollection CreateRunStreaming(string threadId, string assistantId, RunCreationOptions options = null, CancellationToken cancellationToken = default); - public virtual AsyncResultCollection CreateRunStreamingAsync(AssistantThread thread, Assistant assistant, RunCreationOptions options = null); - public virtual AsyncResultCollection CreateRunStreamingAsync(string threadId, string assistantId, RunCreationOptions options = null, CancellationToken cancellationToken = default); - public virtual ClientResult CreateThread(ThreadCreationOptions options = null, CancellationToken cancellationToken = default); + public virtual Task> CreateRunAsync(string threadId, string assistantId, RunCreationOptions options = null, CancellationToken cancellationToken = null); + public virtual CollectionResult CreateRunStreaming(AssistantThread thread, Assistant assistant, RunCreationOptions options = null); + public virtual CollectionResult CreateRunStreaming(string threadId, string assistantId, RunCreationOptions options = null, CancellationToken cancellationToken = null); + public virtual AsyncCollectionResult CreateRunStreamingAsync(AssistantThread thread, Assistant assistant, RunCreationOptions options = null); + public virtual AsyncCollectionResult CreateRunStreamingAsync(string threadId, string assistantId, RunCreationOptions options = null, CancellationToken cancellationToken = null); + public virtual ClientResult CreateThread(ThreadCreationOptions options = null, CancellationToken cancellationToken = null); public virtual ClientResult CreateThread(BinaryContent content, RequestOptions options = null); public virtual ClientResult CreateThreadAndRun(Assistant assistant, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null); - public virtual ClientResult CreateThreadAndRun(string assistantId, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null, CancellationToken cancellationToken = default); public virtual ClientResult CreateThreadAndRun(BinaryContent content, RequestOptions options = null); + public virtual ClientResult CreateThreadAndRun(string assistantId, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null, CancellationToken cancellationToken = null); public virtual Task> CreateThreadAndRunAsync(Assistant assistant, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null); - public virtual Task> CreateThreadAndRunAsync(string assistantId, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null, CancellationToken cancellationToken = default); public virtual Task CreateThreadAndRunAsync(BinaryContent content, RequestOptions options = null); - public virtual ResultCollection CreateThreadAndRunStreaming(Assistant assistant, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null); - public virtual ResultCollection CreateThreadAndRunStreaming(string assistantId, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null, CancellationToken cancellationToken = default); - public virtual AsyncResultCollection CreateThreadAndRunStreamingAsync(Assistant assistant, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null); - public virtual AsyncResultCollection CreateThreadAndRunStreamingAsync(string assistantId, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null, CancellationToken cancellationToken = default); - public virtual Task> CreateThreadAsync(ThreadCreationOptions options = null, CancellationToken cancellationToken = default); + public virtual Task> CreateThreadAndRunAsync(string assistantId, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null, CancellationToken cancellationToken = null); + public virtual CollectionResult CreateThreadAndRunStreaming(Assistant assistant, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null); + public virtual CollectionResult CreateThreadAndRunStreaming(string assistantId, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null, CancellationToken cancellationToken = null); + public virtual AsyncCollectionResult CreateThreadAndRunStreamingAsync(Assistant assistant, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null); + public virtual AsyncCollectionResult CreateThreadAndRunStreamingAsync(string assistantId, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null, CancellationToken cancellationToken = null); + public virtual Task> CreateThreadAsync(ThreadCreationOptions options = null, CancellationToken cancellationToken = null); public virtual Task CreateThreadAsync(BinaryContent content, RequestOptions options = null); public virtual ClientResult DeleteAssistant(Assistant assistant); public virtual ClientResult DeleteAssistant(string assistantId, RequestOptions options); - public virtual ClientResult DeleteAssistant(string assistantId, CancellationToken cancellationToken = default); + public virtual ClientResult DeleteAssistant(string assistantId, CancellationToken cancellationToken = null); public virtual Task> DeleteAssistantAsync(Assistant assistant); public virtual Task DeleteAssistantAsync(string assistantId, RequestOptions options); - public virtual Task> DeleteAssistantAsync(string assistantId, CancellationToken cancellationToken = default); - + public virtual Task> DeleteAssistantAsync(string assistantId, CancellationToken cancellationToken = null); public virtual ClientResult DeleteMessage(ThreadMessage message); public virtual ClientResult DeleteMessage(string threadId, string messageId, RequestOptions options); - public virtual ClientResult DeleteMessage(string threadId, string messageId, CancellationToken cancellationToken = default); + public virtual ClientResult DeleteMessage(string threadId, string messageId, CancellationToken cancellationToken = null); public virtual Task> DeleteMessageAsync(ThreadMessage message); public virtual Task DeleteMessageAsync(string threadId, string messageId, RequestOptions options); - public virtual Task> DeleteMessageAsync(string threadId, string messageId, CancellationToken cancellationToken = default); + public virtual Task> DeleteMessageAsync(string threadId, string messageId, CancellationToken cancellationToken = null); public virtual ClientResult DeleteThread(AssistantThread thread); public virtual ClientResult DeleteThread(string threadId, RequestOptions options); - public virtual ClientResult DeleteThread(string threadId, CancellationToken cancellationToken = default); + public virtual ClientResult DeleteThread(string threadId, CancellationToken cancellationToken = null); public virtual Task> DeleteThreadAsync(AssistantThread thread); public virtual Task DeleteThreadAsync(string threadId, RequestOptions options); - public virtual Task> DeleteThreadAsync(string threadId, CancellationToken cancellationToken = default); + public virtual Task> DeleteThreadAsync(string threadId, CancellationToken cancellationToken = null); public virtual ClientResult GetAssistant(string assistantId, RequestOptions options); - public virtual ClientResult GetAssistant(string assistantId, CancellationToken cancellationToken = default); + public virtual ClientResult GetAssistant(string assistantId, CancellationToken cancellationToken = null); public virtual Task GetAssistantAsync(string assistantId, RequestOptions options); - public virtual Task> GetAssistantAsync(string assistantId, CancellationToken cancellationToken = default); - public virtual ClientResult GetAssistants(int? limit, string order, string after, string before, RequestOptions options); - public virtual PageableCollection GetAssistants(ListOrder? resultOrder = null, CancellationToken cancellationToken = default); - public virtual Task GetAssistantsAsync(int? limit, string order, string after, string before, RequestOptions options); - public virtual AsyncPageableCollection GetAssistantsAsync(ListOrder? resultOrder = null, CancellationToken cancellationToken = default); + public virtual Task> GetAssistantAsync(string assistantId, CancellationToken cancellationToken = null); + public virtual PageCollection GetAssistants(AssistantCollectionOptions options = null, CancellationToken cancellationToken = null); + public virtual PageCollection GetAssistants(ContinuationToken firstPageToken, CancellationToken cancellationToken = null); + public virtual IEnumerable GetAssistants(int? limit, string order, string after, string before, RequestOptions options); + public virtual AsyncPageCollection GetAssistantsAsync(AssistantCollectionOptions options = null, CancellationToken cancellationToken = null); + public virtual AsyncPageCollection GetAssistantsAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = null); + public virtual IAsyncEnumerable GetAssistantsAsync(int? limit, string order, string after, string before, RequestOptions options); public virtual ClientResult GetMessage(ThreadMessage message); public virtual ClientResult GetMessage(string threadId, string messageId, RequestOptions options); - public virtual ClientResult GetMessage(string threadId, string messageId, CancellationToken cancellationToken = default); + public virtual ClientResult GetMessage(string threadId, string messageId, CancellationToken cancellationToken = null); public virtual Task> GetMessageAsync(ThreadMessage message); public virtual Task GetMessageAsync(string threadId, string messageId, RequestOptions options); - public virtual Task> GetMessageAsync(string threadId, string messageId, CancellationToken cancellationToken = default); - public virtual PageableCollection GetMessages(AssistantThread thread, ListOrder? resultOrder = null); - public virtual ClientResult GetMessages(string threadId, int? limit, string order, string after, string before, RequestOptions options); - public virtual PageableCollection GetMessages(string threadId, ListOrder? resultOrder = null, CancellationToken cancellationToken = default); - public virtual AsyncPageableCollection GetMessagesAsync(AssistantThread thread, ListOrder? resultOrder = null); - public virtual Task GetMessagesAsync(string threadId, int? limit, string order, string after, string before, RequestOptions options); - public virtual AsyncPageableCollection GetMessagesAsync(string threadId, ListOrder? resultOrder = null, CancellationToken cancellationToken = default); + public virtual Task> GetMessageAsync(string threadId, string messageId, CancellationToken cancellationToken = null); + public virtual PageCollection GetMessages(AssistantThread thread, MessageCollectionOptions options = null); + public virtual PageCollection GetMessages(ContinuationToken firstPageToken, CancellationToken cancellationToken = null); + public virtual PageCollection GetMessages(string threadId, MessageCollectionOptions options = null, CancellationToken cancellationToken = null); + public virtual IEnumerable GetMessages(string threadId, int? limit, string order, string after, string before, RequestOptions options); + public virtual AsyncPageCollection GetMessagesAsync(AssistantThread thread, MessageCollectionOptions options = null); + public virtual AsyncPageCollection GetMessagesAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = null); + public virtual AsyncPageCollection GetMessagesAsync(string threadId, MessageCollectionOptions options = null, CancellationToken cancellationToken = null); + public virtual IAsyncEnumerable GetMessagesAsync(string threadId, int? limit, string order, string after, string before, RequestOptions options); public virtual ClientResult GetRun(ThreadRun run); public virtual ClientResult GetRun(string threadId, string runId, RequestOptions options); - public virtual ClientResult GetRun(string threadId, string runId, CancellationToken cancellationToken = default); + public virtual ClientResult GetRun(string threadId, string runId, CancellationToken cancellationToken = null); public virtual Task> GetRunAsync(ThreadRun run); public virtual Task GetRunAsync(string threadId, string runId, RequestOptions options); - public virtual Task> GetRunAsync(string threadId, string runId, CancellationToken cancellationToken = default); - public virtual PageableCollection GetRuns(AssistantThread thread, ListOrder? resultOrder = null); - public virtual ClientResult GetRuns(string threadId, int? limit, string order, string after, string before, RequestOptions options); - public virtual PageableCollection GetRuns(string threadId, ListOrder? resultOrder = null, CancellationToken cancellationToken = default); - public virtual AsyncPageableCollection GetRunsAsync(AssistantThread thread, ListOrder? resultOrder = null); - public virtual Task GetRunsAsync(string threadId, int? limit, string order, string after, string before, RequestOptions options); - public virtual AsyncPageableCollection GetRunsAsync(string threadId, ListOrder? resultOrder = null, CancellationToken cancellationToken = default); + public virtual Task> GetRunAsync(string threadId, string runId, CancellationToken cancellationToken = null); + public virtual PageCollection GetRuns(AssistantThread thread, RunCollectionOptions options = null); + public virtual PageCollection GetRuns(ContinuationToken firstPageToken, CancellationToken cancellationToken = null); + public virtual PageCollection GetRuns(string threadId, RunCollectionOptions options = null, CancellationToken cancellationToken = null); + public virtual IEnumerable GetRuns(string threadId, int? limit, string order, string after, string before, RequestOptions options); + public virtual AsyncPageCollection GetRunsAsync(AssistantThread thread, RunCollectionOptions options = null); + public virtual AsyncPageCollection GetRunsAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = null); + public virtual AsyncPageCollection GetRunsAsync(string threadId, RunCollectionOptions options = null, CancellationToken cancellationToken = null); + public virtual IAsyncEnumerable GetRunsAsync(string threadId, int? limit, string order, string after, string before, RequestOptions options); public virtual ClientResult GetRunStep(string threadId, string runId, string stepId, RequestOptions options); - public virtual ClientResult GetRunStep(string threadId, string runId, string stepId, CancellationToken cancellationToken = default); + public virtual ClientResult GetRunStep(string threadId, string runId, string stepId, CancellationToken cancellationToken = null); public virtual Task GetRunStepAsync(string threadId, string runId, string stepId, RequestOptions options); - public virtual Task> GetRunStepAsync(string threadId, string runId, string stepId, CancellationToken cancellationToken = default); - public virtual PageableCollection GetRunSteps(ThreadRun run, ListOrder? resultOrder = null); - public virtual ClientResult GetRunSteps(string threadId, string runId, int? limit, string order, string after, string before, RequestOptions options); - public virtual PageableCollection GetRunSteps(string threadId, string runId, ListOrder? resultOrder = null, CancellationToken cancellationToken = default); - public virtual AsyncPageableCollection GetRunStepsAsync(ThreadRun run, ListOrder? resultOrder = null); - public virtual Task GetRunStepsAsync(string threadId, string runId, int? limit, string order, string after, string before, RequestOptions options); - public virtual AsyncPageableCollection GetRunStepsAsync(string threadId, string runId, ListOrder? resultOrder = null, CancellationToken cancellationToken = default); + public virtual Task> GetRunStepAsync(string threadId, string runId, string stepId, CancellationToken cancellationToken = null); + public virtual PageCollection GetRunSteps(ThreadRun run, RunStepCollectionOptions options = null); + public virtual PageCollection GetRunSteps(ContinuationToken firstPageToken, CancellationToken cancellationToken = null); + public virtual PageCollection GetRunSteps(string threadId, string runId, RunStepCollectionOptions options = null, CancellationToken cancellationToken = null); + public virtual IEnumerable GetRunSteps(string threadId, string runId, int? limit, string order, string after, string before, RequestOptions options); + public virtual AsyncPageCollection GetRunStepsAsync(ThreadRun run, RunStepCollectionOptions options = null); + public virtual AsyncPageCollection GetRunStepsAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = null); + public virtual AsyncPageCollection GetRunStepsAsync(string threadId, string runId, RunStepCollectionOptions options = null, CancellationToken cancellationToken = null); + public virtual IAsyncEnumerable GetRunStepsAsync(string threadId, string runId, int? limit, string order, string after, string before, RequestOptions options); public virtual ClientResult GetThread(AssistantThread thread); public virtual ClientResult GetThread(string threadId, RequestOptions options); - public virtual ClientResult GetThread(string threadId, CancellationToken cancellationToken = default); + public virtual ClientResult GetThread(string threadId, CancellationToken cancellationToken = null); public virtual Task> GetThreadAsync(AssistantThread thread); public virtual Task GetThreadAsync(string threadId, RequestOptions options); - public virtual Task> GetThreadAsync(string threadId, CancellationToken cancellationToken = default); + public virtual Task> GetThreadAsync(string threadId, CancellationToken cancellationToken = null); public virtual ClientResult ModifyAssistant(Assistant assistant, AssistantModificationOptions options); - public virtual ClientResult ModifyAssistant(string assistantId, AssistantModificationOptions options, CancellationToken cancellationToken = default); + public virtual ClientResult ModifyAssistant(string assistantId, AssistantModificationOptions options, CancellationToken cancellationToken = null); public virtual ClientResult ModifyAssistant(string assistantId, BinaryContent content, RequestOptions options = null); public virtual Task> ModifyAssistantAsync(Assistant assistant, AssistantModificationOptions options); - public virtual Task> ModifyAssistantAsync(string assistantId, AssistantModificationOptions options, CancellationToken cancellationToken = default); + public virtual Task> ModifyAssistantAsync(string assistantId, AssistantModificationOptions options, CancellationToken cancellationToken = null); public virtual Task ModifyAssistantAsync(string assistantId, BinaryContent content, RequestOptions options = null); public virtual ClientResult ModifyMessage(ThreadMessage message, MessageModificationOptions options); - public virtual ClientResult ModifyMessage(string threadId, string messageId, MessageModificationOptions options, CancellationToken cancellationToken = default); + public virtual ClientResult ModifyMessage(string threadId, string messageId, MessageModificationOptions options, CancellationToken cancellationToken = null); public virtual ClientResult ModifyMessage(string threadId, string messageId, BinaryContent content, RequestOptions options = null); public virtual Task> ModifyMessageAsync(ThreadMessage message, MessageModificationOptions options); - public virtual Task> ModifyMessageAsync(string threadId, string messageId, MessageModificationOptions options, CancellationToken cancellationToken = default); + public virtual Task> ModifyMessageAsync(string threadId, string messageId, MessageModificationOptions options, CancellationToken cancellationToken = null); public virtual Task ModifyMessageAsync(string threadId, string messageId, BinaryContent content, RequestOptions options = null); public virtual ClientResult ModifyRun(string threadId, string runId, BinaryContent content, RequestOptions options = null); public virtual Task ModifyRunAsync(string threadId, string runId, BinaryContent content, RequestOptions options = null); public virtual ClientResult ModifyThread(AssistantThread thread, ThreadModificationOptions options); - public virtual ClientResult ModifyThread(string threadId, ThreadModificationOptions options, CancellationToken cancellationToken = default); + public virtual ClientResult ModifyThread(string threadId, ThreadModificationOptions options, CancellationToken cancellationToken = null); public virtual ClientResult ModifyThread(string threadId, BinaryContent content, RequestOptions options = null); public virtual Task> ModifyThreadAsync(AssistantThread thread, ThreadModificationOptions options); - public virtual Task> ModifyThreadAsync(string threadId, ThreadModificationOptions options, CancellationToken cancellationToken = default); + public virtual Task> ModifyThreadAsync(string threadId, ThreadModificationOptions options, CancellationToken cancellationToken = null); public virtual Task ModifyThreadAsync(string threadId, BinaryContent content, RequestOptions options = null); - public virtual ClientPipeline Pipeline { get; } public virtual ClientResult SubmitToolOutputsToRun(ThreadRun run, IEnumerable toolOutputs); public virtual ClientResult SubmitToolOutputsToRun(string threadId, string runId, BinaryContent content, RequestOptions options = null); - public virtual ClientResult SubmitToolOutputsToRun(string threadId, string runId, IEnumerable toolOutputs, CancellationToken cancellationToken = default); + public virtual ClientResult SubmitToolOutputsToRun(string threadId, string runId, IEnumerable toolOutputs, CancellationToken cancellationToken = null); public virtual Task> SubmitToolOutputsToRunAsync(ThreadRun run, IEnumerable toolOutputs); public virtual Task SubmitToolOutputsToRunAsync(string threadId, string runId, BinaryContent content, RequestOptions options = null); - public virtual Task> SubmitToolOutputsToRunAsync(string threadId, string runId, IEnumerable toolOutputs, CancellationToken cancellationToken = default); - public virtual ResultCollection SubmitToolOutputsToRunStreaming(ThreadRun run, IEnumerable toolOutputs); - public virtual ResultCollection SubmitToolOutputsToRunStreaming(string threadId, string runId, IEnumerable toolOutputs, CancellationToken cancellationToken = default); - public virtual AsyncResultCollection SubmitToolOutputsToRunStreamingAsync(ThreadRun run, IEnumerable toolOutputs); - public virtual AsyncResultCollection SubmitToolOutputsToRunStreamingAsync(string threadId, string runId, IEnumerable toolOutputs, CancellationToken cancellationToken = default); + public virtual Task> SubmitToolOutputsToRunAsync(string threadId, string runId, IEnumerable toolOutputs, CancellationToken cancellationToken = null); + public virtual CollectionResult SubmitToolOutputsToRunStreaming(ThreadRun run, IEnumerable toolOutputs); + public virtual CollectionResult SubmitToolOutputsToRunStreaming(string threadId, string runId, IEnumerable toolOutputs, CancellationToken cancellationToken = null); + public virtual AsyncCollectionResult SubmitToolOutputsToRunStreamingAsync(ThreadRun run, IEnumerable toolOutputs); + public virtual AsyncCollectionResult SubmitToolOutputsToRunStreamingAsync(string threadId, string runId, IEnumerable toolOutputs, CancellationToken cancellationToken = null); + } + public class AssistantCollectionOptions { + public AssistantCollectionOptions(); + public string AfterId { get; init; } + public string BeforeId { get; init; } + public ListOrder? Order { get; init; } + public int? PageSize { get; init; } } public class AssistantCreationOptions { public AssistantCreationOptions(); @@ -210,73 +237,17 @@ namespace OpenAI.Assistants { public float? Temperature { get; init; } public ToolResources ToolResources { get; init; } } - public class MessageCreationOptions { - public MessageCreationOptions(); - public IList Attachments { get; } - public IDictionary Metadata { get; } - public MessageRole Role { get; } - } - public class MessageModificationOptions { - public MessageModificationOptions(); - public IDictionary Metadata { get; } - } - public class RunCreationOptions { - public RunCreationOptions(); - public string AdditionalInstructions { get; init; } - public IList AdditionalMessages { get; } - public string InstructionsOverride { get; init; } - public int? MaxCompletionTokens { get; init; } - public int? MaxPromptTokens { get; init; } - public IDictionary Metadata { get; } - public string ModelOverride { get; init; } - public float? NucleusSamplingFactor { get; init; } - public bool? ParallelToolCallsEnabled { get; init; } - public AssistantResponseFormat ResponseFormat { get; init; } - public float? Temperature { get; init; } - public ToolConstraint ToolConstraint { get; init; } - public IList ToolsOverride { get; } - public RunTruncationStrategy TruncationStrategy { get; init; } - } - public class RunModificationOptions { - public RunModificationOptions(); - public IDictionary Metadata { get; } - } - public class ThreadCreationOptions { - public ThreadCreationOptions(); - public IList InitialMessages { get; } - public IDictionary Metadata { get; } - public ToolResources ToolResources { get; init; } - } - public class ThreadModificationOptions { - public ThreadModificationOptions(); - public IDictionary Metadata { get; } - public ToolResources ToolResources { get; init; } - } - public class Assistant { - public DateTimeOffset CreatedAt { get; } - public string Description { get; } - public string Id { get; } - public string Instructions { get; } - public IReadOnlyDictionary Metadata { get; } - public string Model { get; } - public string Name { get; } - public float? NucleusSamplingFactor { get; } - public AssistantResponseFormat ResponseFormat { get; } - public float? Temperature { get; } - public ToolResources ToolResources { get; } - public IReadOnlyList Tools { get; } - } public class AssistantResponseFormat { protected AssistantResponseFormat(); public static AssistantResponseFormat Auto { get; } public static AssistantResponseFormat JsonObject { get; } public static AssistantResponseFormat Text { get; } - public static bool operator ==(AssistantResponseFormat left, AssistantResponseFormat right); - public static implicit operator AssistantResponseFormat(string value); - public static bool operator !=(AssistantResponseFormat left, AssistantResponseFormat right); public bool Equals(AssistantResponseFormat other); public override bool Equals(object obj); public override int GetHashCode(); + public static bool operator ==(AssistantResponseFormat left, AssistantResponseFormat right); + public static implicit operator AssistantResponseFormat(string value); + public static bool operator !=(AssistantResponseFormat left, AssistantResponseFormat right); public override string ToString(); } public class AssistantThread { @@ -286,7 +257,6 @@ namespace OpenAI.Assistants { public ToolResources ToolResources { get; } } public class CodeInterpreterToolDefinition : ToolDefinition { - public CodeInterpreterToolDefinition(); protected override void WriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options); } public class CodeInterpreterToolResources { @@ -294,7 +264,6 @@ namespace OpenAI.Assistants { public IList FileIds { get; init; } } public class FileSearchToolDefinition : ToolDefinition { - public FileSearchToolDefinition(); public int? MaxResults { get; init; } protected override void WriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options); } @@ -304,14 +273,20 @@ namespace OpenAI.Assistants { public IList VectorStoreIds { get; init; } } public class FunctionToolDefinition : ToolDefinition { - internal [SetsRequiredMembers] - public FunctionToolDefinition(string name, string description = null, BinaryData parameters = null); public FunctionToolDefinition(); + public FunctionToolDefinition(string name, string description = null, BinaryData parameters = null); public string Description { get; init; } public required string FunctionName { get; init; } public BinaryData Parameters { get; init; } protected override void WriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options); } + public class MessageCollectionOptions { + public MessageCollectionOptions(); + public string AfterId { get; init; } + public string BeforeId { get; init; } + public ListOrder? Order { get; init; } + public int? PageSize { get; init; } + } public abstract class MessageContent { protected MessageContent(); public MessageImageDetail? ImageDetail { get; } @@ -339,91 +314,130 @@ namespace OpenAI.Assistants { public string FileId { get; } public IReadOnlyList Tools { get; } } + public class MessageCreationOptions { + public MessageCreationOptions(); + public IList Attachments { get; } + public IDictionary Metadata { get; } + } public class MessageFailureDetails { public MessageFailureReason Reason { get; } } - public readonly struct MessageFailureReason : IEquatable { + public sealed class MessageFailureReason { public MessageFailureReason(string value); public static MessageFailureReason ContentFilter { get; } public static MessageFailureReason MaxTokens { get; } public static MessageFailureReason RunCancelled { get; } public static MessageFailureReason RunExpired { get; } public static MessageFailureReason RunFailed { get; } - public static bool operator ==(MessageFailureReason left, MessageFailureReason right); - public static implicit operator MessageFailureReason(string value); - public static bool operator !=(MessageFailureReason left, MessageFailureReason right); public bool Equals(MessageFailureReason other); public override bool Equals(object obj); public override int GetHashCode(); + public static bool operator ==(MessageFailureReason left, MessageFailureReason right); + public static implicit operator MessageFailureReason(string value); + public static bool operator !=(MessageFailureReason left, MessageFailureReason right); public override string ToString(); } - public readonly struct MessageStatus : IEquatable { + public sealed class MessageImageDetail { + public const MessageImageDetail Auto = 0; + public const MessageImageDetail High = 2; + public const MessageImageDetail Low = 1; + } + public class MessageModificationOptions { + public MessageModificationOptions(); + public IDictionary Metadata { get; } + } + public sealed class MessageRole { + public const MessageRole Assistant = 1; + public const MessageRole User = 0; + } + public sealed class MessageStatus { public MessageStatus(string value); public static MessageStatus Completed { get; } public static MessageStatus Incomplete { get; } public static MessageStatus InProgress { get; } - public static bool operator ==(MessageStatus left, MessageStatus right); - public static implicit operator MessageStatus(string value); - public static bool operator !=(MessageStatus left, MessageStatus right); public bool Equals(MessageStatus other); public override bool Equals(object obj); public override int GetHashCode(); + public static bool operator ==(MessageStatus left, MessageStatus right); + public static implicit operator MessageStatus(string value); + public static bool operator !=(MessageStatus left, MessageStatus right); public override string ToString(); } public class MessageStatusUpdate : StreamingUpdate { } - public class MessageTextContentAnnotation { - public int EndIndex { get; } - public string InputFileId { get; } - public string OutputFileId { get; } - public int StartIndex { get; } - public string TextToReplace { get; } - } public abstract class RequiredAction { protected RequiredAction(); public string FunctionArguments { get; } public string FunctionName { get; } public string ToolCallId { get; } } - public class RequiredActionUpdate : StreamingUpdate { + public class RequiredActionUpdate : RunUpdate { public string FunctionArguments { get; } public string FunctionName { get; } public string ToolCallId { get; } public ThreadRun GetThreadRun(); } + public class RunCollectionOptions { + public RunCollectionOptions(); + public string AfterId { get; init; } + public string BeforeId { get; init; } + public ListOrder? Order { get; init; } + public int? PageSize { get; init; } + } + public class RunCreationOptions { + public RunCreationOptions(); + public string AdditionalInstructions { get; init; } + public IList AdditionalMessages { get; } + public string InstructionsOverride { get; init; } + public int? MaxCompletionTokens { get; init; } + public int? MaxPromptTokens { get; init; } + public IDictionary Metadata { get; } + public string ModelOverride { get; init; } + public float? NucleusSamplingFactor { get; init; } + public bool? ParallelToolCallsEnabled { get; init; } + public AssistantResponseFormat ResponseFormat { get; init; } + public float? Temperature { get; init; } + public ToolConstraint ToolConstraint { get; init; } + public IList ToolsOverride { get; } + public RunTruncationStrategy TruncationStrategy { get; init; } + } public class RunError { public RunErrorCode Code { get; } public string Message { get; } } - public readonly struct RunErrorCode : IEquatable { + public sealed class RunErrorCode { public RunErrorCode(string value); public static RunErrorCode InvalidPrompt { get; } public static RunErrorCode RateLimitExceeded { get; } public static RunErrorCode ServerError { get; } - public static bool operator ==(RunErrorCode left, RunErrorCode right); - public static implicit operator RunErrorCode(string value); - public static bool operator !=(RunErrorCode left, RunErrorCode right); public bool Equals(RunErrorCode other); public override bool Equals(object obj); public override int GetHashCode(); + public static bool operator ==(RunErrorCode left, RunErrorCode right); + public static implicit operator RunErrorCode(string value); + public static bool operator !=(RunErrorCode left, RunErrorCode right); public override string ToString(); } public class RunIncompleteDetails { public RunIncompleteReason? Reason { get; } } - public readonly struct RunIncompleteReason : IEquatable { + public sealed class RunIncompleteReason { public RunIncompleteReason(string value); public static RunIncompleteReason MaxCompletionTokens { get; } public static RunIncompleteReason MaxPromptTokens { get; } - public static bool operator ==(RunIncompleteReason left, RunIncompleteReason right); - public static implicit operator RunIncompleteReason(string value); - public static bool operator !=(RunIncompleteReason left, RunIncompleteReason right); public bool Equals(RunIncompleteReason other); public override bool Equals(object obj); public override int GetHashCode(); + public static bool operator ==(RunIncompleteReason left, RunIncompleteReason right); + public static implicit operator RunIncompleteReason(string value); + public static bool operator !=(RunIncompleteReason left, RunIncompleteReason right); public override string ToString(); } - public readonly struct RunStatus : IEquatable { + public class RunModificationOptions { + public RunModificationOptions(); + public IDictionary Metadata { get; } + } + public sealed class RunStatus { public RunStatus(string value); public static RunStatus Cancelled { get; } public static RunStatus Cancelling { get; } @@ -435,12 +449,12 @@ namespace OpenAI.Assistants { public bool IsTerminal { get; } public static RunStatus Queued { get; } public static RunStatus RequiresAction { get; } - public static bool operator ==(RunStatus left, RunStatus right); - public static implicit operator RunStatus(string value); - public static bool operator !=(RunStatus left, RunStatus right); public bool Equals(RunStatus other); public override bool Equals(object obj); public override int GetHashCode(); + public static bool operator ==(RunStatus left, RunStatus right); + public static implicit operator RunStatus(string value); + public static bool operator !=(RunStatus left, RunStatus right); public override string ToString(); } public class RunStep { @@ -465,6 +479,13 @@ namespace OpenAI.Assistants { public string ImageFileId { get; } public string Logs { get; } } + public class RunStepCollectionOptions { + public RunStepCollectionOptions(); + public string AfterId { get; init; } + public string BeforeId { get; init; } + public ListOrder? Order { get; init; } + public int? PageSize { get; init; } + } public abstract class RunStepDetails { protected RunStepDetails(); public string CreatedMessageId { get; } @@ -485,31 +506,31 @@ namespace OpenAI.Assistants { public RunStepErrorCode Code { get; } public string Message { get; } } - public readonly struct RunStepErrorCode : IEquatable { + public sealed class RunStepErrorCode { public RunStepErrorCode(string value); public static RunStepErrorCode RateLimitExceeded { get; } public static RunStepErrorCode ServerError { get; } - public static bool operator ==(RunStepErrorCode left, RunStepErrorCode right); - public static implicit operator RunStepErrorCode(string value); - public static bool operator !=(RunStepErrorCode left, RunStepErrorCode right); public bool Equals(RunStepErrorCode other); public override bool Equals(object obj); public override int GetHashCode(); + public static bool operator ==(RunStepErrorCode left, RunStepErrorCode right); + public static implicit operator RunStepErrorCode(string value); + public static bool operator !=(RunStepErrorCode left, RunStepErrorCode right); public override string ToString(); } - public readonly struct RunStepStatus : IEquatable { + public sealed class RunStepStatus { public RunStepStatus(string value); public static RunStepStatus Cancelled { get; } public static RunStepStatus Completed { get; } public static RunStepStatus Expired { get; } public static RunStepStatus Failed { get; } public static RunStepStatus InProgress { get; } - public static bool operator ==(RunStepStatus left, RunStepStatus right); - public static implicit operator RunStepStatus(string value); - public static bool operator !=(RunStepStatus left, RunStepStatus right); public bool Equals(RunStepStatus other); public override bool Equals(object obj); public override int GetHashCode(); + public static bool operator ==(RunStepStatus left, RunStepStatus right); + public static implicit operator RunStepStatus(string value); + public static bool operator !=(RunStepStatus left, RunStepStatus right); public override string ToString(); } public class RunStepTokenUsage { @@ -527,16 +548,22 @@ namespace OpenAI.Assistants { public string ToolCallId { get; } public RunStepToolCallKind ToolKind { get; } } - public readonly struct RunStepType : IEquatable { + public sealed class RunStepToolCallKind { + public const RunStepToolCallKind CodeInterpreter = 1; + public const RunStepToolCallKind FileSearch = 2; + public const RunStepToolCallKind Function = 3; + public const RunStepToolCallKind Unknown = 0; + } + public sealed class RunStepType { public RunStepType(string value); public static RunStepType MessageCreation { get; } public static RunStepType ToolCalls { get; } - public static bool operator ==(RunStepType left, RunStepType right); - public static implicit operator RunStepType(string value); - public static bool operator !=(RunStepType left, RunStepType right); public bool Equals(RunStepType other); public override bool Equals(object obj); public override int GetHashCode(); + public static bool operator ==(RunStepType left, RunStepType right); + public static implicit operator RunStepType(string value); + public static bool operator !=(RunStepType left, RunStepType right); public override string ToString(); } public class RunStepUpdate : StreamingUpdate { @@ -562,7 +589,35 @@ namespace OpenAI.Assistants { public abstract class StreamingUpdate { public StreamingUpdateReason UpdateKind { get; } } - public class StreamingUpdate where T : class : StreamingUpdate { + public sealed class StreamingUpdateReason { + public const StreamingUpdateReason Done = 25; + public const StreamingUpdateReason Error = 24; + public const StreamingUpdateReason MessageCompleted = 22; + public const StreamingUpdateReason MessageCreated = 19; + public const StreamingUpdateReason MessageFailed = 23; + public const StreamingUpdateReason MessageInProgress = 20; + public const StreamingUpdateReason MessageUpdated = 21; + public const StreamingUpdateReason RunCancelled = 10; + public const StreamingUpdateReason RunCancelling = 9; + public const StreamingUpdateReason RunCompleted = 6; + public const StreamingUpdateReason RunCreated = 2; + public const StreamingUpdateReason RunExpired = 11; + public const StreamingUpdateReason RunFailed = 8; + public const StreamingUpdateReason RunIncomplete = 7; + public const StreamingUpdateReason RunInProgress = 4; + public const StreamingUpdateReason RunQueued = 3; + public const StreamingUpdateReason RunRequiresAction = 5; + public const StreamingUpdateReason RunStepCancelled = 17; + public const StreamingUpdateReason RunStepCompleted = 15; + public const StreamingUpdateReason RunStepCreated = 12; + public const StreamingUpdateReason RunStepExpired = 18; + public const StreamingUpdateReason RunStepFailed = 16; + public const StreamingUpdateReason RunStepInProgress = 13; + public const StreamingUpdateReason RunStepUpdated = 14; + public const StreamingUpdateReason ThreadCreated = 1; + public const StreamingUpdateReason Unknown = 0; + } + public class StreamingUpdate : StreamingUpdate where T : class { public T Value { get; } public static implicit operator T(StreamingUpdate update); } @@ -581,8 +636,14 @@ namespace OpenAI.Assistants { public int? StartIndex { get; } public string TextToReplace { get; } } + public class ThreadCreationOptions { + public ThreadCreationOptions(); + public IList InitialMessages { get; } + public IDictionary Metadata { get; } + public ToolResources ToolResources { get; init; } + } public class ThreadInitializationMessage : MessageCreationOptions { - public ThreadInitializationMessage(IEnumerable content); + public ThreadInitializationMessage(MessageRole role, IEnumerable content); public static implicit operator ThreadInitializationMessage(string initializationMessage); } public class ThreadMessage { @@ -600,6 +661,11 @@ namespace OpenAI.Assistants { public MessageStatus Status { get; } public string ThreadId { get; } } + public class ThreadModificationOptions { + public ThreadModificationOptions(); + public IDictionary Metadata { get; } + public ToolResources ToolResources { get; init; } + } public class ThreadRun { public string AssistantId { get; } public DateTimeOffset? CancelledAt { get; } @@ -641,16 +707,16 @@ namespace OpenAI.Assistants { public static ToolConstraint Required { get; } } public abstract class ToolDefinition { - protected ToolDefinition(string type); protected ToolDefinition(); + protected ToolDefinition(string type); public static CodeInterpreterToolDefinition CreateCodeInterpreter(); public static FileSearchToolDefinition CreateFileSearch(int? maxResults = null); public static FunctionToolDefinition CreateFunction(string name, string description = null, BinaryData parameters = null); protected abstract void WriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options); } public class ToolOutput { - public ToolOutput(string toolCallId, string output); public ToolOutput(); + public ToolOutput(string toolCallId, string output); public string Output { get; init; } public string ToolCallId { get; init; } } @@ -660,79 +726,55 @@ namespace OpenAI.Assistants { public FileSearchToolResources FileSearch { get; init; } } public class VectorStoreCreationHelper { - public VectorStoreCreationHelper(IEnumerable fileIds, IDictionary metadata = null); - public VectorStoreCreationHelper(IEnumerable files, IDictionary metadata = null); public VectorStoreCreationHelper(); + public VectorStoreCreationHelper(IEnumerable files, IDictionary metadata = null); + public VectorStoreCreationHelper(IEnumerable fileIds, IDictionary metadata = null); public IList FileIds { get; } public IDictionary Metadata { get; } } - public enum MessageImageDetail { - Auto = 0, - Low = 1, - High = 2, - } - public enum MessageRole { - User = 0, - Assistant = 1, - } - public enum RunStepToolCallKind { - Unknown = 0, - CodeInterpreter = 1, - FileSearch = 2, - Function = 3, - } - public enum StreamingUpdateReason { - Unknown = 0, - ThreadCreated = 1, - RunCreated = 2, - RunQueued = 3, - RunInProgress = 4, - RunRequiresAction = 5, - RunCompleted = 6, - RunIncomplete = 7, - RunFailed = 8, - RunCancelling = 9, - RunCancelled = 10, - RunExpired = 11, - RunStepCreated = 12, - RunStepInProgress = 13, - RunStepUpdated = 14, - RunStepCompleted = 15, - RunStepFailed = 16, - RunStepCancelled = 17, - RunStepExpired = 18, - MessageCreated = 19, - MessageInProgress = 20, - MessageUpdated = 21, - MessageCompleted = 22, - MessageFailed = 23, - Error = 24, - Done = 25, - } } namespace OpenAI.Audio { public class AudioClient { - public AudioClient(string model, ApiKeyCredential credential, OpenAIClientOptions options = null); - public AudioClient(string model, OpenAIClientOptions options = null); - protected AudioClient(ClientPipeline pipeline, string model, Uri endpoint, OpenAIClientOptions options); protected AudioClient(); + protected internal AudioClient(ClientPipeline pipeline, string model, Uri endpoint, OpenAIClientOptions options); + public AudioClient(string model, OpenAIClientOptions options = null); + public AudioClient(string model, ApiKeyCredential credential, OpenAIClientOptions options = null); public virtual ClientPipeline Pipeline { get; } - public virtual ClientResult GenerateSpeechFromText(string text, GeneratedSpeechVoice voice, SpeechGenerationOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult GenerateSpeechFromText(BinaryContent content, RequestOptions options = null); - public virtual Task> GenerateSpeechFromTextAsync(string text, GeneratedSpeechVoice voice, SpeechGenerationOptions options = null, CancellationToken cancellationToken = default); + public virtual ClientResult GenerateSpeechFromText(string text, GeneratedSpeechVoice voice, SpeechGenerationOptions options = null, CancellationToken cancellationToken = null); public virtual Task GenerateSpeechFromTextAsync(BinaryContent content, RequestOptions options = null); - public virtual ClientResult TranscribeAudio(Stream audio, string audioFilename, AudioTranscriptionOptions options = null, CancellationToken cancellationToken = default); - public virtual ClientResult TranscribeAudio(string audioFilePath, AudioTranscriptionOptions options = null); + public virtual Task> GenerateSpeechFromTextAsync(string text, GeneratedSpeechVoice voice, SpeechGenerationOptions options = null, CancellationToken cancellationToken = null); public virtual ClientResult TranscribeAudio(BinaryContent content, string contentType, RequestOptions options = null); - public virtual Task> TranscribeAudioAsync(Stream audio, string audioFilename, AudioTranscriptionOptions options = null, CancellationToken cancellationToken = default); - public virtual Task> TranscribeAudioAsync(string audioFilePath, AudioTranscriptionOptions options = null); + public virtual ClientResult TranscribeAudio(Stream audio, string audioFilename, AudioTranscriptionOptions options = null, CancellationToken cancellationToken = null); + public virtual ClientResult TranscribeAudio(string audioFilePath, AudioTranscriptionOptions options = null); public virtual Task TranscribeAudioAsync(BinaryContent content, string contentType, RequestOptions options = null); - public virtual ClientResult TranslateAudio(Stream audio, string audioFilename, AudioTranslationOptions options = null, CancellationToken cancellationToken = default); - public virtual ClientResult TranslateAudio(string audioFilePath, AudioTranslationOptions options = null); + public virtual Task> TranscribeAudioAsync(Stream audio, string audioFilename, AudioTranscriptionOptions options = null, CancellationToken cancellationToken = null); + public virtual Task> TranscribeAudioAsync(string audioFilePath, AudioTranscriptionOptions options = null); public virtual ClientResult TranslateAudio(BinaryContent content, string contentType, RequestOptions options = null); - public virtual Task> TranslateAudioAsync(Stream audio, string audioFilename, AudioTranslationOptions options = null, CancellationToken cancellationToken = default); - public virtual Task> TranslateAudioAsync(string audioFilePath, AudioTranslationOptions options = null); + public virtual ClientResult TranslateAudio(Stream audio, string audioFilename, AudioTranslationOptions options = null, CancellationToken cancellationToken = null); + public virtual ClientResult TranslateAudio(string audioFilePath, AudioTranslationOptions options = null); public virtual Task TranslateAudioAsync(BinaryContent content, string contentType, RequestOptions options = null); + public virtual Task> TranslateAudioAsync(Stream audio, string audioFilename, AudioTranslationOptions options = null, CancellationToken cancellationToken = null); + public virtual Task> TranslateAudioAsync(string audioFilePath, AudioTranslationOptions options = null); + } + public sealed class AudioTimestampGranularities { + public const AudioTimestampGranularities Default = 0; + public const AudioTimestampGranularities Segment = 2; + public const AudioTimestampGranularities Word = 1; + } + public class AudioTranscription { + public TimeSpan? Duration { get; } + public string Language { get; } + public IReadOnlyList Segments { get; } + public string Text { get; } + public IReadOnlyList Words { get; } + } + public sealed class AudioTranscriptionFormat { + public const AudioTranscriptionFormat Simple = 1; + public const AudioTranscriptionFormat Srt = 3; + public const AudioTranscriptionFormat Text = 0; + public const AudioTranscriptionFormat Verbose = 2; + public const AudioTranscriptionFormat Vtt = 4; } public class AudioTranscriptionOptions { public AudioTranscriptionOptions(); @@ -742,92 +784,72 @@ namespace OpenAI.Audio { public AudioTranscriptionFormat? ResponseFormat { get; init; } public float? Temperature { get; init; } } + public class AudioTranslation { + public TimeSpan? Duration { get; } + public string Language { get; } + public IReadOnlyList Segments { get; } + public string Text { get; } + } + public sealed class AudioTranslationFormat { + public const AudioTranslationFormat Simple = 1; + public const AudioTranslationFormat Srt = 3; + public const AudioTranslationFormat Text = 0; + public const AudioTranslationFormat Verbose = 2; + public const AudioTranslationFormat Vtt = 4; + } public class AudioTranslationOptions { public AudioTranslationOptions(); public string Prompt { get; init; } public AudioTranslationFormat? ResponseFormat { get; init; } public float? Temperature { get; init; } } + public sealed class GeneratedSpeechFormat { + public const GeneratedSpeechFormat Aac = 2; + public const GeneratedSpeechFormat Flac = 3; + public const GeneratedSpeechFormat Mp3 = 0; + public const GeneratedSpeechFormat Opus = 1; + public const GeneratedSpeechFormat Pcm = 5; + public const GeneratedSpeechFormat Wav = 4; + } + public sealed class GeneratedSpeechVoice { + public const GeneratedSpeechVoice Alloy = 0; + public const GeneratedSpeechVoice Echo = 1; + public const GeneratedSpeechVoice Fable = 2; + public const GeneratedSpeechVoice Nova = 4; + public const GeneratedSpeechVoice Onyx = 3; + public const GeneratedSpeechVoice Shimmer = 5; + } public class SpeechGenerationOptions { public SpeechGenerationOptions(); public GeneratedSpeechFormat? ResponseFormat { get; init; } public float? Speed { get; init; } } - public class AudioTranscription { - public TimeSpan? Duration { get; } - public string Language { get; } - public IReadOnlyList Segments { get; } - public string Text { get; } - public IReadOnlyList Words { get; } - } - public class AudioTranslation { - public TimeSpan? Duration { get; } - public string Language { get; } - public IReadOnlyList Segments { get; } - public string Text { get; } - } - public readonly struct TranscribedSegment { - public TranscribedSegment(); - public double AverageLogProbability { get; } - public float CompressionRatio { get; } - public TimeSpan End { get; } - public int Id { get; } - public double NoSpeechProbability { get; } - public long SeekOffset { get; } - public TimeSpan Start { get; } - public float Temperature { get; } + public sealed class TranscribedSegment { + public TranscribedSegment(); + public Double AverageLogProbability { get; } + public float CompressionRatio { get; } + public TimeSpan End { get; } + public int Id { get; } + public Double NoSpeechProbability { get; } + public long SeekOffset { get; } + public TimeSpan Start { get; } + public float Temperature { get; } public string Text { get; } public IReadOnlyList TokenIds { get; } } - public readonly struct TranscribedWord { + public sealed class TranscribedWord { public TranscribedWord(); public TimeSpan End { get; } public TimeSpan Start { get; } public string Word { get; } } - [Flags] - public enum AudioTimestampGranularities { - Default = 0, - Word = 1, - Segment = 2, - } - public enum AudioTranscriptionFormat { - Text = 0, - Simple = 1, - Verbose = 2, - Srt = 3, - Vtt = 4, - } - public enum AudioTranslationFormat { - Text = 0, - Simple = 1, - Verbose = 2, - Srt = 3, - Vtt = 4, - } - public enum GeneratedSpeechFormat { - Mp3 = 0, - Opus = 1, - Aac = 2, - Flac = 3, - Wav = 4, - Pcm = 5, - } - public enum GeneratedSpeechVoice { - Alloy = 0, - Echo = 1, - Fable = 2, - Onyx = 3, - Nova = 4, - Shimmer = 5, - } } namespace OpenAI.Batch { public class BatchClient { - public BatchClient(ApiKeyCredential credential, OpenAIClientOptions options = null); - public BatchClient(OpenAIClientOptions options = null); - protected BatchClient(ClientPipeline pipeline, Uri endpoint, OpenAIClientOptions options); protected BatchClient(); + public BatchClient(OpenAIClientOptions options = null); + public BatchClient(ApiKeyCredential credential, OpenAIClientOptions options = null); + protected internal BatchClient(ClientPipeline pipeline, Uri endpoint, OpenAIClientOptions options); public virtual ClientPipeline Pipeline { get; } public virtual ClientResult CancelBatch(string batchId, RequestOptions options); public virtual Task CancelBatchAsync(string batchId, RequestOptions options); @@ -840,22 +862,46 @@ namespace OpenAI.Batch { } } namespace OpenAI.Chat { + public class AssistantChatMessage : ChatMessage { + public AssistantChatMessage(ChatCompletion chatCompletion); + public AssistantChatMessage(ChatFunctionCall functionCall, string content = null); + public AssistantChatMessage(IEnumerable toolCalls, string content = null); + public AssistantChatMessage(string content); + public ChatFunctionCall FunctionCall { get; init; } + public string ParticipantName { get; init; } + public IList ToolCalls { get; } + protected override void WriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options); + } public class ChatClient { - public ChatClient(string model, ApiKeyCredential credential, OpenAIClientOptions options = null); - public ChatClient(string model, OpenAIClientOptions options = null); - protected ChatClient(ClientPipeline pipeline, string model, Uri endpoint, OpenAIClientOptions options); protected ChatClient(); + protected internal ChatClient(ClientPipeline pipeline, string model, Uri endpoint, OpenAIClientOptions options); + public ChatClient(string model, OpenAIClientOptions options = null); + public ChatClient(string model, ApiKeyCredential credential, OpenAIClientOptions options = null); public virtual ClientPipeline Pipeline { get; } - public virtual ClientResult CompleteChat(IEnumerable messages, ChatCompletionOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult CompleteChat(params ChatMessage[] messages); public virtual ClientResult CompleteChat(BinaryContent content, RequestOptions options = null); - public virtual Task> CompleteChatAsync(IEnumerable messages, ChatCompletionOptions options = null, CancellationToken cancellationToken = default); + public virtual ClientResult CompleteChat(IEnumerable messages, ChatCompletionOptions options = null, CancellationToken cancellationToken = null); public virtual Task> CompleteChatAsync(params ChatMessage[] messages); public virtual Task CompleteChatAsync(BinaryContent content, RequestOptions options = null); - public virtual ResultCollection CompleteChatStreaming(IEnumerable messages, ChatCompletionOptions options = null, CancellationToken cancellationToken = default); - public virtual ResultCollection CompleteChatStreaming(params ChatMessage[] messages); - public virtual AsyncResultCollection CompleteChatStreamingAsync(IEnumerable messages, ChatCompletionOptions options = null, CancellationToken cancellationToken = default); - public virtual AsyncResultCollection CompleteChatStreamingAsync(params ChatMessage[] messages); + public virtual Task> CompleteChatAsync(IEnumerable messages, ChatCompletionOptions options = null, CancellationToken cancellationToken = null); + public virtual CollectionResult CompleteChatStreaming(params ChatMessage[] messages); + public virtual CollectionResult CompleteChatStreaming(IEnumerable messages, ChatCompletionOptions options = null, CancellationToken cancellationToken = null); + public virtual AsyncCollectionResult CompleteChatStreamingAsync(params ChatMessage[] messages); + public virtual AsyncCollectionResult CompleteChatStreamingAsync(IEnumerable messages, ChatCompletionOptions options = null, CancellationToken cancellationToken = null); + } + public class ChatCompletion { + public IReadOnlyList Content { get; } + public IReadOnlyList ContentTokenLogProbabilities { get; } + public DateTimeOffset CreatedAt { get; } + public ChatFinishReason FinishReason { get; } + public ChatFunctionCall FunctionCall { get; } + public string Id { get; } + public string Model { get; } + public ChatMessageRole Role { get; } + public string SystemFingerprint { get; } + public IReadOnlyList ToolCalls { get; } + public ChatTokenUsage Usage { get; } + public override string ToString(); } public class ChatCompletionOptions { public ChatCompletionOptions(); @@ -877,31 +923,13 @@ namespace OpenAI.Chat { public float? TopP { get; init; } public string User { get; init; } } - public class AssistantChatMessage : ChatMessage { - public AssistantChatMessage(string content); - public AssistantChatMessage(IEnumerable toolCalls, string content = null); - public AssistantChatMessage(ChatFunctionCall functionCall, string content = null); - public AssistantChatMessage(ChatCompletion chatCompletion); - public ChatFunctionCall FunctionCall { get; init; } - public string ParticipantName { get; init; } - public IList ToolCalls { get; } - protected override void WriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options); + public sealed class ChatFinishReason { + public const ChatFinishReason ContentFilter = 2; + public const ChatFinishReason FunctionCall = 4; + public const ChatFinishReason Length = 1; + public const ChatFinishReason Stop = 0; + public const ChatFinishReason ToolCalls = 3; } - public class ChatCompletion { - public IReadOnlyList Content { get; } - public IReadOnlyList ContentTokenLogProbabilities { get; } - public DateTimeOffset CreatedAt { get; } - public ChatFinishReason FinishReason { get; } - public ChatFunctionCall FunctionCall { get; } - public string Id { get; } - public string Model { get; } - public ChatMessageRole Role { get; } - public string SystemFingerprint { get; } - public IReadOnlyList ToolCalls { get; } - public ChatTokenUsage Usage { get; } - public override string ToString(); - } - [Obsolete("This field is marked as deprecated.")] public class ChatFunction { public ChatFunction(string functionName, string functionDescription = null, BinaryData functionParameters = null); public string FunctionDescription { get; init; } @@ -921,16 +949,16 @@ namespace OpenAI.Chat { public abstract class ChatMessage { protected ChatMessage(); public IList Content { get; protected init; } - public static AssistantChatMessage CreateAssistantMessage(string content); - public static AssistantChatMessage CreateAssistantMessage(IEnumerable toolCalls, string content = null); - public static AssistantChatMessage CreateAssistantMessage(ChatFunctionCall functionCall, string content = null); public static AssistantChatMessage CreateAssistantMessage(ChatCompletion chatCompletion); + public static AssistantChatMessage CreateAssistantMessage(ChatFunctionCall functionCall, string content = null); + public static AssistantChatMessage CreateAssistantMessage(IEnumerable toolCalls, string content = null); + public static AssistantChatMessage CreateAssistantMessage(string content); public static FunctionChatMessage CreateFunctionMessage(string functionName, string content); public static SystemChatMessage CreateSystemMessage(string content); public static ToolChatMessage CreateToolChatMessage(string toolCallId, string content); - public static UserChatMessage CreateUserMessage(string content); - public static UserChatMessage CreateUserMessage(IEnumerable contentParts); public static UserChatMessage CreateUserMessage(params ChatMessageContentPart[] contentParts); + public static UserChatMessage CreateUserMessage(IEnumerable contentParts); + public static UserChatMessage CreateUserMessage(string content); public static implicit operator ChatMessage(string userMessage); protected abstract void WriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options); } @@ -941,24 +969,31 @@ namespace OpenAI.Chat { public Uri ImageUri { get; } public ChatMessageContentPartKind Kind { get; } public string Text { get; } - public static ChatMessageContentPart CreateImageMessageContentPart(Uri imageUri, ImageChatMessageContentPartDetail? imageDetail = null); public static ChatMessageContentPart CreateImageMessageContentPart(BinaryData imageBytes, string imageBytesMediaType, ImageChatMessageContentPartDetail? imageDetail = null); + public static ChatMessageContentPart CreateImageMessageContentPart(Uri imageUri, ImageChatMessageContentPartDetail? imageDetail = null); public static ChatMessageContentPart CreateTextMessageContentPart(string text); public static implicit operator ChatMessageContentPart(string content); public override string ToString(); } - public readonly struct ChatMessageContentPartKind : IEquatable { + public sealed class ChatMessageContentPartKind { public ChatMessageContentPartKind(string value); public static ChatMessageContentPartKind Image { get; } public static ChatMessageContentPartKind Text { get; } - public static bool operator ==(ChatMessageContentPartKind left, ChatMessageContentPartKind right); - public static implicit operator ChatMessageContentPartKind(string value); - public static bool operator !=(ChatMessageContentPartKind left, ChatMessageContentPartKind right); public bool Equals(ChatMessageContentPartKind other); public override bool Equals(object obj); public override int GetHashCode(); + public static bool operator ==(ChatMessageContentPartKind left, ChatMessageContentPartKind right); + public static implicit operator ChatMessageContentPartKind(string value); + public static bool operator !=(ChatMessageContentPartKind left, ChatMessageContentPartKind right); public override string ToString(); } + public sealed class ChatMessageRole { + public const ChatMessageRole Assistant = 2; + public const ChatMessageRole Function = 4; + public const ChatMessageRole System = 0; + public const ChatMessageRole Tool = 3; + public const ChatMessageRole User = 1; + } public class ChatResponseFormat { public static ChatResponseFormat JsonObject { get; } public static ChatResponseFormat Text { get; } @@ -993,15 +1028,15 @@ namespace OpenAI.Chat { public ChatToolCallKind Kind { get; } public static ChatToolCall CreateFunctionToolCall(string toolCallId, string functionName, string functionArguments); } - public readonly struct ChatToolCallKind : IEquatable { + public sealed class ChatToolCallKind { public ChatToolCallKind(string value); public static ChatToolCallKind Function { get; } - public static bool operator ==(ChatToolCallKind left, ChatToolCallKind right); - public static implicit operator ChatToolCallKind(string value); - public static bool operator !=(ChatToolCallKind left, ChatToolCallKind right); public bool Equals(ChatToolCallKind other); public override bool Equals(object obj); public override int GetHashCode(); + public static bool operator ==(ChatToolCallKind left, ChatToolCallKind right); + public static implicit operator ChatToolCallKind(string value); + public static bool operator !=(ChatToolCallKind left, ChatToolCallKind right); public override string ToString(); } public class ChatToolChoice { @@ -1010,34 +1045,33 @@ namespace OpenAI.Chat { public static ChatToolChoice None { get; } public static ChatToolChoice Required { get; } } - public readonly struct ChatToolKind : IEquatable { + public sealed class ChatToolKind { public ChatToolKind(string value); public static ChatToolKind Function { get; } - public static bool operator ==(ChatToolKind left, ChatToolKind right); - public static implicit operator ChatToolKind(string value); - public static bool operator !=(ChatToolKind left, ChatToolKind right); public bool Equals(ChatToolKind other); public override bool Equals(object obj); public override int GetHashCode(); + public static bool operator ==(ChatToolKind left, ChatToolKind right); + public static implicit operator ChatToolKind(string value); + public static bool operator !=(ChatToolKind left, ChatToolKind right); public override string ToString(); } - [Obsolete("This field is marked as deprecated.")] public class FunctionChatMessage : ChatMessage { public FunctionChatMessage(string functionName, string content = null); public string FunctionName { get; } protected override void WriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options); } - public readonly struct ImageChatMessageContentPartDetail : IEquatable { + public sealed class ImageChatMessageContentPartDetail { public ImageChatMessageContentPartDetail(string value); public static ImageChatMessageContentPartDetail Auto { get; } public static ImageChatMessageContentPartDetail High { get; } public static ImageChatMessageContentPartDetail Low { get; } - public static bool operator ==(ImageChatMessageContentPartDetail left, ImageChatMessageContentPartDetail right); - public static implicit operator ImageChatMessageContentPartDetail(string value); - public static bool operator !=(ImageChatMessageContentPartDetail left, ImageChatMessageContentPartDetail right); public bool Equals(ImageChatMessageContentPartDetail other); public override bool Equals(object obj); public override int GetHashCode(); + public static bool operator ==(ImageChatMessageContentPartDetail left, ImageChatMessageContentPartDetail right); + public static implicit operator ImageChatMessageContentPartDetail(string value); + public static bool operator !=(ImageChatMessageContentPartDetail left, ImageChatMessageContentPartDetail right); public override string ToString(); } public class StreamingChatCompletionUpdate { @@ -1075,56 +1109,42 @@ namespace OpenAI.Chat { protected override void WriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options); } public class UserChatMessage : ChatMessage { - public UserChatMessage(string content); - public UserChatMessage(IEnumerable content); public UserChatMessage(params ChatMessageContentPart[] content); + public UserChatMessage(IEnumerable content); + public UserChatMessage(string content); public string ParticipantName { get; init; } protected override void WriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options); } - public enum ChatFinishReason { - Stop = 0, - Length = 1, - ContentFilter = 2, - ToolCalls = 3, - FunctionCall = 4, - } - public enum ChatMessageRole { - System = 0, - User = 1, - Assistant = 2, - Tool = 3, - Function = 4, - } } namespace OpenAI.Embeddings { + public class Embedding { + public int Index { get; } + public ReadOnlyMemory Vector { get; } + } public class EmbeddingClient { - public EmbeddingClient(string model, ApiKeyCredential credential, OpenAIClientOptions options = null); - public EmbeddingClient(string model, OpenAIClientOptions options = null); - protected EmbeddingClient(ClientPipeline pipeline, string model, Uri endpoint, OpenAIClientOptions options); protected EmbeddingClient(); + protected internal EmbeddingClient(ClientPipeline pipeline, string model, Uri endpoint, OpenAIClientOptions options); + public EmbeddingClient(string model, OpenAIClientOptions options = null); + public EmbeddingClient(string model, ApiKeyCredential credential, OpenAIClientOptions options = null); public virtual ClientPipeline Pipeline { get; } - public virtual ClientResult GenerateEmbedding(string input, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = default); - public virtual Task> GenerateEmbeddingAsync(string input, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = default); - public virtual ClientResult GenerateEmbeddings(IEnumerable inputs, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = default); - public virtual ClientResult GenerateEmbeddings(IEnumerable> inputs, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = default); + public virtual ClientResult GenerateEmbedding(string input, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = null); + public virtual Task> GenerateEmbeddingAsync(string input, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = null); public virtual ClientResult GenerateEmbeddings(BinaryContent content, RequestOptions options = null); - public virtual Task> GenerateEmbeddingsAsync(IEnumerable inputs, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = default); - public virtual Task> GenerateEmbeddingsAsync(IEnumerable> inputs, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = default); + public virtual ClientResult GenerateEmbeddings(IEnumerable> inputs, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = null); + public virtual ClientResult GenerateEmbeddings(IEnumerable inputs, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = null); public virtual Task GenerateEmbeddingsAsync(BinaryContent content, RequestOptions options = null); + public virtual Task> GenerateEmbeddingsAsync(IEnumerable> inputs, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = null); + public virtual Task> GenerateEmbeddingsAsync(IEnumerable inputs, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = null); + } + public class EmbeddingCollection { + public string Model { get; } + public EmbeddingTokenUsage Usage { get; } } public class EmbeddingGenerationOptions { public EmbeddingGenerationOptions(); public int? Dimensions { get; init; } public string User { get; init; } } - public class Embedding { - public int Index { get; } - public ReadOnlyMemory Vector { get; } - } - public class EmbeddingCollection : ReadOnlyCollection { - public string Model { get; } - public EmbeddingTokenUsage Usage { get; } - } public class EmbeddingTokenUsage { public int InputTokens { get; } public int TotalTokens { get; } @@ -1132,54 +1152,69 @@ namespace OpenAI.Embeddings { } namespace OpenAI.Files { public class FileClient { - public FileClient(ApiKeyCredential credential, OpenAIClientOptions options = null); - public FileClient(OpenAIClientOptions options = null); - protected FileClient(ClientPipeline pipeline, Uri endpoint, OpenAIClientOptions options); protected FileClient(); + public FileClient(OpenAIClientOptions options = null); + public FileClient(ApiKeyCredential credential, OpenAIClientOptions options = null); + protected internal FileClient(ClientPipeline pipeline, Uri endpoint, OpenAIClientOptions options); public virtual ClientPipeline Pipeline { get; } - public virtual ClientResult DeleteFile(string fileId, CancellationToken cancellationToken = default); + public virtual IncrementalUploadJob CreateIncrementalUploadJob(BinaryContent content, RequestOptions options); + public virtual Task CreateIncrementalUploadJobAsync(BinaryContent content, RequestOptions options); public virtual ClientResult DeleteFile(OpenAIFileInfo file); public virtual ClientResult DeleteFile(string fileId, RequestOptions options); - public virtual Task> DeleteFileAsync(string fileId, CancellationToken cancellationToken = default); + public virtual ClientResult DeleteFile(string fileId, CancellationToken cancellationToken = null); public virtual Task> DeleteFileAsync(OpenAIFileInfo file); public virtual Task DeleteFileAsync(string fileId, RequestOptions options); - public virtual ClientResult DownloadFile(string fileId, CancellationToken cancellationToken = default); + public virtual Task> DeleteFileAsync(string fileId, CancellationToken cancellationToken = null); public virtual ClientResult DownloadFile(OpenAIFileInfo file); public virtual ClientResult DownloadFile(string fileId, RequestOptions options); - public virtual Task> DownloadFileAsync(string fileId, CancellationToken cancellationToken = default); + public virtual ClientResult DownloadFile(string fileId, CancellationToken cancellationToken = null); public virtual Task> DownloadFileAsync(OpenAIFileInfo file); public virtual Task DownloadFileAsync(string fileId, RequestOptions options); - public virtual ClientResult GetFile(string fileId, CancellationToken cancellationToken = default); + public virtual Task> DownloadFileAsync(string fileId, CancellationToken cancellationToken = null); public virtual ClientResult GetFile(string fileId, RequestOptions options); - public virtual Task> GetFileAsync(string fileId, CancellationToken cancellationToken = default); + public virtual ClientResult GetFile(string fileId, CancellationToken cancellationToken = null); public virtual Task GetFileAsync(string fileId, RequestOptions options); - public virtual ClientResult GetFiles(OpenAIFilePurpose? purpose = null, CancellationToken cancellationToken = default); + public virtual Task> GetFileAsync(string fileId, CancellationToken cancellationToken = null); + public virtual ClientResult GetFiles(OpenAIFilePurpose? purpose = null, CancellationToken cancellationToken = null); public virtual ClientResult GetFiles(string purpose, RequestOptions options); - public virtual Task> GetFilesAsync(OpenAIFilePurpose? purpose = null, CancellationToken cancellationToken = default); + public virtual Task> GetFilesAsync(OpenAIFilePurpose? purpose = null, CancellationToken cancellationToken = null); public virtual Task GetFilesAsync(string purpose, RequestOptions options); - public virtual ClientResult UploadFile(Stream file, string filename, FileUploadPurpose purpose, CancellationToken cancellationToken = default); public virtual ClientResult UploadFile(BinaryData file, string filename, FileUploadPurpose purpose); - public virtual ClientResult UploadFile(string filePath, FileUploadPurpose purpose); public virtual ClientResult UploadFile(BinaryContent content, string contentType, RequestOptions options = null); - public virtual Task> UploadFileAsync(Stream file, string filename, FileUploadPurpose purpose, CancellationToken cancellationToken = default); + public virtual ClientResult UploadFile(Stream file, string filename, FileUploadPurpose purpose, CancellationToken cancellationToken = null); + public virtual ClientResult UploadFile(string filePath, FileUploadPurpose purpose); public virtual Task> UploadFileAsync(BinaryData file, string filename, FileUploadPurpose purpose); - public virtual Task> UploadFileAsync(string filePath, FileUploadPurpose purpose); public virtual Task UploadFileAsync(BinaryContent content, string contentType, RequestOptions options = null); + public virtual Task> UploadFileAsync(Stream file, string filename, FileUploadPurpose purpose, CancellationToken cancellationToken = null); + public virtual Task> UploadFileAsync(string filePath, FileUploadPurpose purpose); } - public readonly struct FileUploadPurpose : IEquatable { + public sealed class FileUploadPurpose { public FileUploadPurpose(string value); public static FileUploadPurpose Assistants { get; } public static FileUploadPurpose Batch { get; } public static FileUploadPurpose FineTune { get; } public static FileUploadPurpose Vision { get; } - public static bool operator ==(FileUploadPurpose left, FileUploadPurpose right); - public static implicit operator FileUploadPurpose(string value); - public static bool operator !=(FileUploadPurpose left, FileUploadPurpose right); public bool Equals(FileUploadPurpose other); public override bool Equals(object obj); public override int GetHashCode(); + public static bool operator ==(FileUploadPurpose left, FileUploadPurpose right); + public static implicit operator FileUploadPurpose(string value); + public static bool operator !=(FileUploadPurpose left, FileUploadPurpose right); public override string ToString(); } + public class IncrementalUploadJob { + public DateTimeOffset CreatedAt { get; } + public DateTimeOffset ExpiresAt { get; } + public string Id { get; } + public ContinuationToken RehydrationToken { get; } + public virtual ClientResult AddDataPart(string jobId, BinaryContent content, string contentType, RequestOptions options); + public virtual Task AddDataPartAsync(string jobId, BinaryContent content, string contentType, RequestOptions options); + public virtual ClientResult Cancel(string jobId, RequestOptions options); + public virtual Task CancelAsync(string jobId, RequestOptions options); + public virtual ClientResult Complete(string jobId, BinaryContent content, RequestOptions options); + public virtual Task CompleteAsync(string jobId, BinaryContent content, RequestOptions options); + public static IncrementalUploadJob Rehydrate(FileClient client, ContinuationToken rehydrationToken); + } public class OpenAIFileInfo { public DateTimeOffset CreatedAt { get; } public string Filename { get; } @@ -1189,9 +1224,9 @@ namespace OpenAI.Files { public OpenAIFileStatus Status { get; } public string StatusDetails { get; } } - public class OpenAIFileInfoCollection : ReadOnlyCollection { + public class OpenAIFileInfoCollection { } - public readonly struct OpenAIFilePurpose : IEquatable { + public sealed class OpenAIFilePurpose { public OpenAIFilePurpose(string value); public static OpenAIFilePurpose Assistants { get; } public static OpenAIFilePurpose AssistantsOutput { get; } @@ -1200,34 +1235,34 @@ namespace OpenAI.Files { public static OpenAIFilePurpose FineTune { get; } public static OpenAIFilePurpose FineTuneResults { get; } public static OpenAIFilePurpose Vision { get; } - public static bool operator ==(OpenAIFilePurpose left, OpenAIFilePurpose right); - public static implicit operator OpenAIFilePurpose(string value); - public static bool operator !=(OpenAIFilePurpose left, OpenAIFilePurpose right); public bool Equals(OpenAIFilePurpose other); public override bool Equals(object obj); public override int GetHashCode(); + public static bool operator ==(OpenAIFilePurpose left, OpenAIFilePurpose right); + public static implicit operator OpenAIFilePurpose(string value); + public static bool operator !=(OpenAIFilePurpose left, OpenAIFilePurpose right); public override string ToString(); } - public readonly struct OpenAIFileStatus : IEquatable { + public sealed class OpenAIFileStatus { public OpenAIFileStatus(string value); public static OpenAIFileStatus Error { get; } public static OpenAIFileStatus Processed { get; } public static OpenAIFileStatus Uploaded { get; } - public static bool operator ==(OpenAIFileStatus left, OpenAIFileStatus right); - public static implicit operator OpenAIFileStatus(string value); - public static bool operator !=(OpenAIFileStatus left, OpenAIFileStatus right); public bool Equals(OpenAIFileStatus other); public override bool Equals(object obj); public override int GetHashCode(); + public static bool operator ==(OpenAIFileStatus left, OpenAIFileStatus right); + public static implicit operator OpenAIFileStatus(string value); + public static bool operator !=(OpenAIFileStatus left, OpenAIFileStatus right); public override string ToString(); } } namespace OpenAI.FineTuning { public class FineTuningClient { - public FineTuningClient(ApiKeyCredential credential, OpenAIClientOptions options = null); - public FineTuningClient(OpenAIClientOptions options = null); - protected FineTuningClient(ClientPipeline pipeline, Uri endpoint, OpenAIClientOptions options); protected FineTuningClient(); + public FineTuningClient(OpenAIClientOptions options = null); + public FineTuningClient(ApiKeyCredential credential, OpenAIClientOptions options = null); + protected internal FineTuningClient(ClientPipeline pipeline, Uri endpoint, OpenAIClientOptions options); public virtual ClientPipeline Pipeline { get; } public virtual ClientResult CancelJob(string jobId, RequestOptions options); public virtual Task CancelJobAsync(string jobId, RequestOptions options); @@ -1244,46 +1279,81 @@ namespace OpenAI.FineTuning { } } namespace OpenAI.Images { + public class GeneratedImage { + public BinaryData ImageBytes { get; } + public Uri ImageUri { get; } + public string RevisedPrompt { get; } + } + public class GeneratedImageCollection { + public DateTimeOffset Created { get; } + public DateTimeOffset CreatedAt { get; } + } + public sealed class GeneratedImageFormat { + public const GeneratedImageFormat Bytes = 0; + public const GeneratedImageFormat Uri = 1; + } + public sealed class GeneratedImageQuality { + public const GeneratedImageQuality High = 0; + public const GeneratedImageQuality Standard = 1; + } + public sealed class GeneratedImageSize { + public static readonly GeneratedImageSize W1024xH1024; + public static readonly GeneratedImageSize W1024xH1792; + public static readonly GeneratedImageSize W1792xH1024; + public static readonly GeneratedImageSize W256xH256; + public static readonly GeneratedImageSize W512xH512; + public GeneratedImageSize(int width, int height); + public bool Equals(GeneratedImageSize other); + public override bool Equals(object obj); + public override int GetHashCode(); + public static bool operator ==(GeneratedImageSize left, GeneratedImageSize right); + public static bool operator !=(GeneratedImageSize left, GeneratedImageSize right); + public override string ToString(); + } + public sealed class GeneratedImageStyle { + public const GeneratedImageStyle Natural = 1; + public const GeneratedImageStyle Vivid = 0; + } public class ImageClient { - public ImageClient(string model, ApiKeyCredential credential, OpenAIClientOptions options = null); - public ImageClient(string model, OpenAIClientOptions options = null); - protected ImageClient(ClientPipeline pipeline, string model, Uri endpoint, OpenAIClientOptions options); protected ImageClient(); + protected internal ImageClient(ClientPipeline pipeline, string model, Uri endpoint, OpenAIClientOptions options); + public ImageClient(string model, OpenAIClientOptions options = null); + public ImageClient(string model, ApiKeyCredential credential, OpenAIClientOptions options = null); public virtual ClientPipeline Pipeline { get; } - public virtual ClientResult GenerateImage(string prompt, ImageGenerationOptions options = null, CancellationToken cancellationToken = default); - public virtual Task> GenerateImageAsync(string prompt, ImageGenerationOptions options = null, CancellationToken cancellationToken = default); - public virtual ClientResult GenerateImageEdit(Stream image, string imageFilename, string prompt, ImageEditOptions options = null, CancellationToken cancellationToken = default); + public virtual ClientResult GenerateImage(string prompt, ImageGenerationOptions options = null, CancellationToken cancellationToken = null); + public virtual Task> GenerateImageAsync(string prompt, ImageGenerationOptions options = null, CancellationToken cancellationToken = null); + public virtual ClientResult GenerateImageEdit(Stream image, string imageFilename, string prompt, ImageEditOptions options = null, CancellationToken cancellationToken = null); + public virtual ClientResult GenerateImageEdit(Stream image, string imageFilename, string prompt, Stream mask, string maskFilename, ImageEditOptions options = null, CancellationToken cancellationToken = null); public virtual ClientResult GenerateImageEdit(string imageFilePath, string prompt, ImageEditOptions options = null); - public virtual ClientResult GenerateImageEdit(Stream image, string imageFilename, string prompt, Stream mask, string maskFilename, ImageEditOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult GenerateImageEdit(string imageFilePath, string prompt, string maskFilePath, ImageEditOptions options = null); - public virtual Task> GenerateImageEditAsync(Stream image, string imageFilename, string prompt, ImageEditOptions options = null, CancellationToken cancellationToken = default); + public virtual Task> GenerateImageEditAsync(Stream image, string imageFilename, string prompt, ImageEditOptions options = null, CancellationToken cancellationToken = null); + public virtual Task> GenerateImageEditAsync(Stream image, string imageFilename, string prompt, Stream mask, string maskFilename, ImageEditOptions options = null, CancellationToken cancellationToken = null); public virtual Task> GenerateImageEditAsync(string imageFilePath, string prompt, ImageEditOptions options = null); - public virtual Task> GenerateImageEditAsync(Stream image, string imageFilename, string prompt, Stream mask, string maskFilename, ImageEditOptions options = null, CancellationToken cancellationToken = default); public virtual Task> GenerateImageEditAsync(string imageFilePath, string prompt, string maskFilePath, ImageEditOptions options = null); - public virtual ClientResult GenerateImageEdits(Stream image, string imageFilename, string prompt, int imageCount, ImageEditOptions options = null, CancellationToken cancellationToken = default); + public virtual ClientResult GenerateImageEdits(BinaryContent content, string contentType, RequestOptions options = null); + public virtual ClientResult GenerateImageEdits(Stream image, string imageFilename, string prompt, int imageCount, ImageEditOptions options = null, CancellationToken cancellationToken = null); + public virtual ClientResult GenerateImageEdits(Stream image, string imageFilename, string prompt, Stream mask, string maskFilename, int imageCount, ImageEditOptions options = null, CancellationToken cancellationToken = null); public virtual ClientResult GenerateImageEdits(string imageFilePath, string prompt, int imageCount, ImageEditOptions options = null); - public virtual ClientResult GenerateImageEdits(Stream image, string imageFilename, string prompt, Stream mask, string maskFilename, int imageCount, ImageEditOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult GenerateImageEdits(string imageFilePath, string prompt, string maskFilePath, int imageCount, ImageEditOptions options = null); - public virtual ClientResult GenerateImageEdits(BinaryContent content, string contentType, RequestOptions options = null); - public virtual Task> GenerateImageEditsAsync(Stream image, string imageFilename, string prompt, int imageCount, ImageEditOptions options = null, CancellationToken cancellationToken = default); + public virtual Task GenerateImageEditsAsync(BinaryContent content, string contentType, RequestOptions options = null); + public virtual Task> GenerateImageEditsAsync(Stream image, string imageFilename, string prompt, int imageCount, ImageEditOptions options = null, CancellationToken cancellationToken = null); + public virtual Task> GenerateImageEditsAsync(Stream image, string imageFilename, string prompt, Stream mask, string maskFilename, int imageCount, ImageEditOptions options = null, CancellationToken cancellationToken = null); public virtual Task> GenerateImageEditsAsync(string imageFilePath, string prompt, int imageCount, ImageEditOptions options = null); - public virtual Task> GenerateImageEditsAsync(Stream image, string imageFilename, string prompt, Stream mask, string maskFilename, int imageCount, ImageEditOptions options = null, CancellationToken cancellationToken = default); public virtual Task> GenerateImageEditsAsync(string imageFilePath, string prompt, string maskFilePath, int imageCount, ImageEditOptions options = null); - public virtual Task GenerateImageEditsAsync(BinaryContent content, string contentType, RequestOptions options = null); - public virtual ClientResult GenerateImages(string prompt, int imageCount, ImageGenerationOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult GenerateImages(BinaryContent content, RequestOptions options = null); - public virtual Task> GenerateImagesAsync(string prompt, int imageCount, ImageGenerationOptions options = null, CancellationToken cancellationToken = default); + public virtual ClientResult GenerateImages(string prompt, int imageCount, ImageGenerationOptions options = null, CancellationToken cancellationToken = null); public virtual Task GenerateImagesAsync(BinaryContent content, RequestOptions options = null); - public virtual ClientResult GenerateImageVariation(Stream image, string imageFilename, ImageVariationOptions options = null, CancellationToken cancellationToken = default); + public virtual Task> GenerateImagesAsync(string prompt, int imageCount, ImageGenerationOptions options = null, CancellationToken cancellationToken = null); + public virtual ClientResult GenerateImageVariation(Stream image, string imageFilename, ImageVariationOptions options = null, CancellationToken cancellationToken = null); public virtual ClientResult GenerateImageVariation(string imageFilePath, ImageVariationOptions options = null); - public virtual Task> GenerateImageVariationAsync(Stream image, string imageFilename, ImageVariationOptions options = null, CancellationToken cancellationToken = default); + public virtual Task> GenerateImageVariationAsync(Stream image, string imageFilename, ImageVariationOptions options = null, CancellationToken cancellationToken = null); public virtual Task> GenerateImageVariationAsync(string imageFilePath, ImageVariationOptions options = null); - public virtual ClientResult GenerateImageVariations(Stream image, string imageFilename, int imageCount, ImageVariationOptions options = null, CancellationToken cancellationToken = default); - public virtual ClientResult GenerateImageVariations(string imageFilePath, int imageCount, ImageVariationOptions options = null); public virtual ClientResult GenerateImageVariations(BinaryContent content, string contentType, RequestOptions options = null); - public virtual Task> GenerateImageVariationsAsync(Stream image, string imageFilename, int imageCount, ImageVariationOptions options = null, CancellationToken cancellationToken = default); - public virtual Task> GenerateImageVariationsAsync(string imageFilePath, int imageCount, ImageVariationOptions options = null); + public virtual ClientResult GenerateImageVariations(Stream image, string imageFilename, int imageCount, ImageVariationOptions options = null, CancellationToken cancellationToken = null); + public virtual ClientResult GenerateImageVariations(string imageFilePath, int imageCount, ImageVariationOptions options = null); public virtual Task GenerateImageVariationsAsync(BinaryContent content, string contentType, RequestOptions options = null); + public virtual Task> GenerateImageVariationsAsync(Stream image, string imageFilename, int imageCount, ImageVariationOptions options = null, CancellationToken cancellationToken = null); + public virtual Task> GenerateImageVariationsAsync(string imageFilePath, int imageCount, ImageVariationOptions options = null); } public class ImageEditOptions { public ImageEditOptions(); @@ -1305,57 +1375,22 @@ namespace OpenAI.Images { public GeneratedImageSize? Size { get; init; } public string User { get; init; } } - public class GeneratedImage { - public BinaryData ImageBytes { get; } - public Uri ImageUri { get; } - public string RevisedPrompt { get; } - } - public class GeneratedImageCollection : ReadOnlyCollection { - public DateTimeOffset Created { get; } - public DateTimeOffset CreatedAt { get; } - } - public readonly struct GeneratedImageSize : IEquatable { - public GeneratedImageSize(int width, int height); - public static readonly GeneratedImageSize W1024xH1024; - public static readonly GeneratedImageSize W1024xH1792; - public static readonly GeneratedImageSize W1792xH1024; - public static readonly GeneratedImageSize W256xH256; - public static readonly GeneratedImageSize W512xH512; - public static bool operator ==(GeneratedImageSize left, GeneratedImageSize right); - public static bool operator !=(GeneratedImageSize left, GeneratedImageSize right); - public bool Equals(GeneratedImageSize other); - public override bool Equals(object obj); - public override int GetHashCode(); - public override string ToString(); - } - public enum GeneratedImageFormat { - Bytes = 0, - Uri = 1, - } - public enum GeneratedImageQuality { - High = 0, - Standard = 1, - } - public enum GeneratedImageStyle { - Vivid = 0, - Natural = 1, - } } namespace OpenAI.Models { public class ModelClient { - public ModelClient(ApiKeyCredential credential, OpenAIClientOptions options = null); - public ModelClient(OpenAIClientOptions options = null); - protected ModelClient(ClientPipeline pipeline, Uri endpoint, OpenAIClientOptions options); protected ModelClient(); + public ModelClient(OpenAIClientOptions options = null); + public ModelClient(ApiKeyCredential credential, OpenAIClientOptions options = null); + protected internal ModelClient(ClientPipeline pipeline, Uri endpoint, OpenAIClientOptions options); public virtual ClientPipeline Pipeline { get; } - public virtual ClientResult DeleteModel(string model); public virtual ClientResult DeleteModel(string model, RequestOptions options); - public virtual Task> DeleteModelAsync(string model); + public virtual ClientResult DeleteModel(string model); public virtual Task DeleteModelAsync(string model, RequestOptions options); - public virtual ClientResult GetModel(string model); + public virtual Task> DeleteModelAsync(string model); public virtual ClientResult GetModel(string model, RequestOptions options); - public virtual Task> GetModelAsync(string model); + public virtual ClientResult GetModel(string model); public virtual Task GetModelAsync(string model, RequestOptions options); + public virtual Task> GetModelAsync(string model); public virtual ClientResult GetModels(); public virtual ClientResult GetModels(RequestOptions options); public virtual Task> GetModelsAsync(); @@ -1366,23 +1401,10 @@ namespace OpenAI.Models { public string Id { get; } public string OwnedBy { get; } } - public class OpenAIModelInfoCollection : ReadOnlyCollection { + public class OpenAIModelInfoCollection { } } namespace OpenAI.Moderations { - public class ModerationClient { - public ModerationClient(string model, ApiKeyCredential credential, OpenAIClientOptions options = null); - public ModerationClient(string model, OpenAIClientOptions options = null); - protected ModerationClient(ClientPipeline pipeline, string model, Uri endpoint, OpenAIClientOptions options); - protected ModerationClient(); - public virtual ClientPipeline Pipeline { get; } - public virtual ClientResult ClassifyTextInput(string input, CancellationToken cancellationToken = default); - public virtual Task> ClassifyTextInputAsync(string input, CancellationToken cancellationToken = default); - public virtual ClientResult ClassifyTextInputs(IEnumerable inputs, CancellationToken cancellationToken = default); - public virtual ClientResult ClassifyTextInputs(BinaryContent content, RequestOptions options = null); - public virtual Task> ClassifyTextInputsAsync(IEnumerable inputs, CancellationToken cancellationToken = default); - public virtual Task ClassifyTextInputsAsync(BinaryContent content, RequestOptions options = null); - } public class ModerationCategories { public bool Harassment { get; } public bool HarassmentThreatening { get; } @@ -1409,7 +1431,20 @@ namespace OpenAI.Moderations { public float Violence { get; } public float ViolenceGraphic { get; } } - public class ModerationCollection : ReadOnlyCollection { + public class ModerationClient { + protected ModerationClient(); + protected internal ModerationClient(ClientPipeline pipeline, string model, Uri endpoint, OpenAIClientOptions options); + public ModerationClient(string model, OpenAIClientOptions options = null); + public ModerationClient(string model, ApiKeyCredential credential, OpenAIClientOptions options = null); + public virtual ClientPipeline Pipeline { get; } + public virtual ClientResult ClassifyTextInput(string input, CancellationToken cancellationToken = null); + public virtual Task> ClassifyTextInputAsync(string input, CancellationToken cancellationToken = null); + public virtual ClientResult ClassifyTextInputs(BinaryContent content, RequestOptions options = null); + public virtual ClientResult ClassifyTextInputs(IEnumerable inputs, CancellationToken cancellationToken = null); + public virtual Task ClassifyTextInputsAsync(BinaryContent content, RequestOptions options = null); + public virtual Task> ClassifyTextInputsAsync(IEnumerable inputs, CancellationToken cancellationToken = null); + } + public class ModerationCollection { public string Id { get; } public string Model { get; } } @@ -1420,88 +1455,143 @@ namespace OpenAI.Moderations { } } namespace OpenAI.VectorStores { - internal [Experimental("OPENAI001")] + public abstract class FileChunkingStrategy { + protected FileChunkingStrategy(); + public static FileChunkingStrategy Auto { get; } + public static FileChunkingStrategy Unknown { get; } + public static FileChunkingStrategy CreateStaticStrategy(int maxTokensPerChunk, int overlappingTokenCount); + } + public class StaticFileChunkingStrategy : FileChunkingStrategy { + public StaticFileChunkingStrategy(int maxTokensPerChunk, int overlappingTokenCount); + public int MaxTokensPerChunk { get; } + public int OverlappingTokenCount { get; } + } + public class VectorStore { + public DateTimeOffset CreatedAt { get; } + public VectorStoreExpirationPolicy ExpirationPolicy { get; } + public DateTimeOffset? ExpiresAt { get; } + public VectorStoreFileCounts FileCounts { get; } + public string Id { get; } + public DateTimeOffset? LastActiveAt { get; } + public IReadOnlyDictionary Metadata { get; } + public string Name { get; } + public VectorStoreStatus Status { get; } + public int UsageBytes { get; } + } + public class VectorStoreBatchFileJob { + public string BatchId { get; } + public DateTimeOffset CreatedAt { get; } + public VectorStoreFileCounts FileCounts { get; } + public VectorStoreBatchFileJobStatus Status { get; } + public string VectorStoreId { get; } + } + public sealed class VectorStoreBatchFileJobStatus { + public VectorStoreBatchFileJobStatus(string value); + public static VectorStoreBatchFileJobStatus Cancelled { get; } + public static VectorStoreBatchFileJobStatus Completed { get; } + public static VectorStoreBatchFileJobStatus Failed { get; } + public static VectorStoreBatchFileJobStatus InProgress { get; } + public bool Equals(VectorStoreBatchFileJobStatus other); + public override bool Equals(object obj); + public override int GetHashCode(); + public static bool operator ==(VectorStoreBatchFileJobStatus left, VectorStoreBatchFileJobStatus right); + public static implicit operator VectorStoreBatchFileJobStatus(string value); + public static bool operator !=(VectorStoreBatchFileJobStatus left, VectorStoreBatchFileJobStatus right); + public override string ToString(); + } public class VectorStoreClient { - public virtual ClientResult AddFileToVectorStore(VectorStore vectorStore, OpenAIFileInfo file); - public virtual ClientResult AddFileToVectorStore(string vectorStoreId, string fileId, CancellationToken cancellationToken = default); + protected VectorStoreClient(); + public VectorStoreClient(OpenAIClientOptions options = null); + public VectorStoreClient(ApiKeyCredential credential, OpenAIClientOptions options = null); + protected internal VectorStoreClient(ClientPipeline pipeline, Uri endpoint, OpenAIClientOptions options); + public virtual ClientPipeline Pipeline { get; } + public virtual ClientResult AddFileToVectorStore(VectorStore vectorStore, Files.OpenAIFileInfo file); public virtual ClientResult AddFileToVectorStore(string vectorStoreId, BinaryContent content, RequestOptions options = null); - public virtual Task> AddFileToVectorStoreAsync(VectorStore vectorStore, OpenAIFileInfo file); - public virtual Task> AddFileToVectorStoreAsync(string vectorStoreId, string fileId, CancellationToken cancellationToken = default); + public virtual ClientResult AddFileToVectorStore(string vectorStoreId, string fileId, CancellationToken cancellationToken = null); + public virtual Task> AddFileToVectorStoreAsync(VectorStore vectorStore, Files.OpenAIFileInfo file); public virtual Task AddFileToVectorStoreAsync(string vectorStoreId, BinaryContent content, RequestOptions options = null); + public virtual Task> AddFileToVectorStoreAsync(string vectorStoreId, string fileId, CancellationToken cancellationToken = null); public virtual ClientResult CancelBatchFileJob(VectorStoreBatchFileJob batchJob); public virtual ClientResult CancelBatchFileJob(string vectorStoreId, string batchId, RequestOptions options); - public virtual ClientResult CancelBatchFileJob(string vectorStoreId, string batchJobId, CancellationToken cancellationToken = default); + public virtual ClientResult CancelBatchFileJob(string vectorStoreId, string batchJobId, CancellationToken cancellationToken = null); public virtual Task> CancelBatchFileJobAsync(VectorStoreBatchFileJob batchJob); public virtual Task CancelBatchFileJobAsync(string vectorStoreId, string batchId, RequestOptions options); - public virtual Task> CancelBatchFileJobAsync(string vectorStoreId, string batchJobId, CancellationToken cancellationToken = default); - public virtual ClientResult CreateBatchFileJob(VectorStore vectorStore, IEnumerable files); + public virtual Task> CancelBatchFileJobAsync(string vectorStoreId, string batchJobId, CancellationToken cancellationToken = null); + public virtual ClientResult CreateBatchFileJob(VectorStore vectorStore, IEnumerable files); public virtual ClientResult CreateBatchFileJob(string vectorStoreId, BinaryContent content, RequestOptions options = null); - public virtual ClientResult CreateBatchFileJob(string vectorStoreId, IEnumerable fileIds, CancellationToken cancellationToken = default); - public virtual Task> CreateBatchFileJobAsync(VectorStore vectorStore, IEnumerable files); + public virtual ClientResult CreateBatchFileJob(string vectorStoreId, IEnumerable fileIds, CancellationToken cancellationToken = null); + public virtual Task> CreateBatchFileJobAsync(VectorStore vectorStore, IEnumerable files); public virtual Task CreateBatchFileJobAsync(string vectorStoreId, BinaryContent content, RequestOptions options = null); - public virtual Task> CreateBatchFileJobAsync(string vectorStoreId, IEnumerable fileIds, CancellationToken cancellationToken = default); - public virtual ClientResult CreateVectorStore(VectorStoreCreationOptions vectorStore = null, CancellationToken cancellationToken = default); + public virtual Task> CreateBatchFileJobAsync(string vectorStoreId, IEnumerable fileIds, CancellationToken cancellationToken = null); + public virtual ClientResult CreateVectorStore(VectorStoreCreationOptions vectorStore = null, CancellationToken cancellationToken = null); public virtual ClientResult CreateVectorStore(BinaryContent content, RequestOptions options = null); - public virtual Task> CreateVectorStoreAsync(VectorStoreCreationOptions vectorStore = null, CancellationToken cancellationToken = default); + public virtual Task> CreateVectorStoreAsync(VectorStoreCreationOptions vectorStore = null, CancellationToken cancellationToken = null); public virtual Task CreateVectorStoreAsync(BinaryContent content, RequestOptions options = null); public virtual ClientResult DeleteVectorStore(VectorStore vectorStore); public virtual ClientResult DeleteVectorStore(string vectorStoreId, RequestOptions options); - public virtual ClientResult DeleteVectorStore(string vectorStoreId, CancellationToken cancellationToken = default); + public virtual ClientResult DeleteVectorStore(string vectorStoreId, CancellationToken cancellationToken = null); public virtual Task> DeleteVectorStoreAsync(VectorStore vectorStore); public virtual Task DeleteVectorStoreAsync(string vectorStoreId, RequestOptions options); - public virtual Task> DeleteVectorStoreAsync(string vectorStoreId, CancellationToken cancellationToken = default); + public virtual Task> DeleteVectorStoreAsync(string vectorStoreId, CancellationToken cancellationToken = null); public virtual ClientResult GetBatchFileJob(VectorStoreBatchFileJob batchJob); public virtual ClientResult GetBatchFileJob(string vectorStoreId, string batchId, RequestOptions options); - public virtual ClientResult GetBatchFileJob(string vectorStoreId, string batchJobId, CancellationToken cancellationToken = default); + public virtual ClientResult GetBatchFileJob(string vectorStoreId, string batchJobId, CancellationToken cancellationToken = null); public virtual Task> GetBatchFileJobAsync(VectorStoreBatchFileJob batchJob); public virtual Task GetBatchFileJobAsync(string vectorStoreId, string batchId, RequestOptions options); - public virtual Task> GetBatchFileJobAsync(string vectorStoreId, string batchJobId, CancellationToken cancellationToken = default); - public virtual ClientResult GetFileAssociation(VectorStore vectorStore, OpenAIFileInfo file); + public virtual Task> GetBatchFileJobAsync(string vectorStoreId, string batchJobId, CancellationToken cancellationToken = null); + public virtual ClientResult GetFileAssociation(VectorStore vectorStore, Files.OpenAIFileInfo file); public virtual ClientResult GetFileAssociation(string vectorStoreId, string fileId, RequestOptions options); - public virtual ClientResult GetFileAssociation(string vectorStoreId, string fileId, CancellationToken cancellationToken = default); - public virtual Task> GetFileAssociationAsync(VectorStore vectorStore, OpenAIFileInfo file); + public virtual ClientResult GetFileAssociation(string vectorStoreId, string fileId, CancellationToken cancellationToken = null); + public virtual Task> GetFileAssociationAsync(VectorStore vectorStore, Files.OpenAIFileInfo file); public virtual Task GetFileAssociationAsync(string vectorStoreId, string fileId, RequestOptions options); - public virtual Task> GetFileAssociationAsync(string vectorStoreId, string fileId, CancellationToken cancellationToken = default); - public virtual PageableCollection GetFileAssociations(VectorStore vectorStore, ListOrder? resultOrder = null, VectorStoreFileStatusFilter? filter = null); - public virtual PageableCollection GetFileAssociations(VectorStoreBatchFileJob batchJob, ListOrder? resultOrder = null, VectorStoreFileStatusFilter? filter = null); - public virtual ClientResult GetFileAssociations(string vectorStoreId, int? limit, string order, string after, string before, string filter, RequestOptions options); - public virtual PageableCollection GetFileAssociations(string vectorStoreId, ListOrder? resultOrder = null, VectorStoreFileStatusFilter? filter = null, CancellationToken cancellationToken = default); - public virtual ClientResult GetFileAssociations(string vectorStoreId, string batchId, int? limit, string order, string after, string before, string filter, RequestOptions options); - public virtual PageableCollection GetFileAssociations(string vectorStoreId, string batchJobId, ListOrder? resultOrder = null, VectorStoreFileStatusFilter? filter = null, CancellationToken cancellationToken = default); - public virtual AsyncPageableCollection GetFileAssociationsAsync(VectorStore vectorStore, ListOrder? resultOrder = null, VectorStoreFileStatusFilter? filter = null); - public virtual AsyncPageableCollection GetFileAssociationsAsync(VectorStoreBatchFileJob batchJob, ListOrder? resultOrder = null, VectorStoreFileStatusFilter? filter = null); - public virtual Task GetFileAssociationsAsync(string vectorStoreId, int? limit, string order, string after, string before, string filter, RequestOptions options); - public virtual AsyncPageableCollection GetFileAssociationsAsync(string vectorStoreId, ListOrder? resultOrder = null, VectorStoreFileStatusFilter? filter = null, CancellationToken cancellationToken = default); - public virtual Task GetFileAssociationsAsync(string vectorStoreId, string batchId, int? limit, string order, string after, string before, string filter, RequestOptions options); - public virtual AsyncPageableCollection GetFileAssociationsAsync(string vectorStoreId, string batchJobId, ListOrder? resultOrder = null, VectorStoreFileStatusFilter? filter = null, CancellationToken cancellationToken = default); - + public virtual Task> GetFileAssociationAsync(string vectorStoreId, string fileId, CancellationToken cancellationToken = null); + public virtual PageCollection GetFileAssociations(VectorStore vectorStore, VectorStoreFileAssociationCollectionOptions options = null); + public virtual PageCollection GetFileAssociations(VectorStoreBatchFileJob batchJob, VectorStoreFileAssociationCollectionOptions options = null); + public virtual PageCollection GetFileAssociations(ContinuationToken firstPageToken, CancellationToken cancellationToken = null); + public virtual PageCollection GetFileAssociations(string vectorStoreId, VectorStoreFileAssociationCollectionOptions options = null, CancellationToken cancellationToken = null); + public virtual IEnumerable GetFileAssociations(string vectorStoreId, int? limit, string order, string after, string before, string filter, RequestOptions options); + public virtual PageCollection GetFileAssociations(string vectorStoreId, string batchJobId, VectorStoreFileAssociationCollectionOptions options = null, CancellationToken cancellationToken = null); + public virtual PageCollection GetFileAssociations(string vectorStoreId, string batchJobId, ContinuationToken firstPageToken, CancellationToken cancellationToken = null); + public virtual IEnumerable GetFileAssociations(string vectorStoreId, string batchId, int? limit, string order, string after, string before, string filter, RequestOptions options); + public virtual AsyncPageCollection GetFileAssociationsAsync(VectorStore vectorStore, VectorStoreFileAssociationCollectionOptions options = null); + public virtual AsyncPageCollection GetFileAssociationsAsync(VectorStoreBatchFileJob batchJob, VectorStoreFileAssociationCollectionOptions options = null); + public virtual AsyncPageCollection GetFileAssociationsAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = null); + public virtual AsyncPageCollection GetFileAssociationsAsync(string vectorStoreId, VectorStoreFileAssociationCollectionOptions options = null, CancellationToken cancellationToken = null); + public virtual IAsyncEnumerable GetFileAssociationsAsync(string vectorStoreId, int? limit, string order, string after, string before, string filter, RequestOptions options); + public virtual AsyncPageCollection GetFileAssociationsAsync(string vectorStoreId, string batchJobId, VectorStoreFileAssociationCollectionOptions options = null, CancellationToken cancellationToken = null); + public virtual AsyncPageCollection GetFileAssociationsAsync(string vectorStoreId, string batchJobId, ContinuationToken firstPageToken, CancellationToken cancellationToken = null); + public virtual IAsyncEnumerable GetFileAssociationsAsync(string vectorStoreId, string batchId, int? limit, string order, string after, string before, string filter, RequestOptions options); public virtual ClientResult GetVectorStore(VectorStore vectorStore); public virtual ClientResult GetVectorStore(string vectorStoreId, RequestOptions options); - public virtual ClientResult GetVectorStore(string vectorStoreId, CancellationToken cancellationToken = default); + public virtual ClientResult GetVectorStore(string vectorStoreId, CancellationToken cancellationToken = null); public virtual Task> GetVectorStoreAsync(VectorStore vectorStore); public virtual Task GetVectorStoreAsync(string vectorStoreId, RequestOptions options); - public virtual Task> GetVectorStoreAsync(string vectorStoreId, CancellationToken cancellationToken = default); - public virtual ClientResult GetVectorStores(int? limit, string order, string after, string before, RequestOptions options); - public virtual PageableCollection GetVectorStores(ListOrder? resultOrder = null, CancellationToken cancellationToken = default); - public virtual Task GetVectorStoresAsync(int? limit, string order, string after, string before, RequestOptions options); - public virtual AsyncPageableCollection GetVectorStoresAsync(ListOrder? resultOrder = null, CancellationToken cancellationToken = default); + public virtual Task> GetVectorStoreAsync(string vectorStoreId, CancellationToken cancellationToken = null); + public virtual PageCollection GetVectorStores(VectorStoreCollectionOptions options = null, CancellationToken cancellationToken = null); + public virtual PageCollection GetVectorStores(ContinuationToken firstPageToken, CancellationToken cancellationToken = null); + public virtual IEnumerable GetVectorStores(int? limit, string order, string after, string before, RequestOptions options); + public virtual AsyncPageCollection GetVectorStoresAsync(VectorStoreCollectionOptions options = null, CancellationToken cancellationToken = null); + public virtual AsyncPageCollection GetVectorStoresAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = null); + public virtual IAsyncEnumerable GetVectorStoresAsync(int? limit, string order, string after, string before, RequestOptions options); public virtual ClientResult ModifyVectorStore(VectorStore vectorStore, VectorStoreModificationOptions options); - public virtual ClientResult ModifyVectorStore(string vectorStoreId, VectorStoreModificationOptions vectorStore, CancellationToken cancellationToken = default); + public virtual ClientResult ModifyVectorStore(string vectorStoreId, VectorStoreModificationOptions vectorStore, CancellationToken cancellationToken = null); public virtual ClientResult ModifyVectorStore(string vectorStoreId, BinaryContent content, RequestOptions options = null); public virtual Task> ModifyVectorStoreAsync(VectorStore vectorStore, VectorStoreModificationOptions options); - public virtual Task> ModifyVectorStoreAsync(string vectorStoreId, VectorStoreModificationOptions vectorStore, CancellationToken cancellationToken = default); + public virtual Task> ModifyVectorStoreAsync(string vectorStoreId, VectorStoreModificationOptions vectorStore, CancellationToken cancellationToken = null); public virtual Task ModifyVectorStoreAsync(string vectorStoreId, BinaryContent content, RequestOptions options = null); - public virtual ClientPipeline Pipeline { get; } - public virtual ClientResult RemoveFileFromStore(VectorStore vectorStore, OpenAIFileInfo file); + public virtual ClientResult RemoveFileFromStore(VectorStore vectorStore, Files.OpenAIFileInfo file); public virtual ClientResult RemoveFileFromStore(string vectorStoreId, string fileId, RequestOptions options); - public virtual ClientResult RemoveFileFromStore(string vectorStoreId, string fileId, CancellationToken cancellationToken = default); - public virtual Task> RemoveFileFromStoreAsync(VectorStore vectorStore, OpenAIFileInfo file); + public virtual ClientResult RemoveFileFromStore(string vectorStoreId, string fileId, CancellationToken cancellationToken = null); + public virtual Task> RemoveFileFromStoreAsync(VectorStore vectorStore, Files.OpenAIFileInfo file); public virtual Task RemoveFileFromStoreAsync(string vectorStoreId, string fileId, RequestOptions options); - public virtual Task> RemoveFileFromStoreAsync(string vectorStoreId, string fileId, CancellationToken cancellationToken = default); - protected VectorStoreClient(); - public VectorStoreClient(OpenAIClientOptions options = null); - public VectorStoreClient(ApiKeyCredential credential, OpenAIClientOptions options = null); - protected VectorStoreClient(ClientPipeline pipeline, Uri endpoint, OpenAIClientOptions options); + public virtual Task> RemoveFileFromStoreAsync(string vectorStoreId, string fileId, CancellationToken cancellationToken = null); + } + public class VectorStoreCollectionOptions { + public VectorStoreCollectionOptions(); + public string AfterId { get; init; } + public string BeforeId { get; init; } + public ListOrder? Order { get; init; } + public int? PageSize { get; init; } } public class VectorStoreCreationOptions { public VectorStoreCreationOptions(); @@ -1511,60 +1601,13 @@ namespace OpenAI.VectorStores { public IDictionary Metadata { get; } public string Name { get; init; } } - public class VectorStoreModificationOptions { - public VectorStoreModificationOptions(); - public VectorStoreExpirationPolicy ExpirationPolicy { get; init; } - public IDictionary Metadata { get; } - public string Name { get; init; } - } - public abstract class FileChunkingStrategy { - protected FileChunkingStrategy(); - public static FileChunkingStrategy Auto { get; } - public static FileChunkingStrategy Unknown { get; } - public static FileChunkingStrategy CreateStaticStrategy(int maxTokensPerChunk, int overlappingTokenCount); - } - public class StaticFileChunkingStrategy : FileChunkingStrategy { - public StaticFileChunkingStrategy(int maxTokensPerChunk, int overlappingTokenCount); - public int MaxTokensPerChunk { get; } - public int OverlappingTokenCount { get; } - } - public class VectorStore { - public DateTimeOffset CreatedAt { get; } - public VectorStoreExpirationPolicy ExpirationPolicy { get; } - public DateTimeOffset? ExpiresAt { get; } - public VectorStoreFileCounts FileCounts { get; } - public string Id { get; } - public DateTimeOffset? LastActiveAt { get; } - public IReadOnlyDictionary Metadata { get; } - public string Name { get; } - public VectorStoreStatus Status { get; } - public int UsageBytes { get; } - } - public class VectorStoreBatchFileJob { - public string BatchId { get; } - public DateTimeOffset CreatedAt { get; } - public VectorStoreFileCounts FileCounts { get; } - public VectorStoreBatchFileJobStatus Status { get; } - public string VectorStoreId { get; } - } - public readonly struct VectorStoreBatchFileJobStatus : IEquatable { - public VectorStoreBatchFileJobStatus(string value); - public static VectorStoreBatchFileJobStatus Cancelled { get; } - public static VectorStoreBatchFileJobStatus Completed { get; } - public static VectorStoreBatchFileJobStatus Failed { get; } - public static VectorStoreBatchFileJobStatus InProgress { get; } - public static bool operator ==(VectorStoreBatchFileJobStatus left, VectorStoreBatchFileJobStatus right); - public static implicit operator VectorStoreBatchFileJobStatus(string value); - public static bool operator !=(VectorStoreBatchFileJobStatus left, VectorStoreBatchFileJobStatus right); - public bool Equals(VectorStoreBatchFileJobStatus other); - public override bool Equals(object obj); - public override int GetHashCode(); - public override string ToString(); + public sealed class VectorStoreExpirationAnchor { + public const VectorStoreExpirationAnchor LastActiveAt = 1; + public const VectorStoreExpirationAnchor Unknown = 0; } public class VectorStoreExpirationPolicy { - internal [SetsRequiredMembers] - public VectorStoreExpirationPolicy(VectorStoreExpirationAnchor anchor, int days); public VectorStoreExpirationPolicy(); + public VectorStoreExpirationPolicy(VectorStoreExpirationAnchor anchor, int days); public required VectorStoreExpirationAnchor Anchor { get; init; } public required int Days { get; init; } } @@ -1577,26 +1620,41 @@ namespace OpenAI.VectorStores { public VectorStoreFileAssociationStatus Status { get; } public string VectorStoreId { get; } } - public readonly struct VectorStoreFileAssociationError { + public class VectorStoreFileAssociationCollectionOptions { + public VectorStoreFileAssociationCollectionOptions(); + public string AfterId { get; init; } + public string BeforeId { get; init; } + public VectorStoreFileStatusFilter? Filter { get; init; } + public ListOrder? Order { get; init; } + public int? PageSize { get; init; } + } + public sealed class VectorStoreFileAssociationError { public VectorStoreFileAssociationError(); public VectorStoreFileAssociationErrorCode Code { get; } public string Message { get; } } - public readonly struct VectorStoreFileAssociationErrorCode : IEquatable { + public sealed class VectorStoreFileAssociationErrorCode { public VectorStoreFileAssociationErrorCode(string value); public static VectorStoreFileAssociationErrorCode FileNotFound { get; } public static VectorStoreFileAssociationErrorCode InternalError { get; } public static VectorStoreFileAssociationErrorCode ParsingError { get; } public static VectorStoreFileAssociationErrorCode UnhandledMimeType { get; } - public static bool operator ==(VectorStoreFileAssociationErrorCode left, VectorStoreFileAssociationErrorCode right); - public static implicit operator VectorStoreFileAssociationErrorCode(string value); - public static bool operator !=(VectorStoreFileAssociationErrorCode left, VectorStoreFileAssociationErrorCode right); public bool Equals(VectorStoreFileAssociationErrorCode other); public override bool Equals(object obj); public override int GetHashCode(); + public static bool operator ==(VectorStoreFileAssociationErrorCode left, VectorStoreFileAssociationErrorCode right); + public static implicit operator VectorStoreFileAssociationErrorCode(string value); + public static bool operator !=(VectorStoreFileAssociationErrorCode left, VectorStoreFileAssociationErrorCode right); public override string ToString(); } - public readonly struct VectorStoreFileCounts { + public sealed class VectorStoreFileAssociationStatus { + public const VectorStoreFileAssociationStatus Cancelled = 3; + public const VectorStoreFileAssociationStatus Completed = 2; + public const VectorStoreFileAssociationStatus Failed = 4; + public const VectorStoreFileAssociationStatus InProgress = 1; + public const VectorStoreFileAssociationStatus Unknown = 0; + } + public sealed class VectorStoreFileCounts { public VectorStoreFileCounts(); public int Cancelled { get; } public int Completed { get; } @@ -1604,36 +1662,31 @@ namespace OpenAI.VectorStores { public int InProgress { get; } public int Total { get; } } - public readonly struct VectorStoreFileStatusFilter : IEquatable { + public sealed class VectorStoreFileStatusFilter { public VectorStoreFileStatusFilter(string value); public static VectorStoreFileStatusFilter Cancelled { get; } public static VectorStoreFileStatusFilter Completed { get; } public static VectorStoreFileStatusFilter Failed { get; } public static VectorStoreFileStatusFilter InProgress { get; } - public static bool operator ==(VectorStoreFileStatusFilter left, VectorStoreFileStatusFilter right); - public static implicit operator VectorStoreFileStatusFilter(string value); - public static bool operator !=(VectorStoreFileStatusFilter left, VectorStoreFileStatusFilter right); public bool Equals(VectorStoreFileStatusFilter other); public override bool Equals(object obj); public override int GetHashCode(); + public static bool operator ==(VectorStoreFileStatusFilter left, VectorStoreFileStatusFilter right); + public static implicit operator VectorStoreFileStatusFilter(string value); + public static bool operator !=(VectorStoreFileStatusFilter left, VectorStoreFileStatusFilter right); public override string ToString(); } - public enum VectorStoreExpirationAnchor { - Unknown = 0, - LastActiveAt = 1, - } - public enum VectorStoreFileAssociationStatus { - Unknown = 0, - InProgress = 1, - Completed = 2, - Cancelled = 3, - Failed = 4, - } - public enum VectorStoreStatus { - Unknown = 0, - InProgress = 1, - Completed = 2, - Expired = 3, + public class VectorStoreModificationOptions { + public VectorStoreModificationOptions(); + public VectorStoreExpirationPolicy ExpirationPolicy { get; init; } + public IDictionary Metadata { get; } + public string Name { get; init; } + } + public sealed class VectorStoreStatus { + public const VectorStoreStatus Completed = 2; + public const VectorStoreStatus Expired = 3; + public const VectorStoreStatus InProgress = 1; + public const VectorStoreStatus Unknown = 0; } } ``` \ No newline at end of file diff --git a/.scripts/Generate-Api.ps1 b/.scripts/Generate-Api.ps1 new file mode 100644 index 000000000..90421bfac --- /dev/null +++ b/.scripts/Generate-Api.ps1 @@ -0,0 +1,41 @@ +$repoRoot = Join-Path $PSScriptRoot .. -Resolve +$dotnetFolder = Join-Path $repoRoot .dotnet\src + +$assemblyPath = Join-Path $dotnetFolder bin\Debug\netstandard2.0\OpenAI.dll +$apiPath = Join-Path $repoRoot .dotnet\api\api.md + +genapi --assembly $assemblyPath --output-path $apiPath +$content = Get-Content $apiPath -Raw + +$content = "``````csharp`n$($content)`n``````" +$content = $content -replace '//.*\r?\n', '' +$content = $content -replace '\r?\n\r?\n', "`n" +$content = $content -replace 'System.Boolean', 'bool' +$content = $content -replace 'System.String', 'string' +$content = $content -replace 'System.Object', 'object' +$content = $content -replace 'System.Uri', 'Uri' +$content = $content -replace 'System.Single', 'float' +$content = $content -replace 'System.Int32', 'int' +$content = $content -replace 'System.Int64', 'long' +$content = $content -replace 'System.Nullable<([^>]*)>', '$1?' + +$content = $content -replace 'System.ClientModel.Primitives.', '' +$content = $content -replace 'System.ClientModel.', '' +$content = $content -replace 'System.Collections.Generic.', '' +$content = $content -replace 'System.Collections.', '' +$content = $content -replace 'System.Threading.Tasks.', '' +$content = $content -replace 'System.Threading.', '' +$content = $content -replace 'System.Text.Json.', '' +$content = $content -replace 'System.Text.', '' +$content = $content -replace 'System.IO.', '' +$content = $content -replace 'System\.', '' + +$content = $content -replace "partial class", "class" +$content = $content -replace '\r?\n *{', " {" +$content = $content -replace 'throw null;', '' +$content = $content -replace ' { *}', ';' +$content = $content -replace ' *public int value__;\r?\n', '' +$content = $content -replace " * internal.*`n", "" +$content = $content -replace '(virtual )[^ \.]*\.', '$1' + +Set-Content -Path $apiPath -Value $content -NoNewline \ No newline at end of file From d33fb35db86f88689b037b3ac8fbbd8d1ff8216c Mon Sep 17 00:00:00 2001 From: Travis Wilson Date: Thu, 25 Jul 2024 17:08:30 -0700 Subject: [PATCH 2/7] migrate to .cs file --- .dotnet/api/OpenAI.netstandard2.0.cs | 1690 ++++++++++++++++++++++++++ .dotnet/api/api.md | 22 +- .scripts/Generate-Api.ps1 | 19 +- 3 files changed, 1714 insertions(+), 17 deletions(-) create mode 100644 .dotnet/api/OpenAI.netstandard2.0.cs diff --git a/.dotnet/api/OpenAI.netstandard2.0.cs b/.dotnet/api/OpenAI.netstandard2.0.cs new file mode 100644 index 000000000..65500275a --- /dev/null +++ b/.dotnet/api/OpenAI.netstandard2.0.cs @@ -0,0 +1,1690 @@ +namespace OpenAI { + public sealed class ListOrder { + public ListOrder(string value); + public static ListOrder NewestFirst { get; } + public static ListOrder OldestFirst { get; } + public bool Equals(ListOrder other); + public override bool Equals(object obj); + public override int GetHashCode(); + public static bool operator ==(ListOrder left, ListOrder right); + public static implicit operator ListOrder(string value); + public static bool operator !=(ListOrder left, ListOrder right); + public override string ToString(); + } + public class OpenAIClient { + protected OpenAIClient(); + public OpenAIClient(OpenAIClientOptions options = null); + public OpenAIClient(ApiKeyCredential credential, OpenAIClientOptions options = null); + protected OpenAIClient(ClientPipeline pipeline, Uri endpoint, OpenAIClientOptions options); + protected Uri Endpoint { get; } + public virtual ClientPipeline Pipeline { get; } + public virtual AssistantClient GetAssistantClient(); + public virtual AudioClient GetAudioClient(string model); + public virtual BatchClient GetBatchClient(); + public virtual ChatClient GetChatClient(string model); + public virtual EmbeddingClient GetEmbeddingClient(string model); + public virtual FileClient GetFileClient(); + public virtual FineTuningClient GetFineTuningClient(); + public virtual ImageClient GetImageClient(string model); + public virtual ModelClient GetModelClient(); + public virtual ModerationClient GetModerationClient(string model); + public virtual VectorStoreClient GetVectorStoreClient(); + } + public class OpenAIClientOptions { + public OpenAIClientOptions(); + public string ApplicationId { get; init; } + public Uri Endpoint { get; init; } + public string OrganizationId { get; init; } + public string ProjectId { get; init; } + } +} +namespace OpenAI.Assistants { + public class Assistant { + public DateTimeOffset CreatedAt { get; } + public string Description { get; } + public string Id { get; } + public string Instructions { get; } + public IReadOnlyDictionary Metadata { get; } + public string Model { get; } + public string Name { get; } + public float? NucleusSamplingFactor { get; } + public AssistantResponseFormat ResponseFormat { get; } + public float? Temperature { get; } + public ToolResources ToolResources { get; } + public IReadOnlyList Tools { get; } + } + public class AssistantClient { + protected AssistantClient(); + public AssistantClient(OpenAIClientOptions options = null); + public AssistantClient(ApiKeyCredential credential, OpenAIClientOptions options = null); + protected internal AssistantClient(ClientPipeline pipeline, Uri endpoint, OpenAIClientOptions options); + public virtual ClientPipeline Pipeline { get; } + public virtual ClientResult CancelRun(ThreadRun run); + public virtual ClientResult CancelRun(string threadId, string runId, RequestOptions options); + public virtual ClientResult CancelRun(string threadId, string runId, CancellationToken cancellationToken = null); + public virtual Task> CancelRunAsync(ThreadRun run); + public virtual Task CancelRunAsync(string threadId, string runId, RequestOptions options); + public virtual Task> CancelRunAsync(string threadId, string runId, CancellationToken cancellationToken = null); + public virtual ClientResult CreateAssistant(BinaryContent content, RequestOptions options = null); + public virtual ClientResult CreateAssistant(string model, AssistantCreationOptions options = null, CancellationToken cancellationToken = null); + public virtual Task CreateAssistantAsync(BinaryContent content, RequestOptions options = null); + public virtual Task> CreateAssistantAsync(string model, AssistantCreationOptions options = null, CancellationToken cancellationToken = null); + public virtual ClientResult CreateMessage(AssistantThread thread, MessageRole role, IEnumerable content, MessageCreationOptions options = null); + public virtual ClientResult CreateMessage(string threadId, MessageRole role, IEnumerable content, MessageCreationOptions options = null, CancellationToken cancellationToken = null); + public virtual ClientResult CreateMessage(string threadId, BinaryContent content, RequestOptions options = null); + public virtual Task> CreateMessageAsync(AssistantThread thread, MessageRole role, IEnumerable content, MessageCreationOptions options = null); + public virtual Task> CreateMessageAsync(string threadId, MessageRole role, IEnumerable content, MessageCreationOptions options = null, CancellationToken cancellationToken = null); + public virtual Task CreateMessageAsync(string threadId, BinaryContent content, RequestOptions options = null); + public virtual ClientResult CreateRun(AssistantThread thread, Assistant assistant, RunCreationOptions options = null); + public virtual ClientResult CreateRun(string threadId, BinaryContent content, RequestOptions options = null); + public virtual ClientResult CreateRun(string threadId, string assistantId, RunCreationOptions options = null, CancellationToken cancellationToken = null); + public virtual Task> CreateRunAsync(AssistantThread thread, Assistant assistant, RunCreationOptions options = null); + public virtual Task CreateRunAsync(string threadId, BinaryContent content, RequestOptions options = null); + public virtual Task> CreateRunAsync(string threadId, string assistantId, RunCreationOptions options = null, CancellationToken cancellationToken = null); + public virtual CollectionResult CreateRunStreaming(AssistantThread thread, Assistant assistant, RunCreationOptions options = null); + public virtual CollectionResult CreateRunStreaming(string threadId, string assistantId, RunCreationOptions options = null, CancellationToken cancellationToken = null); + public virtual AsyncCollectionResult CreateRunStreamingAsync(AssistantThread thread, Assistant assistant, RunCreationOptions options = null); + public virtual AsyncCollectionResult CreateRunStreamingAsync(string threadId, string assistantId, RunCreationOptions options = null, CancellationToken cancellationToken = null); + public virtual ClientResult CreateThread(ThreadCreationOptions options = null, CancellationToken cancellationToken = null); + public virtual ClientResult CreateThread(BinaryContent content, RequestOptions options = null); + public virtual ClientResult CreateThreadAndRun(Assistant assistant, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null); + public virtual ClientResult CreateThreadAndRun(BinaryContent content, RequestOptions options = null); + public virtual ClientResult CreateThreadAndRun(string assistantId, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null, CancellationToken cancellationToken = null); + public virtual Task> CreateThreadAndRunAsync(Assistant assistant, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null); + public virtual Task CreateThreadAndRunAsync(BinaryContent content, RequestOptions options = null); + public virtual Task> CreateThreadAndRunAsync(string assistantId, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null, CancellationToken cancellationToken = null); + public virtual CollectionResult CreateThreadAndRunStreaming(Assistant assistant, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null); + public virtual CollectionResult CreateThreadAndRunStreaming(string assistantId, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null, CancellationToken cancellationToken = null); + public virtual AsyncCollectionResult CreateThreadAndRunStreamingAsync(Assistant assistant, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null); + public virtual AsyncCollectionResult CreateThreadAndRunStreamingAsync(string assistantId, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null, CancellationToken cancellationToken = null); + public virtual Task> CreateThreadAsync(ThreadCreationOptions options = null, CancellationToken cancellationToken = null); + public virtual Task CreateThreadAsync(BinaryContent content, RequestOptions options = null); + public virtual ClientResult DeleteAssistant(Assistant assistant); + public virtual ClientResult DeleteAssistant(string assistantId, RequestOptions options); + public virtual ClientResult DeleteAssistant(string assistantId, CancellationToken cancellationToken = null); + public virtual Task> DeleteAssistantAsync(Assistant assistant); + public virtual Task DeleteAssistantAsync(string assistantId, RequestOptions options); + public virtual Task> DeleteAssistantAsync(string assistantId, CancellationToken cancellationToken = null); + public virtual ClientResult DeleteMessage(ThreadMessage message); + public virtual ClientResult DeleteMessage(string threadId, string messageId, RequestOptions options); + public virtual ClientResult DeleteMessage(string threadId, string messageId, CancellationToken cancellationToken = null); + public virtual Task> DeleteMessageAsync(ThreadMessage message); + public virtual Task DeleteMessageAsync(string threadId, string messageId, RequestOptions options); + public virtual Task> DeleteMessageAsync(string threadId, string messageId, CancellationToken cancellationToken = null); + public virtual ClientResult DeleteThread(AssistantThread thread); + public virtual ClientResult DeleteThread(string threadId, RequestOptions options); + public virtual ClientResult DeleteThread(string threadId, CancellationToken cancellationToken = null); + public virtual Task> DeleteThreadAsync(AssistantThread thread); + public virtual Task DeleteThreadAsync(string threadId, RequestOptions options); + public virtual Task> DeleteThreadAsync(string threadId, CancellationToken cancellationToken = null); + public virtual ClientResult GetAssistant(string assistantId, RequestOptions options); + public virtual ClientResult GetAssistant(string assistantId, CancellationToken cancellationToken = null); + public virtual Task GetAssistantAsync(string assistantId, RequestOptions options); + public virtual Task> GetAssistantAsync(string assistantId, CancellationToken cancellationToken = null); + public virtual PageCollection GetAssistants(AssistantCollectionOptions options = null, CancellationToken cancellationToken = null); + public virtual PageCollection GetAssistants(ContinuationToken firstPageToken, CancellationToken cancellationToken = null); + public virtual IEnumerable GetAssistants(int? limit, string order, string after, string before, RequestOptions options); + public virtual AsyncPageCollection GetAssistantsAsync(AssistantCollectionOptions options = null, CancellationToken cancellationToken = null); + public virtual AsyncPageCollection GetAssistantsAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = null); + public virtual IAsyncEnumerable GetAssistantsAsync(int? limit, string order, string after, string before, RequestOptions options); + public virtual ClientResult GetMessage(ThreadMessage message); + public virtual ClientResult GetMessage(string threadId, string messageId, RequestOptions options); + public virtual ClientResult GetMessage(string threadId, string messageId, CancellationToken cancellationToken = null); + public virtual Task> GetMessageAsync(ThreadMessage message); + public virtual Task GetMessageAsync(string threadId, string messageId, RequestOptions options); + public virtual Task> GetMessageAsync(string threadId, string messageId, CancellationToken cancellationToken = null); + public virtual PageCollection GetMessages(AssistantThread thread, MessageCollectionOptions options = null); + public virtual PageCollection GetMessages(ContinuationToken firstPageToken, CancellationToken cancellationToken = null); + public virtual PageCollection GetMessages(string threadId, MessageCollectionOptions options = null, CancellationToken cancellationToken = null); + public virtual IEnumerable GetMessages(string threadId, int? limit, string order, string after, string before, RequestOptions options); + public virtual AsyncPageCollection GetMessagesAsync(AssistantThread thread, MessageCollectionOptions options = null); + public virtual AsyncPageCollection GetMessagesAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = null); + public virtual AsyncPageCollection GetMessagesAsync(string threadId, MessageCollectionOptions options = null, CancellationToken cancellationToken = null); + public virtual IAsyncEnumerable GetMessagesAsync(string threadId, int? limit, string order, string after, string before, RequestOptions options); + public virtual ClientResult GetRun(ThreadRun run); + public virtual ClientResult GetRun(string threadId, string runId, RequestOptions options); + public virtual ClientResult GetRun(string threadId, string runId, CancellationToken cancellationToken = null); + public virtual Task> GetRunAsync(ThreadRun run); + public virtual Task GetRunAsync(string threadId, string runId, RequestOptions options); + public virtual Task> GetRunAsync(string threadId, string runId, CancellationToken cancellationToken = null); + public virtual PageCollection GetRuns(AssistantThread thread, RunCollectionOptions options = null); + public virtual PageCollection GetRuns(ContinuationToken firstPageToken, CancellationToken cancellationToken = null); + public virtual PageCollection GetRuns(string threadId, RunCollectionOptions options = null, CancellationToken cancellationToken = null); + public virtual IEnumerable GetRuns(string threadId, int? limit, string order, string after, string before, RequestOptions options); + public virtual AsyncPageCollection GetRunsAsync(AssistantThread thread, RunCollectionOptions options = null); + public virtual AsyncPageCollection GetRunsAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = null); + public virtual AsyncPageCollection GetRunsAsync(string threadId, RunCollectionOptions options = null, CancellationToken cancellationToken = null); + public virtual IAsyncEnumerable GetRunsAsync(string threadId, int? limit, string order, string after, string before, RequestOptions options); + public virtual ClientResult GetRunStep(string threadId, string runId, string stepId, RequestOptions options); + public virtual ClientResult GetRunStep(string threadId, string runId, string stepId, CancellationToken cancellationToken = null); + public virtual Task GetRunStepAsync(string threadId, string runId, string stepId, RequestOptions options); + public virtual Task> GetRunStepAsync(string threadId, string runId, string stepId, CancellationToken cancellationToken = null); + public virtual PageCollection GetRunSteps(ThreadRun run, RunStepCollectionOptions options = null); + public virtual PageCollection GetRunSteps(ContinuationToken firstPageToken, CancellationToken cancellationToken = null); + public virtual PageCollection GetRunSteps(string threadId, string runId, RunStepCollectionOptions options = null, CancellationToken cancellationToken = null); + public virtual IEnumerable GetRunSteps(string threadId, string runId, int? limit, string order, string after, string before, RequestOptions options); + public virtual AsyncPageCollection GetRunStepsAsync(ThreadRun run, RunStepCollectionOptions options = null); + public virtual AsyncPageCollection GetRunStepsAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = null); + public virtual AsyncPageCollection GetRunStepsAsync(string threadId, string runId, RunStepCollectionOptions options = null, CancellationToken cancellationToken = null); + public virtual IAsyncEnumerable GetRunStepsAsync(string threadId, string runId, int? limit, string order, string after, string before, RequestOptions options); + public virtual ClientResult GetThread(AssistantThread thread); + public virtual ClientResult GetThread(string threadId, RequestOptions options); + public virtual ClientResult GetThread(string threadId, CancellationToken cancellationToken = null); + public virtual Task> GetThreadAsync(AssistantThread thread); + public virtual Task GetThreadAsync(string threadId, RequestOptions options); + public virtual Task> GetThreadAsync(string threadId, CancellationToken cancellationToken = null); + public virtual ClientResult ModifyAssistant(Assistant assistant, AssistantModificationOptions options); + public virtual ClientResult ModifyAssistant(string assistantId, AssistantModificationOptions options, CancellationToken cancellationToken = null); + public virtual ClientResult ModifyAssistant(string assistantId, BinaryContent content, RequestOptions options = null); + public virtual Task> ModifyAssistantAsync(Assistant assistant, AssistantModificationOptions options); + public virtual Task> ModifyAssistantAsync(string assistantId, AssistantModificationOptions options, CancellationToken cancellationToken = null); + public virtual Task ModifyAssistantAsync(string assistantId, BinaryContent content, RequestOptions options = null); + public virtual ClientResult ModifyMessage(ThreadMessage message, MessageModificationOptions options); + public virtual ClientResult ModifyMessage(string threadId, string messageId, MessageModificationOptions options, CancellationToken cancellationToken = null); + public virtual ClientResult ModifyMessage(string threadId, string messageId, BinaryContent content, RequestOptions options = null); + public virtual Task> ModifyMessageAsync(ThreadMessage message, MessageModificationOptions options); + public virtual Task> ModifyMessageAsync(string threadId, string messageId, MessageModificationOptions options, CancellationToken cancellationToken = null); + public virtual Task ModifyMessageAsync(string threadId, string messageId, BinaryContent content, RequestOptions options = null); + public virtual ClientResult ModifyRun(string threadId, string runId, BinaryContent content, RequestOptions options = null); + public virtual Task ModifyRunAsync(string threadId, string runId, BinaryContent content, RequestOptions options = null); + public virtual ClientResult ModifyThread(AssistantThread thread, ThreadModificationOptions options); + public virtual ClientResult ModifyThread(string threadId, ThreadModificationOptions options, CancellationToken cancellationToken = null); + public virtual ClientResult ModifyThread(string threadId, BinaryContent content, RequestOptions options = null); + public virtual Task> ModifyThreadAsync(AssistantThread thread, ThreadModificationOptions options); + public virtual Task> ModifyThreadAsync(string threadId, ThreadModificationOptions options, CancellationToken cancellationToken = null); + public virtual Task ModifyThreadAsync(string threadId, BinaryContent content, RequestOptions options = null); + public virtual ClientResult SubmitToolOutputsToRun(ThreadRun run, IEnumerable toolOutputs); + public virtual ClientResult SubmitToolOutputsToRun(string threadId, string runId, BinaryContent content, RequestOptions options = null); + public virtual ClientResult SubmitToolOutputsToRun(string threadId, string runId, IEnumerable toolOutputs, CancellationToken cancellationToken = null); + public virtual Task> SubmitToolOutputsToRunAsync(ThreadRun run, IEnumerable toolOutputs); + public virtual Task SubmitToolOutputsToRunAsync(string threadId, string runId, BinaryContent content, RequestOptions options = null); + public virtual Task> SubmitToolOutputsToRunAsync(string threadId, string runId, IEnumerable toolOutputs, CancellationToken cancellationToken = null); + public virtual CollectionResult SubmitToolOutputsToRunStreaming(ThreadRun run, IEnumerable toolOutputs); + public virtual CollectionResult SubmitToolOutputsToRunStreaming(string threadId, string runId, IEnumerable toolOutputs, CancellationToken cancellationToken = null); + public virtual AsyncCollectionResult SubmitToolOutputsToRunStreamingAsync(ThreadRun run, IEnumerable toolOutputs); + public virtual AsyncCollectionResult SubmitToolOutputsToRunStreamingAsync(string threadId, string runId, IEnumerable toolOutputs, CancellationToken cancellationToken = null); + } + public class AssistantCollectionOptions { + public AssistantCollectionOptions(); + public string AfterId { get; init; } + public string BeforeId { get; init; } + public ListOrder? Order { get; init; } + public int? PageSize { get; init; } + } + public class AssistantCreationOptions { + public AssistantCreationOptions(); + public string Description { get; init; } + public string Instructions { get; init; } + public IDictionary Metadata { get; } + public string Name { get; init; } + public float? NucleusSamplingFactor { get; init; } + public AssistantResponseFormat ResponseFormat { get; init; } + public float? Temperature { get; init; } + public ToolResources ToolResources { get; init; } + public IList Tools { get; } + } + public class AssistantModificationOptions { + public AssistantModificationOptions(); + public IList DefaultTools { get; init; } + public string Description { get; init; } + public string Instructions { get; init; } + public IDictionary Metadata { get; } + public string Model { get; init; } + public string Name { get; init; } + public float? NucleusSamplingFactor { get; init; } + public AssistantResponseFormat ResponseFormat { get; init; } + public float? Temperature { get; init; } + public ToolResources ToolResources { get; init; } + } + public class AssistantResponseFormat { + protected AssistantResponseFormat(); + public static AssistantResponseFormat Auto { get; } + public static AssistantResponseFormat JsonObject { get; } + public static AssistantResponseFormat Text { get; } + public bool Equals(AssistantResponseFormat other); + public override bool Equals(object obj); + public override int GetHashCode(); + public static bool operator ==(AssistantResponseFormat left, AssistantResponseFormat right); + public static implicit operator AssistantResponseFormat(string value); + public static bool operator !=(AssistantResponseFormat left, AssistantResponseFormat right); + public override string ToString(); + } + public class AssistantThread { + public DateTimeOffset CreatedAt { get; } + public string Id { get; } + public IReadOnlyDictionary Metadata { get; } + public ToolResources ToolResources { get; } + } + public class CodeInterpreterToolDefinition : ToolDefinition { + protected override void WriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options); + } + public class CodeInterpreterToolResources { + public CodeInterpreterToolResources(); + public IList FileIds { get; init; } + } + public class FileSearchToolDefinition : ToolDefinition { + public int? MaxResults { get; init; } + protected override void WriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options); + } + public class FileSearchToolResources { + public FileSearchToolResources(); + public IList NewVectorStores { get; } + public IList VectorStoreIds { get; init; } + } + public class FunctionToolDefinition : ToolDefinition { + public FunctionToolDefinition(); + public FunctionToolDefinition(string name, string description = null, BinaryData parameters = null); + public string Description { get; init; } + public required string FunctionName { get; init; } + public BinaryData Parameters { get; init; } + protected override void WriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options); + } + public class MessageCollectionOptions { + public MessageCollectionOptions(); + public string AfterId { get; init; } + public string BeforeId { get; init; } + public ListOrder? Order { get; init; } + public int? PageSize { get; init; } + } + public abstract class MessageContent { + protected MessageContent(); + public MessageImageDetail? ImageDetail { get; } + public string ImageFileId { get; } + public Uri ImageUrl { get; } + public string Text { get; } + public IReadOnlyList TextAnnotations { get; } + public static MessageContent FromImageFileId(string imageFileId, MessageImageDetail? detail = null); + public static MessageContent FromImageUrl(Uri imageUri, MessageImageDetail? detail = null); + public static MessageContent FromText(string text); + public static implicit operator MessageContent(string value); + protected abstract void WriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options); + } + public class MessageContentUpdate : StreamingUpdate { + public MessageImageDetail? ImageDetail { get; } + public string ImageFileId { get; } + public string MessageId { get; } + public int MessageIndex { get; } + public MessageRole? Role { get; } + public string Text { get; } + public TextAnnotationUpdate TextAnnotation { get; } + } + public class MessageCreationAttachment { + public MessageCreationAttachment(string fileId, IEnumerable tools); + public string FileId { get; } + public IReadOnlyList Tools { get; } + } + public class MessageCreationOptions { + public MessageCreationOptions(); + public IList Attachments { get; } + public IDictionary Metadata { get; } + } + public class MessageFailureDetails { + public MessageFailureReason Reason { get; } + } + public sealed class MessageFailureReason { + public MessageFailureReason(string value); + public static MessageFailureReason ContentFilter { get; } + public static MessageFailureReason MaxTokens { get; } + public static MessageFailureReason RunCancelled { get; } + public static MessageFailureReason RunExpired { get; } + public static MessageFailureReason RunFailed { get; } + public bool Equals(MessageFailureReason other); + public override bool Equals(object obj); + public override int GetHashCode(); + public static bool operator ==(MessageFailureReason left, MessageFailureReason right); + public static implicit operator MessageFailureReason(string value); + public static bool operator !=(MessageFailureReason left, MessageFailureReason right); + public override string ToString(); + } + public sealed class MessageImageDetail { + public const MessageImageDetail Auto = 0; + public const MessageImageDetail High = 2; + public const MessageImageDetail Low = 1; + } + public class MessageModificationOptions { + public MessageModificationOptions(); + public IDictionary Metadata { get; } + } + public sealed class MessageRole { + public const MessageRole Assistant = 1; + public const MessageRole User = 0; + } + public sealed class MessageStatus { + public MessageStatus(string value); + public static MessageStatus Completed { get; } + public static MessageStatus Incomplete { get; } + public static MessageStatus InProgress { get; } + public bool Equals(MessageStatus other); + public override bool Equals(object obj); + public override int GetHashCode(); + public static bool operator ==(MessageStatus left, MessageStatus right); + public static implicit operator MessageStatus(string value); + public static bool operator !=(MessageStatus left, MessageStatus right); + public override string ToString(); + } + public class MessageStatusUpdate : StreamingUpdate { + } + public abstract class RequiredAction { + protected RequiredAction(); + public string FunctionArguments { get; } + public string FunctionName { get; } + public string ToolCallId { get; } + } + public class RequiredActionUpdate : RunUpdate { + public string FunctionArguments { get; } + public string FunctionName { get; } + public string ToolCallId { get; } + public ThreadRun GetThreadRun(); + } + public class RunCollectionOptions { + public RunCollectionOptions(); + public string AfterId { get; init; } + public string BeforeId { get; init; } + public ListOrder? Order { get; init; } + public int? PageSize { get; init; } + } + public class RunCreationOptions { + public RunCreationOptions(); + public string AdditionalInstructions { get; init; } + public IList AdditionalMessages { get; } + public string InstructionsOverride { get; init; } + public int? MaxCompletionTokens { get; init; } + public int? MaxPromptTokens { get; init; } + public IDictionary Metadata { get; } + public string ModelOverride { get; init; } + public float? NucleusSamplingFactor { get; init; } + public bool? ParallelToolCallsEnabled { get; init; } + public AssistantResponseFormat ResponseFormat { get; init; } + public float? Temperature { get; init; } + public ToolConstraint ToolConstraint { get; init; } + public IList ToolsOverride { get; } + public RunTruncationStrategy TruncationStrategy { get; init; } + } + public class RunError { + public RunErrorCode Code { get; } + public string Message { get; } + } + public sealed class RunErrorCode { + public RunErrorCode(string value); + public static RunErrorCode InvalidPrompt { get; } + public static RunErrorCode RateLimitExceeded { get; } + public static RunErrorCode ServerError { get; } + public bool Equals(RunErrorCode other); + public override bool Equals(object obj); + public override int GetHashCode(); + public static bool operator ==(RunErrorCode left, RunErrorCode right); + public static implicit operator RunErrorCode(string value); + public static bool operator !=(RunErrorCode left, RunErrorCode right); + public override string ToString(); + } + public class RunIncompleteDetails { + public RunIncompleteReason? Reason { get; } + } + public sealed class RunIncompleteReason { + public RunIncompleteReason(string value); + public static RunIncompleteReason MaxCompletionTokens { get; } + public static RunIncompleteReason MaxPromptTokens { get; } + public bool Equals(RunIncompleteReason other); + public override bool Equals(object obj); + public override int GetHashCode(); + public static bool operator ==(RunIncompleteReason left, RunIncompleteReason right); + public static implicit operator RunIncompleteReason(string value); + public static bool operator !=(RunIncompleteReason left, RunIncompleteReason right); + public override string ToString(); + } + public class RunModificationOptions { + public RunModificationOptions(); + public IDictionary Metadata { get; } + } + public sealed class RunStatus { + public RunStatus(string value); + public static RunStatus Cancelled { get; } + public static RunStatus Cancelling { get; } + public static RunStatus Completed { get; } + public static RunStatus Expired { get; } + public static RunStatus Failed { get; } + public static RunStatus Incomplete { get; } + public static RunStatus InProgress { get; } + public bool IsTerminal { get; } + public static RunStatus Queued { get; } + public static RunStatus RequiresAction { get; } + public bool Equals(RunStatus other); + public override bool Equals(object obj); + public override int GetHashCode(); + public static bool operator ==(RunStatus left, RunStatus right); + public static implicit operator RunStatus(string value); + public static bool operator !=(RunStatus left, RunStatus right); + public override string ToString(); + } + public class RunStep { + public string AssistantId { get; } + public DateTimeOffset? CancelledAt { get; } + public DateTimeOffset? CompletedAt { get; } + public DateTimeOffset CreatedAt { get; } + public RunStepDetails Details { get; } + public DateTimeOffset? ExpiredAt { get; } + public DateTimeOffset? FailedAt { get; } + public string Id { get; } + public RunStepError LastError { get; } + public IReadOnlyDictionary Metadata { get; } + public string RunId { get; } + public RunStepStatus Status { get; } + public string ThreadId { get; } + public RunStepType Type { get; } + public RunStepTokenUsage Usage { get; } + } + public abstract class RunStepCodeInterpreterOutput { + protected RunStepCodeInterpreterOutput(); + public string ImageFileId { get; } + public string Logs { get; } + } + public class RunStepCollectionOptions { + public RunStepCollectionOptions(); + public string AfterId { get; init; } + public string BeforeId { get; init; } + public ListOrder? Order { get; init; } + public int? PageSize { get; init; } + } + public abstract class RunStepDetails { + protected RunStepDetails(); + public string CreatedMessageId { get; } + public IReadOnlyList ToolCalls { get; } + } + public class RunStepDetailsUpdate : StreamingUpdate { + public string CodeInterpreterInput { get; } + public IReadOnlyList CodeInterpreterOutputs { get; } + public string CreatedMessageId { get; } + public string FunctionArguments { get; } + public string FunctionName { get; } + public string FunctionOutput { get; } + public string StepId { get; } + public string ToolCallId { get; } + public int? ToolCallIndex { get; } + } + public class RunStepError { + public RunStepErrorCode Code { get; } + public string Message { get; } + } + public sealed class RunStepErrorCode { + public RunStepErrorCode(string value); + public static RunStepErrorCode RateLimitExceeded { get; } + public static RunStepErrorCode ServerError { get; } + public bool Equals(RunStepErrorCode other); + public override bool Equals(object obj); + public override int GetHashCode(); + public static bool operator ==(RunStepErrorCode left, RunStepErrorCode right); + public static implicit operator RunStepErrorCode(string value); + public static bool operator !=(RunStepErrorCode left, RunStepErrorCode right); + public override string ToString(); + } + public sealed class RunStepStatus { + public RunStepStatus(string value); + public static RunStepStatus Cancelled { get; } + public static RunStepStatus Completed { get; } + public static RunStepStatus Expired { get; } + public static RunStepStatus Failed { get; } + public static RunStepStatus InProgress { get; } + public bool Equals(RunStepStatus other); + public override bool Equals(object obj); + public override int GetHashCode(); + public static bool operator ==(RunStepStatus left, RunStepStatus right); + public static implicit operator RunStepStatus(string value); + public static bool operator !=(RunStepStatus left, RunStepStatus right); + public override string ToString(); + } + public class RunStepTokenUsage { + public int CompletionTokens { get; } + public int PromptTokens { get; } + public int TotalTokens { get; } + } + public abstract class RunStepToolCall { + protected RunStepToolCall(); + public string CodeInterpreterInput { get; } + public IReadOnlyList CodeInterpreterOutputs { get; } + public string FunctionArguments { get; } + public string FunctionName { get; } + public string FunctionOutput { get; } + public string ToolCallId { get; } + public RunStepToolCallKind ToolKind { get; } + } + public sealed class RunStepToolCallKind { + public const RunStepToolCallKind CodeInterpreter = 1; + public const RunStepToolCallKind FileSearch = 2; + public const RunStepToolCallKind Function = 3; + public const RunStepToolCallKind Unknown = 0; + } + public sealed class RunStepType { + public RunStepType(string value); + public static RunStepType MessageCreation { get; } + public static RunStepType ToolCalls { get; } + public bool Equals(RunStepType other); + public override bool Equals(object obj); + public override int GetHashCode(); + public static bool operator ==(RunStepType left, RunStepType right); + public static implicit operator RunStepType(string value); + public static bool operator !=(RunStepType left, RunStepType right); + public override string ToString(); + } + public class RunStepUpdate : StreamingUpdate { + } + public abstract class RunStepUpdateCodeInterpreterOutput { + protected RunStepUpdateCodeInterpreterOutput(); + public string ImageFileId { get; } + public string Logs { get; } + public int OutputIndex { get; } + } + public class RunTokenUsage { + public int CompletionTokens { get; } + public int PromptTokens { get; } + public int TotalTokens { get; } + } + public class RunTruncationStrategy { + public static RunTruncationStrategy Auto { get; } + public int? LastMessages { get; } + public static RunTruncationStrategy CreateLastMessagesStrategy(int lastMessageCount); + } + public class RunUpdate : StreamingUpdate { + } + public abstract class StreamingUpdate { + public StreamingUpdateReason UpdateKind { get; } + } + public sealed class StreamingUpdateReason { + public const StreamingUpdateReason Done = 25; + public const StreamingUpdateReason Error = 24; + public const StreamingUpdateReason MessageCompleted = 22; + public const StreamingUpdateReason MessageCreated = 19; + public const StreamingUpdateReason MessageFailed = 23; + public const StreamingUpdateReason MessageInProgress = 20; + public const StreamingUpdateReason MessageUpdated = 21; + public const StreamingUpdateReason RunCancelled = 10; + public const StreamingUpdateReason RunCancelling = 9; + public const StreamingUpdateReason RunCompleted = 6; + public const StreamingUpdateReason RunCreated = 2; + public const StreamingUpdateReason RunExpired = 11; + public const StreamingUpdateReason RunFailed = 8; + public const StreamingUpdateReason RunIncomplete = 7; + public const StreamingUpdateReason RunInProgress = 4; + public const StreamingUpdateReason RunQueued = 3; + public const StreamingUpdateReason RunRequiresAction = 5; + public const StreamingUpdateReason RunStepCancelled = 17; + public const StreamingUpdateReason RunStepCompleted = 15; + public const StreamingUpdateReason RunStepCreated = 12; + public const StreamingUpdateReason RunStepExpired = 18; + public const StreamingUpdateReason RunStepFailed = 16; + public const StreamingUpdateReason RunStepInProgress = 13; + public const StreamingUpdateReason RunStepUpdated = 14; + public const StreamingUpdateReason ThreadCreated = 1; + public const StreamingUpdateReason Unknown = 0; + } + public class StreamingUpdate : StreamingUpdate where T : class { + public T Value { get; } + public static implicit operator T(StreamingUpdate update); + } + public class TextAnnotation { + public int EndIndex { get; } + public string InputFileId { get; } + public string OutputFileId { get; } + public int StartIndex { get; } + public string TextToReplace { get; } + } + public class TextAnnotationUpdate { + public int ContentIndex { get; } + public int? EndIndex { get; } + public string InputFileId { get; } + public string OutputFileId { get; } + public int? StartIndex { get; } + public string TextToReplace { get; } + } + public class ThreadCreationOptions { + public ThreadCreationOptions(); + public IList InitialMessages { get; } + public IDictionary Metadata { get; } + public ToolResources ToolResources { get; init; } + } + public class ThreadInitializationMessage : MessageCreationOptions { + public ThreadInitializationMessage(MessageRole role, IEnumerable content); + public static implicit operator ThreadInitializationMessage(string initializationMessage); + } + public class ThreadMessage { + public string AssistantId { get; } + public IReadOnlyList Attachments { get; } + public DateTimeOffset? CompletedAt { get; } + public IReadOnlyList Content { get; } + public DateTimeOffset CreatedAt { get; } + public string Id { get; } + public DateTimeOffset? IncompleteAt { get; } + public MessageFailureDetails IncompleteDetails { get; } + public IReadOnlyDictionary Metadata { get; } + public MessageRole Role { get; } + public string RunId { get; } + public MessageStatus Status { get; } + public string ThreadId { get; } + } + public class ThreadModificationOptions { + public ThreadModificationOptions(); + public IDictionary Metadata { get; } + public ToolResources ToolResources { get; init; } + } + public class ThreadRun { + public string AssistantId { get; } + public DateTimeOffset? CancelledAt { get; } + public DateTimeOffset? CompletedAt { get; } + public DateTimeOffset CreatedAt { get; } + public DateTimeOffset? ExpiresAt { get; } + public DateTimeOffset? FailedAt { get; } + public string Id { get; } + public RunIncompleteDetails IncompleteDetails { get; } + public string Instructions { get; } + public RunError LastError { get; } + public int? MaxCompletionTokens { get; } + public int? MaxPromptTokens { get; } + public IReadOnlyDictionary Metadata { get; } + public string Model { get; } + public float? NucleusSamplingFactor { get; } + public bool? ParallelToolCallsEnabled { get; init; } + public IReadOnlyList RequiredActions { get; } + public AssistantResponseFormat ResponseFormat { get; } + public DateTimeOffset? StartedAt { get; } + public RunStatus Status { get; } + public float? Temperature { get; } + public string ThreadId { get; } + public ToolConstraint ToolConstraint { get; } + public IReadOnlyList Tools { get; } + public RunTruncationStrategy TruncationStrategy { get; } + public RunTokenUsage Usage { get; } + } + public class ThreadUpdate : StreamingUpdate { + public DateTimeOffset CreatedAt { get; } + public string Id { get; } + public IReadOnlyDictionary Metadata { get; } + public ToolResources ToolResources { get; } + } + public class ToolConstraint { + public ToolConstraint(ToolDefinition toolDefinition); + public static ToolConstraint Auto { get; } + public static ToolConstraint None { get; } + public static ToolConstraint Required { get; } + } + public abstract class ToolDefinition { + protected ToolDefinition(); + protected ToolDefinition(string type); + public static CodeInterpreterToolDefinition CreateCodeInterpreter(); + public static FileSearchToolDefinition CreateFileSearch(int? maxResults = null); + public static FunctionToolDefinition CreateFunction(string name, string description = null, BinaryData parameters = null); + protected abstract void WriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options); + } + public class ToolOutput { + public ToolOutput(); + public ToolOutput(string toolCallId, string output); + public string Output { get; init; } + public string ToolCallId { get; init; } + } + public class ToolResources { + public ToolResources(); + public CodeInterpreterToolResources CodeInterpreter { get; init; } + public FileSearchToolResources FileSearch { get; init; } + } + public class VectorStoreCreationHelper { + public VectorStoreCreationHelper(); + public VectorStoreCreationHelper(IEnumerable files, IDictionary metadata = null); + public VectorStoreCreationHelper(IEnumerable fileIds, IDictionary metadata = null); + public IList FileIds { get; } + public IDictionary Metadata { get; } + } +} +namespace OpenAI.Audio { + public class AudioClient { + protected AudioClient(); + protected internal AudioClient(ClientPipeline pipeline, string model, Uri endpoint, OpenAIClientOptions options); + public AudioClient(string model, OpenAIClientOptions options = null); + public AudioClient(string model, ApiKeyCredential credential, OpenAIClientOptions options = null); + public virtual ClientPipeline Pipeline { get; } + public virtual ClientResult GenerateSpeechFromText(BinaryContent content, RequestOptions options = null); + public virtual ClientResult GenerateSpeechFromText(string text, GeneratedSpeechVoice voice, SpeechGenerationOptions options = null, CancellationToken cancellationToken = null); + public virtual Task GenerateSpeechFromTextAsync(BinaryContent content, RequestOptions options = null); + public virtual Task> GenerateSpeechFromTextAsync(string text, GeneratedSpeechVoice voice, SpeechGenerationOptions options = null, CancellationToken cancellationToken = null); + public virtual ClientResult TranscribeAudio(BinaryContent content, string contentType, RequestOptions options = null); + public virtual ClientResult TranscribeAudio(Stream audio, string audioFilename, AudioTranscriptionOptions options = null, CancellationToken cancellationToken = null); + public virtual ClientResult TranscribeAudio(string audioFilePath, AudioTranscriptionOptions options = null); + public virtual Task TranscribeAudioAsync(BinaryContent content, string contentType, RequestOptions options = null); + public virtual Task> TranscribeAudioAsync(Stream audio, string audioFilename, AudioTranscriptionOptions options = null, CancellationToken cancellationToken = null); + public virtual Task> TranscribeAudioAsync(string audioFilePath, AudioTranscriptionOptions options = null); + public virtual ClientResult TranslateAudio(BinaryContent content, string contentType, RequestOptions options = null); + public virtual ClientResult TranslateAudio(Stream audio, string audioFilename, AudioTranslationOptions options = null, CancellationToken cancellationToken = null); + public virtual ClientResult TranslateAudio(string audioFilePath, AudioTranslationOptions options = null); + public virtual Task TranslateAudioAsync(BinaryContent content, string contentType, RequestOptions options = null); + public virtual Task> TranslateAudioAsync(Stream audio, string audioFilename, AudioTranslationOptions options = null, CancellationToken cancellationToken = null); + public virtual Task> TranslateAudioAsync(string audioFilePath, AudioTranslationOptions options = null); + } + public sealed class AudioTimestampGranularities { + public const AudioTimestampGranularities Default = 0; + public const AudioTimestampGranularities Segment = 2; + public const AudioTimestampGranularities Word = 1; + } + public class AudioTranscription { + public TimeSpan? Duration { get; } + public string Language { get; } + public IReadOnlyList Segments { get; } + public string Text { get; } + public IReadOnlyList Words { get; } + } + public sealed class AudioTranscriptionFormat { + public const AudioTranscriptionFormat Simple = 1; + public const AudioTranscriptionFormat Srt = 3; + public const AudioTranscriptionFormat Text = 0; + public const AudioTranscriptionFormat Verbose = 2; + public const AudioTranscriptionFormat Vtt = 4; + } + public class AudioTranscriptionOptions { + public AudioTranscriptionOptions(); + public AudioTimestampGranularities Granularities { get; init; } + public string Language { get; init; } + public string Prompt { get; init; } + public AudioTranscriptionFormat? ResponseFormat { get; init; } + public float? Temperature { get; init; } + } + public class AudioTranslation { + public TimeSpan? Duration { get; } + public string Language { get; } + public IReadOnlyList Segments { get; } + public string Text { get; } + } + public sealed class AudioTranslationFormat { + public const AudioTranslationFormat Simple = 1; + public const AudioTranslationFormat Srt = 3; + public const AudioTranslationFormat Text = 0; + public const AudioTranslationFormat Verbose = 2; + public const AudioTranslationFormat Vtt = 4; + } + public class AudioTranslationOptions { + public AudioTranslationOptions(); + public string Prompt { get; init; } + public AudioTranslationFormat? ResponseFormat { get; init; } + public float? Temperature { get; init; } + } + public sealed class GeneratedSpeechFormat { + public const GeneratedSpeechFormat Aac = 2; + public const GeneratedSpeechFormat Flac = 3; + public const GeneratedSpeechFormat Mp3 = 0; + public const GeneratedSpeechFormat Opus = 1; + public const GeneratedSpeechFormat Pcm = 5; + public const GeneratedSpeechFormat Wav = 4; + } + public sealed class GeneratedSpeechVoice { + public const GeneratedSpeechVoice Alloy = 0; + public const GeneratedSpeechVoice Echo = 1; + public const GeneratedSpeechVoice Fable = 2; + public const GeneratedSpeechVoice Nova = 4; + public const GeneratedSpeechVoice Onyx = 3; + public const GeneratedSpeechVoice Shimmer = 5; + } + public class SpeechGenerationOptions { + public SpeechGenerationOptions(); + public GeneratedSpeechFormat? ResponseFormat { get; init; } + public float? Speed { get; init; } + } + public sealed class TranscribedSegment { + public TranscribedSegment(); + public Double AverageLogProbability { get; } + public float CompressionRatio { get; } + public TimeSpan End { get; } + public int Id { get; } + public Double NoSpeechProbability { get; } + public long SeekOffset { get; } + public TimeSpan Start { get; } + public float Temperature { get; } + public string Text { get; } + public IReadOnlyList TokenIds { get; } + } + public sealed class TranscribedWord { + public TranscribedWord(); + public TimeSpan End { get; } + public TimeSpan Start { get; } + public string Word { get; } + } +} +namespace OpenAI.Batch { + public class BatchClient { + protected BatchClient(); + public BatchClient(OpenAIClientOptions options = null); + public BatchClient(ApiKeyCredential credential, OpenAIClientOptions options = null); + protected internal BatchClient(ClientPipeline pipeline, Uri endpoint, OpenAIClientOptions options); + public virtual ClientPipeline Pipeline { get; } + public virtual ClientResult CancelBatch(string batchId, RequestOptions options); + public virtual Task CancelBatchAsync(string batchId, RequestOptions options); + public virtual ClientResult CreateBatch(BinaryContent content, RequestOptions options = null); + public virtual Task CreateBatchAsync(BinaryContent content, RequestOptions options = null); + public virtual ClientResult GetBatch(string batchId, RequestOptions options); + public virtual Task GetBatchAsync(string batchId, RequestOptions options); + public virtual ClientResult GetBatches(string after, int? limit, RequestOptions options); + public virtual Task GetBatchesAsync(string after, int? limit, RequestOptions options); + } +} +namespace OpenAI.Chat { + public class AssistantChatMessage : ChatMessage { + public AssistantChatMessage(ChatCompletion chatCompletion); + public AssistantChatMessage(ChatFunctionCall functionCall, string content = null); + public AssistantChatMessage(IEnumerable toolCalls, string content = null); + public AssistantChatMessage(string content); + public ChatFunctionCall FunctionCall { get; init; } + public string ParticipantName { get; init; } + public IList ToolCalls { get; } + protected override void WriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options); + } + public class ChatClient { + protected ChatClient(); + protected internal ChatClient(ClientPipeline pipeline, string model, Uri endpoint, OpenAIClientOptions options); + public ChatClient(string model, OpenAIClientOptions options = null); + public ChatClient(string model, ApiKeyCredential credential, OpenAIClientOptions options = null); + public virtual ClientPipeline Pipeline { get; } + public virtual ClientResult CompleteChat(params ChatMessage[] messages); + public virtual ClientResult CompleteChat(BinaryContent content, RequestOptions options = null); + public virtual ClientResult CompleteChat(IEnumerable messages, ChatCompletionOptions options = null, CancellationToken cancellationToken = null); + public virtual Task> CompleteChatAsync(params ChatMessage[] messages); + public virtual Task CompleteChatAsync(BinaryContent content, RequestOptions options = null); + public virtual Task> CompleteChatAsync(IEnumerable messages, ChatCompletionOptions options = null, CancellationToken cancellationToken = null); + public virtual CollectionResult CompleteChatStreaming(params ChatMessage[] messages); + public virtual CollectionResult CompleteChatStreaming(IEnumerable messages, ChatCompletionOptions options = null, CancellationToken cancellationToken = null); + public virtual AsyncCollectionResult CompleteChatStreamingAsync(params ChatMessage[] messages); + public virtual AsyncCollectionResult CompleteChatStreamingAsync(IEnumerable messages, ChatCompletionOptions options = null, CancellationToken cancellationToken = null); + } + public class ChatCompletion { + public IReadOnlyList Content { get; } + public IReadOnlyList ContentTokenLogProbabilities { get; } + public DateTimeOffset CreatedAt { get; } + public ChatFinishReason FinishReason { get; } + public ChatFunctionCall FunctionCall { get; } + public string Id { get; } + public string Model { get; } + public ChatMessageRole Role { get; } + public string SystemFingerprint { get; } + public IReadOnlyList ToolCalls { get; } + public ChatTokenUsage Usage { get; } + public override string ToString(); + } + public class ChatCompletionOptions { + public ChatCompletionOptions(); + public float? FrequencyPenalty { get; init; } + public ChatFunctionChoice FunctionChoice { get; init; } + public IList Functions { get; } + public bool? IncludeLogProbabilities { get; init; } + public IDictionary LogitBiases { get; } + public int? MaxTokens { get; init; } + public bool? ParallelToolCallsEnabled { get; init; } + public float? PresencePenalty { get; init; } + public ChatResponseFormat ResponseFormat { get; init; } + public long? Seed { get; init; } + public IList StopSequences { get; } + public float? Temperature { get; init; } + public ChatToolChoice ToolChoice { get; init; } + public IList Tools { get; } + public int? TopLogProbabilityCount { get; init; } + public float? TopP { get; init; } + public string User { get; init; } + } + public sealed class ChatFinishReason { + public const ChatFinishReason ContentFilter = 2; + public const ChatFinishReason FunctionCall = 4; + public const ChatFinishReason Length = 1; + public const ChatFinishReason Stop = 0; + public const ChatFinishReason ToolCalls = 3; + } + public class ChatFunction { + public ChatFunction(string functionName, string functionDescription = null, BinaryData functionParameters = null); + public string FunctionDescription { get; init; } + public string FunctionName { get; } + public BinaryData FunctionParameters { get; init; } + } + public class ChatFunctionCall { + public ChatFunctionCall(string functionName, string functionArguments); + public string FunctionArguments { get; } + public string FunctionName { get; } + } + public class ChatFunctionChoice { + public ChatFunctionChoice(ChatFunction chatFunction); + public static ChatFunctionChoice Auto { get; } + public static ChatFunctionChoice None { get; } + } + public abstract class ChatMessage { + protected ChatMessage(); + public IList Content { get; protected init; } + public static AssistantChatMessage CreateAssistantMessage(ChatCompletion chatCompletion); + public static AssistantChatMessage CreateAssistantMessage(ChatFunctionCall functionCall, string content = null); + public static AssistantChatMessage CreateAssistantMessage(IEnumerable toolCalls, string content = null); + public static AssistantChatMessage CreateAssistantMessage(string content); + public static FunctionChatMessage CreateFunctionMessage(string functionName, string content); + public static SystemChatMessage CreateSystemMessage(string content); + public static ToolChatMessage CreateToolChatMessage(string toolCallId, string content); + public static UserChatMessage CreateUserMessage(params ChatMessageContentPart[] contentParts); + public static UserChatMessage CreateUserMessage(IEnumerable contentParts); + public static UserChatMessage CreateUserMessage(string content); + public static implicit operator ChatMessage(string userMessage); + protected abstract void WriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options); + } + public class ChatMessageContentPart { + public BinaryData ImageBytes { get; } + public string ImageBytesMediaType { get; } + public ImageChatMessageContentPartDetail? ImageDetail { get; } + public Uri ImageUri { get; } + public ChatMessageContentPartKind Kind { get; } + public string Text { get; } + public static ChatMessageContentPart CreateImageMessageContentPart(BinaryData imageBytes, string imageBytesMediaType, ImageChatMessageContentPartDetail? imageDetail = null); + public static ChatMessageContentPart CreateImageMessageContentPart(Uri imageUri, ImageChatMessageContentPartDetail? imageDetail = null); + public static ChatMessageContentPart CreateTextMessageContentPart(string text); + public static implicit operator ChatMessageContentPart(string content); + public override string ToString(); + } + public sealed class ChatMessageContentPartKind { + public ChatMessageContentPartKind(string value); + public static ChatMessageContentPartKind Image { get; } + public static ChatMessageContentPartKind Text { get; } + public bool Equals(ChatMessageContentPartKind other); + public override bool Equals(object obj); + public override int GetHashCode(); + public static bool operator ==(ChatMessageContentPartKind left, ChatMessageContentPartKind right); + public static implicit operator ChatMessageContentPartKind(string value); + public static bool operator !=(ChatMessageContentPartKind left, ChatMessageContentPartKind right); + public override string ToString(); + } + public sealed class ChatMessageRole { + public const ChatMessageRole Assistant = 2; + public const ChatMessageRole Function = 4; + public const ChatMessageRole System = 0; + public const ChatMessageRole Tool = 3; + public const ChatMessageRole User = 1; + } + public class ChatResponseFormat { + public static ChatResponseFormat JsonObject { get; } + public static ChatResponseFormat Text { get; } + } + public class ChatTokenLogProbabilityInfo { + public float LogProbability { get; } + public string Token { get; } + public IReadOnlyList TopLogProbabilities { get; } + public IReadOnlyList Utf8ByteValues { get; } + } + public class ChatTokenTopLogProbabilityInfo { + public float LogProbability { get; } + public string Token { get; } + public IReadOnlyList Utf8ByteValues { get; } + } + public class ChatTokenUsage { + public int InputTokens { get; } + public int OutputTokens { get; } + public int TotalTokens { get; } + } + public class ChatTool { + public string FunctionDescription { get; } + public string FunctionName { get; } + public BinaryData FunctionParameters { get; } + public ChatToolKind Kind { get; } + public static ChatTool CreateFunctionTool(string functionName, string functionDescription = null, BinaryData functionParameters = null); + } + public class ChatToolCall { + public string FunctionArguments { get; } + public string FunctionName { get; } + public string Id { get; init; } + public ChatToolCallKind Kind { get; } + public static ChatToolCall CreateFunctionToolCall(string toolCallId, string functionName, string functionArguments); + } + public sealed class ChatToolCallKind { + public ChatToolCallKind(string value); + public static ChatToolCallKind Function { get; } + public bool Equals(ChatToolCallKind other); + public override bool Equals(object obj); + public override int GetHashCode(); + public static bool operator ==(ChatToolCallKind left, ChatToolCallKind right); + public static implicit operator ChatToolCallKind(string value); + public static bool operator !=(ChatToolCallKind left, ChatToolCallKind right); + public override string ToString(); + } + public class ChatToolChoice { + public ChatToolChoice(ChatTool tool); + public static ChatToolChoice Auto { get; } + public static ChatToolChoice None { get; } + public static ChatToolChoice Required { get; } + } + public sealed class ChatToolKind { + public ChatToolKind(string value); + public static ChatToolKind Function { get; } + public bool Equals(ChatToolKind other); + public override bool Equals(object obj); + public override int GetHashCode(); + public static bool operator ==(ChatToolKind left, ChatToolKind right); + public static implicit operator ChatToolKind(string value); + public static bool operator !=(ChatToolKind left, ChatToolKind right); + public override string ToString(); + } + public class FunctionChatMessage : ChatMessage { + public FunctionChatMessage(string functionName, string content = null); + public string FunctionName { get; } + protected override void WriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options); + } + public sealed class ImageChatMessageContentPartDetail { + public ImageChatMessageContentPartDetail(string value); + public static ImageChatMessageContentPartDetail Auto { get; } + public static ImageChatMessageContentPartDetail High { get; } + public static ImageChatMessageContentPartDetail Low { get; } + public bool Equals(ImageChatMessageContentPartDetail other); + public override bool Equals(object obj); + public override int GetHashCode(); + public static bool operator ==(ImageChatMessageContentPartDetail left, ImageChatMessageContentPartDetail right); + public static implicit operator ImageChatMessageContentPartDetail(string value); + public static bool operator !=(ImageChatMessageContentPartDetail left, ImageChatMessageContentPartDetail right); + public override string ToString(); + } + public class StreamingChatCompletionUpdate { + public IReadOnlyList ContentTokenLogProbabilities { get; } + public IReadOnlyList ContentUpdate { get; } + public DateTimeOffset CreatedAt { get; } + public ChatFinishReason? FinishReason { get; } + public StreamingChatFunctionCallUpdate FunctionCallUpdate { get; } + public string Id { get; } + public string Model { get; } + public ChatMessageRole? Role { get; } + public string SystemFingerprint { get; } + public IReadOnlyList ToolCallUpdates { get; } + public ChatTokenUsage Usage { get; } + } + public class StreamingChatFunctionCallUpdate { + public string FunctionArgumentsUpdate { get; } + public string FunctionName { get; } + } + public class StreamingChatToolCallUpdate { + public string FunctionArgumentsUpdate { get; } + public string FunctionName { get; } + public string Id { get; } + public int Index { get; } + public ChatToolCallKind Kind { get; } + } + public class SystemChatMessage : ChatMessage { + public SystemChatMessage(string content); + public string ParticipantName { get; init; } + protected override void WriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options); + } + public class ToolChatMessage : ChatMessage { + public ToolChatMessage(string toolCallId, string content); + public string ToolCallId { get; } + protected override void WriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options); + } + public class UserChatMessage : ChatMessage { + public UserChatMessage(params ChatMessageContentPart[] content); + public UserChatMessage(IEnumerable content); + public UserChatMessage(string content); + public string ParticipantName { get; init; } + protected override void WriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options); + } +} +namespace OpenAI.Embeddings { + public class Embedding { + public int Index { get; } + public ReadOnlyMemory Vector { get; } + } + public class EmbeddingClient { + protected EmbeddingClient(); + protected internal EmbeddingClient(ClientPipeline pipeline, string model, Uri endpoint, OpenAIClientOptions options); + public EmbeddingClient(string model, OpenAIClientOptions options = null); + public EmbeddingClient(string model, ApiKeyCredential credential, OpenAIClientOptions options = null); + public virtual ClientPipeline Pipeline { get; } + public virtual ClientResult GenerateEmbedding(string input, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = null); + public virtual Task> GenerateEmbeddingAsync(string input, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = null); + public virtual ClientResult GenerateEmbeddings(BinaryContent content, RequestOptions options = null); + public virtual ClientResult GenerateEmbeddings(IEnumerable> inputs, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = null); + public virtual ClientResult GenerateEmbeddings(IEnumerable inputs, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = null); + public virtual Task GenerateEmbeddingsAsync(BinaryContent content, RequestOptions options = null); + public virtual Task> GenerateEmbeddingsAsync(IEnumerable> inputs, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = null); + public virtual Task> GenerateEmbeddingsAsync(IEnumerable inputs, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = null); + } + public class EmbeddingCollection { + public string Model { get; } + public EmbeddingTokenUsage Usage { get; } + } + public class EmbeddingGenerationOptions { + public EmbeddingGenerationOptions(); + public int? Dimensions { get; init; } + public string User { get; init; } + } + public class EmbeddingTokenUsage { + public int InputTokens { get; } + public int TotalTokens { get; } + } +} +namespace OpenAI.Files { + public class FileClient { + protected FileClient(); + public FileClient(OpenAIClientOptions options = null); + public FileClient(ApiKeyCredential credential, OpenAIClientOptions options = null); + protected internal FileClient(ClientPipeline pipeline, Uri endpoint, OpenAIClientOptions options); + public virtual ClientPipeline Pipeline { get; } + public virtual IncrementalUploadJob CreateIncrementalUploadJob(BinaryContent content, RequestOptions options); + public virtual Task CreateIncrementalUploadJobAsync(BinaryContent content, RequestOptions options); + public virtual ClientResult DeleteFile(OpenAIFileInfo file); + public virtual ClientResult DeleteFile(string fileId, RequestOptions options); + public virtual ClientResult DeleteFile(string fileId, CancellationToken cancellationToken = null); + public virtual Task> DeleteFileAsync(OpenAIFileInfo file); + public virtual Task DeleteFileAsync(string fileId, RequestOptions options); + public virtual Task> DeleteFileAsync(string fileId, CancellationToken cancellationToken = null); + public virtual ClientResult DownloadFile(OpenAIFileInfo file); + public virtual ClientResult DownloadFile(string fileId, RequestOptions options); + public virtual ClientResult DownloadFile(string fileId, CancellationToken cancellationToken = null); + public virtual Task> DownloadFileAsync(OpenAIFileInfo file); + public virtual Task DownloadFileAsync(string fileId, RequestOptions options); + public virtual Task> DownloadFileAsync(string fileId, CancellationToken cancellationToken = null); + public virtual ClientResult GetFile(string fileId, RequestOptions options); + public virtual ClientResult GetFile(string fileId, CancellationToken cancellationToken = null); + public virtual Task GetFileAsync(string fileId, RequestOptions options); + public virtual Task> GetFileAsync(string fileId, CancellationToken cancellationToken = null); + public virtual ClientResult GetFiles(OpenAIFilePurpose? purpose = null, CancellationToken cancellationToken = null); + public virtual ClientResult GetFiles(string purpose, RequestOptions options); + public virtual Task> GetFilesAsync(OpenAIFilePurpose? purpose = null, CancellationToken cancellationToken = null); + public virtual Task GetFilesAsync(string purpose, RequestOptions options); + public virtual ClientResult UploadFile(BinaryData file, string filename, FileUploadPurpose purpose); + public virtual ClientResult UploadFile(BinaryContent content, string contentType, RequestOptions options = null); + public virtual ClientResult UploadFile(Stream file, string filename, FileUploadPurpose purpose, CancellationToken cancellationToken = null); + public virtual ClientResult UploadFile(string filePath, FileUploadPurpose purpose); + public virtual Task> UploadFileAsync(BinaryData file, string filename, FileUploadPurpose purpose); + public virtual Task UploadFileAsync(BinaryContent content, string contentType, RequestOptions options = null); + public virtual Task> UploadFileAsync(Stream file, string filename, FileUploadPurpose purpose, CancellationToken cancellationToken = null); + public virtual Task> UploadFileAsync(string filePath, FileUploadPurpose purpose); + } + public sealed class FileUploadPurpose { + public FileUploadPurpose(string value); + public static FileUploadPurpose Assistants { get; } + public static FileUploadPurpose Batch { get; } + public static FileUploadPurpose FineTune { get; } + public static FileUploadPurpose Vision { get; } + public bool Equals(FileUploadPurpose other); + public override bool Equals(object obj); + public override int GetHashCode(); + public static bool operator ==(FileUploadPurpose left, FileUploadPurpose right); + public static implicit operator FileUploadPurpose(string value); + public static bool operator !=(FileUploadPurpose left, FileUploadPurpose right); + public override string ToString(); + } + public class IncrementalUploadJob { + public DateTimeOffset CreatedAt { get; } + public DateTimeOffset ExpiresAt { get; } + public string Id { get; } + public ContinuationToken RehydrationToken { get; } + public virtual ClientResult AddDataPart(string jobId, BinaryContent content, string contentType, RequestOptions options); + public virtual Task AddDataPartAsync(string jobId, BinaryContent content, string contentType, RequestOptions options); + public virtual ClientResult Cancel(string jobId, RequestOptions options); + public virtual Task CancelAsync(string jobId, RequestOptions options); + public virtual ClientResult Complete(string jobId, BinaryContent content, RequestOptions options); + public virtual Task CompleteAsync(string jobId, BinaryContent content, RequestOptions options); + public static IncrementalUploadJob Rehydrate(FileClient client, ContinuationToken rehydrationToken); + } + public class OpenAIFileInfo { + public DateTimeOffset CreatedAt { get; } + public string Filename { get; } + public string Id { get; } + public OpenAIFilePurpose Purpose { get; } + public long? SizeInBytes { get; } + public OpenAIFileStatus Status { get; } + public string StatusDetails { get; } + } + public class OpenAIFileInfoCollection { + } + public sealed class OpenAIFilePurpose { + public OpenAIFilePurpose(string value); + public static OpenAIFilePurpose Assistants { get; } + public static OpenAIFilePurpose AssistantsOutput { get; } + public static OpenAIFilePurpose Batch { get; } + public static OpenAIFilePurpose BatchOutput { get; } + public static OpenAIFilePurpose FineTune { get; } + public static OpenAIFilePurpose FineTuneResults { get; } + public static OpenAIFilePurpose Vision { get; } + public bool Equals(OpenAIFilePurpose other); + public override bool Equals(object obj); + public override int GetHashCode(); + public static bool operator ==(OpenAIFilePurpose left, OpenAIFilePurpose right); + public static implicit operator OpenAIFilePurpose(string value); + public static bool operator !=(OpenAIFilePurpose left, OpenAIFilePurpose right); + public override string ToString(); + } + public sealed class OpenAIFileStatus { + public OpenAIFileStatus(string value); + public static OpenAIFileStatus Error { get; } + public static OpenAIFileStatus Processed { get; } + public static OpenAIFileStatus Uploaded { get; } + public bool Equals(OpenAIFileStatus other); + public override bool Equals(object obj); + public override int GetHashCode(); + public static bool operator ==(OpenAIFileStatus left, OpenAIFileStatus right); + public static implicit operator OpenAIFileStatus(string value); + public static bool operator !=(OpenAIFileStatus left, OpenAIFileStatus right); + public override string ToString(); + } +} +namespace OpenAI.FineTuning { + public class FineTuningClient { + protected FineTuningClient(); + public FineTuningClient(OpenAIClientOptions options = null); + public FineTuningClient(ApiKeyCredential credential, OpenAIClientOptions options = null); + protected internal FineTuningClient(ClientPipeline pipeline, Uri endpoint, OpenAIClientOptions options); + public virtual ClientPipeline Pipeline { get; } + public virtual ClientResult CancelJob(string jobId, RequestOptions options); + public virtual Task CancelJobAsync(string jobId, RequestOptions options); + public virtual ClientResult CreateJob(BinaryContent content, RequestOptions options = null); + public virtual Task CreateJobAsync(BinaryContent content, RequestOptions options = null); + public virtual ClientResult GetJob(string jobId, RequestOptions options); + public virtual Task GetJobAsync(string jobId, RequestOptions options); + public virtual ClientResult GetJobCheckpoints(string fineTuningJobId, string after, int? limit, RequestOptions options); + public virtual Task GetJobCheckpointsAsync(string fineTuningJobId, string after, int? limit, RequestOptions options); + public virtual ClientResult GetJobEvents(string jobId, string after, int? limit, RequestOptions options); + public virtual Task GetJobEventsAsync(string jobId, string after, int? limit, RequestOptions options); + public virtual ClientResult GetJobs(string after, int? limit, RequestOptions options); + public virtual Task GetJobsAsync(string after, int? limit, RequestOptions options); + } +} +namespace OpenAI.Images { + public class GeneratedImage { + public BinaryData ImageBytes { get; } + public Uri ImageUri { get; } + public string RevisedPrompt { get; } + } + public class GeneratedImageCollection { + public DateTimeOffset Created { get; } + public DateTimeOffset CreatedAt { get; } + } + public sealed class GeneratedImageFormat { + public const GeneratedImageFormat Bytes = 0; + public const GeneratedImageFormat Uri = 1; + } + public sealed class GeneratedImageQuality { + public const GeneratedImageQuality High = 0; + public const GeneratedImageQuality Standard = 1; + } + public sealed class GeneratedImageSize { + public static readonly GeneratedImageSize W1024xH1024; + public static readonly GeneratedImageSize W1024xH1792; + public static readonly GeneratedImageSize W1792xH1024; + public static readonly GeneratedImageSize W256xH256; + public static readonly GeneratedImageSize W512xH512; + public GeneratedImageSize(int width, int height); + public bool Equals(GeneratedImageSize other); + public override bool Equals(object obj); + public override int GetHashCode(); + public static bool operator ==(GeneratedImageSize left, GeneratedImageSize right); + public static bool operator !=(GeneratedImageSize left, GeneratedImageSize right); + public override string ToString(); + } + public sealed class GeneratedImageStyle { + public const GeneratedImageStyle Natural = 1; + public const GeneratedImageStyle Vivid = 0; + } + public class ImageClient { + protected ImageClient(); + protected internal ImageClient(ClientPipeline pipeline, string model, Uri endpoint, OpenAIClientOptions options); + public ImageClient(string model, OpenAIClientOptions options = null); + public ImageClient(string model, ApiKeyCredential credential, OpenAIClientOptions options = null); + public virtual ClientPipeline Pipeline { get; } + public virtual ClientResult GenerateImage(string prompt, ImageGenerationOptions options = null, CancellationToken cancellationToken = null); + public virtual Task> GenerateImageAsync(string prompt, ImageGenerationOptions options = null, CancellationToken cancellationToken = null); + public virtual ClientResult GenerateImageEdit(Stream image, string imageFilename, string prompt, ImageEditOptions options = null, CancellationToken cancellationToken = null); + public virtual ClientResult GenerateImageEdit(Stream image, string imageFilename, string prompt, Stream mask, string maskFilename, ImageEditOptions options = null, CancellationToken cancellationToken = null); + public virtual ClientResult GenerateImageEdit(string imageFilePath, string prompt, ImageEditOptions options = null); + public virtual ClientResult GenerateImageEdit(string imageFilePath, string prompt, string maskFilePath, ImageEditOptions options = null); + public virtual Task> GenerateImageEditAsync(Stream image, string imageFilename, string prompt, ImageEditOptions options = null, CancellationToken cancellationToken = null); + public virtual Task> GenerateImageEditAsync(Stream image, string imageFilename, string prompt, Stream mask, string maskFilename, ImageEditOptions options = null, CancellationToken cancellationToken = null); + public virtual Task> GenerateImageEditAsync(string imageFilePath, string prompt, ImageEditOptions options = null); + public virtual Task> GenerateImageEditAsync(string imageFilePath, string prompt, string maskFilePath, ImageEditOptions options = null); + public virtual ClientResult GenerateImageEdits(BinaryContent content, string contentType, RequestOptions options = null); + public virtual ClientResult GenerateImageEdits(Stream image, string imageFilename, string prompt, int imageCount, ImageEditOptions options = null, CancellationToken cancellationToken = null); + public virtual ClientResult GenerateImageEdits(Stream image, string imageFilename, string prompt, Stream mask, string maskFilename, int imageCount, ImageEditOptions options = null, CancellationToken cancellationToken = null); + public virtual ClientResult GenerateImageEdits(string imageFilePath, string prompt, int imageCount, ImageEditOptions options = null); + public virtual ClientResult GenerateImageEdits(string imageFilePath, string prompt, string maskFilePath, int imageCount, ImageEditOptions options = null); + public virtual Task GenerateImageEditsAsync(BinaryContent content, string contentType, RequestOptions options = null); + public virtual Task> GenerateImageEditsAsync(Stream image, string imageFilename, string prompt, int imageCount, ImageEditOptions options = null, CancellationToken cancellationToken = null); + public virtual Task> GenerateImageEditsAsync(Stream image, string imageFilename, string prompt, Stream mask, string maskFilename, int imageCount, ImageEditOptions options = null, CancellationToken cancellationToken = null); + public virtual Task> GenerateImageEditsAsync(string imageFilePath, string prompt, int imageCount, ImageEditOptions options = null); + public virtual Task> GenerateImageEditsAsync(string imageFilePath, string prompt, string maskFilePath, int imageCount, ImageEditOptions options = null); + public virtual ClientResult GenerateImages(BinaryContent content, RequestOptions options = null); + public virtual ClientResult GenerateImages(string prompt, int imageCount, ImageGenerationOptions options = null, CancellationToken cancellationToken = null); + public virtual Task GenerateImagesAsync(BinaryContent content, RequestOptions options = null); + public virtual Task> GenerateImagesAsync(string prompt, int imageCount, ImageGenerationOptions options = null, CancellationToken cancellationToken = null); + public virtual ClientResult GenerateImageVariation(Stream image, string imageFilename, ImageVariationOptions options = null, CancellationToken cancellationToken = null); + public virtual ClientResult GenerateImageVariation(string imageFilePath, ImageVariationOptions options = null); + public virtual Task> GenerateImageVariationAsync(Stream image, string imageFilename, ImageVariationOptions options = null, CancellationToken cancellationToken = null); + public virtual Task> GenerateImageVariationAsync(string imageFilePath, ImageVariationOptions options = null); + public virtual ClientResult GenerateImageVariations(BinaryContent content, string contentType, RequestOptions options = null); + public virtual ClientResult GenerateImageVariations(Stream image, string imageFilename, int imageCount, ImageVariationOptions options = null, CancellationToken cancellationToken = null); + public virtual ClientResult GenerateImageVariations(string imageFilePath, int imageCount, ImageVariationOptions options = null); + public virtual Task GenerateImageVariationsAsync(BinaryContent content, string contentType, RequestOptions options = null); + public virtual Task> GenerateImageVariationsAsync(Stream image, string imageFilename, int imageCount, ImageVariationOptions options = null, CancellationToken cancellationToken = null); + public virtual Task> GenerateImageVariationsAsync(string imageFilePath, int imageCount, ImageVariationOptions options = null); + } + public class ImageEditOptions { + public ImageEditOptions(); + public GeneratedImageFormat? ResponseFormat { get; init; } + public GeneratedImageSize? Size { get; init; } + public string User { get; init; } + } + public class ImageGenerationOptions { + public ImageGenerationOptions(); + public GeneratedImageQuality? Quality { get; init; } + public GeneratedImageFormat? ResponseFormat { get; init; } + public GeneratedImageSize? Size { get; init; } + public GeneratedImageStyle? Style { get; init; } + public string User { get; init; } + } + public class ImageVariationOptions { + public ImageVariationOptions(); + public GeneratedImageFormat? ResponseFormat { get; init; } + public GeneratedImageSize? Size { get; init; } + public string User { get; init; } + } +} +namespace OpenAI.Models { + public class ModelClient { + protected ModelClient(); + public ModelClient(OpenAIClientOptions options = null); + public ModelClient(ApiKeyCredential credential, OpenAIClientOptions options = null); + protected internal ModelClient(ClientPipeline pipeline, Uri endpoint, OpenAIClientOptions options); + public virtual ClientPipeline Pipeline { get; } + public virtual ClientResult DeleteModel(string model, RequestOptions options); + public virtual ClientResult DeleteModel(string model); + public virtual Task DeleteModelAsync(string model, RequestOptions options); + public virtual Task> DeleteModelAsync(string model); + public virtual ClientResult GetModel(string model, RequestOptions options); + public virtual ClientResult GetModel(string model); + public virtual Task GetModelAsync(string model, RequestOptions options); + public virtual Task> GetModelAsync(string model); + public virtual ClientResult GetModels(); + public virtual ClientResult GetModels(RequestOptions options); + public virtual Task> GetModelsAsync(); + public virtual Task GetModelsAsync(RequestOptions options); + } + public class OpenAIModelInfo { + public DateTimeOffset CreatedAt { get; } + public string Id { get; } + public string OwnedBy { get; } + } + public class OpenAIModelInfoCollection { + } +} +namespace OpenAI.Moderations { + public class ModerationCategories { + public bool Harassment { get; } + public bool HarassmentThreatening { get; } + public bool Hate { get; } + public bool HateThreatening { get; } + public bool SelfHarm { get; } + public bool SelfHarmInstructions { get; } + public bool SelfHarmIntent { get; } + public bool Sexual { get; } + public bool SexualMinors { get; } + public bool Violence { get; } + public bool ViolenceGraphic { get; } + } + public class ModerationCategoryScores { + public float Harassment { get; } + public float HarassmentThreatening { get; } + public float Hate { get; } + public float HateThreatening { get; } + public float SelfHarm { get; } + public float SelfHarmInstructions { get; } + public float SelfHarmIntent { get; } + public float Sexual { get; } + public float SexualMinors { get; } + public float Violence { get; } + public float ViolenceGraphic { get; } + } + public class ModerationClient { + protected ModerationClient(); + protected internal ModerationClient(ClientPipeline pipeline, string model, Uri endpoint, OpenAIClientOptions options); + public ModerationClient(string model, OpenAIClientOptions options = null); + public ModerationClient(string model, ApiKeyCredential credential, OpenAIClientOptions options = null); + public virtual ClientPipeline Pipeline { get; } + public virtual ClientResult ClassifyTextInput(string input, CancellationToken cancellationToken = null); + public virtual Task> ClassifyTextInputAsync(string input, CancellationToken cancellationToken = null); + public virtual ClientResult ClassifyTextInputs(BinaryContent content, RequestOptions options = null); + public virtual ClientResult ClassifyTextInputs(IEnumerable inputs, CancellationToken cancellationToken = null); + public virtual Task ClassifyTextInputsAsync(BinaryContent content, RequestOptions options = null); + public virtual Task> ClassifyTextInputsAsync(IEnumerable inputs, CancellationToken cancellationToken = null); + } + public class ModerationCollection { + public string Id { get; } + public string Model { get; } + } + public class ModerationResult { + public ModerationCategories Categories { get; } + public ModerationCategoryScores CategoryScores { get; } + public bool Flagged { get; } + } +} +namespace OpenAI.VectorStores { + public abstract class FileChunkingStrategy { + protected FileChunkingStrategy(); + public static FileChunkingStrategy Auto { get; } + public static FileChunkingStrategy Unknown { get; } + public static FileChunkingStrategy CreateStaticStrategy(int maxTokensPerChunk, int overlappingTokenCount); + } + public class StaticFileChunkingStrategy : FileChunkingStrategy { + public StaticFileChunkingStrategy(int maxTokensPerChunk, int overlappingTokenCount); + public int MaxTokensPerChunk { get; } + public int OverlappingTokenCount { get; } + } + public class VectorStore { + public DateTimeOffset CreatedAt { get; } + public VectorStoreExpirationPolicy ExpirationPolicy { get; } + public DateTimeOffset? ExpiresAt { get; } + public VectorStoreFileCounts FileCounts { get; } + public string Id { get; } + public DateTimeOffset? LastActiveAt { get; } + public IReadOnlyDictionary Metadata { get; } + public string Name { get; } + public VectorStoreStatus Status { get; } + public int UsageBytes { get; } + } + public class VectorStoreBatchFileJob { + public string BatchId { get; } + public DateTimeOffset CreatedAt { get; } + public VectorStoreFileCounts FileCounts { get; } + public VectorStoreBatchFileJobStatus Status { get; } + public string VectorStoreId { get; } + } + public sealed class VectorStoreBatchFileJobStatus { + public VectorStoreBatchFileJobStatus(string value); + public static VectorStoreBatchFileJobStatus Cancelled { get; } + public static VectorStoreBatchFileJobStatus Completed { get; } + public static VectorStoreBatchFileJobStatus Failed { get; } + public static VectorStoreBatchFileJobStatus InProgress { get; } + public bool Equals(VectorStoreBatchFileJobStatus other); + public override bool Equals(object obj); + public override int GetHashCode(); + public static bool operator ==(VectorStoreBatchFileJobStatus left, VectorStoreBatchFileJobStatus right); + public static implicit operator VectorStoreBatchFileJobStatus(string value); + public static bool operator !=(VectorStoreBatchFileJobStatus left, VectorStoreBatchFileJobStatus right); + public override string ToString(); + } + public class VectorStoreClient { + protected VectorStoreClient(); + public VectorStoreClient(OpenAIClientOptions options = null); + public VectorStoreClient(ApiKeyCredential credential, OpenAIClientOptions options = null); + protected internal VectorStoreClient(ClientPipeline pipeline, Uri endpoint, OpenAIClientOptions options); + public virtual ClientPipeline Pipeline { get; } + public virtual ClientResult AddFileToVectorStore(VectorStore vectorStore, Files.OpenAIFileInfo file); + public virtual ClientResult AddFileToVectorStore(string vectorStoreId, BinaryContent content, RequestOptions options = null); + public virtual ClientResult AddFileToVectorStore(string vectorStoreId, string fileId, CancellationToken cancellationToken = null); + public virtual Task> AddFileToVectorStoreAsync(VectorStore vectorStore, Files.OpenAIFileInfo file); + public virtual Task AddFileToVectorStoreAsync(string vectorStoreId, BinaryContent content, RequestOptions options = null); + public virtual Task> AddFileToVectorStoreAsync(string vectorStoreId, string fileId, CancellationToken cancellationToken = null); + public virtual ClientResult CancelBatchFileJob(VectorStoreBatchFileJob batchJob); + public virtual ClientResult CancelBatchFileJob(string vectorStoreId, string batchId, RequestOptions options); + public virtual ClientResult CancelBatchFileJob(string vectorStoreId, string batchJobId, CancellationToken cancellationToken = null); + public virtual Task> CancelBatchFileJobAsync(VectorStoreBatchFileJob batchJob); + public virtual Task CancelBatchFileJobAsync(string vectorStoreId, string batchId, RequestOptions options); + public virtual Task> CancelBatchFileJobAsync(string vectorStoreId, string batchJobId, CancellationToken cancellationToken = null); + public virtual ClientResult CreateBatchFileJob(VectorStore vectorStore, IEnumerable files); + public virtual ClientResult CreateBatchFileJob(string vectorStoreId, BinaryContent content, RequestOptions options = null); + public virtual ClientResult CreateBatchFileJob(string vectorStoreId, IEnumerable fileIds, CancellationToken cancellationToken = null); + public virtual Task> CreateBatchFileJobAsync(VectorStore vectorStore, IEnumerable files); + public virtual Task CreateBatchFileJobAsync(string vectorStoreId, BinaryContent content, RequestOptions options = null); + public virtual Task> CreateBatchFileJobAsync(string vectorStoreId, IEnumerable fileIds, CancellationToken cancellationToken = null); + public virtual ClientResult CreateVectorStore(VectorStoreCreationOptions vectorStore = null, CancellationToken cancellationToken = null); + public virtual ClientResult CreateVectorStore(BinaryContent content, RequestOptions options = null); + public virtual Task> CreateVectorStoreAsync(VectorStoreCreationOptions vectorStore = null, CancellationToken cancellationToken = null); + public virtual Task CreateVectorStoreAsync(BinaryContent content, RequestOptions options = null); + public virtual ClientResult DeleteVectorStore(VectorStore vectorStore); + public virtual ClientResult DeleteVectorStore(string vectorStoreId, RequestOptions options); + public virtual ClientResult DeleteVectorStore(string vectorStoreId, CancellationToken cancellationToken = null); + public virtual Task> DeleteVectorStoreAsync(VectorStore vectorStore); + public virtual Task DeleteVectorStoreAsync(string vectorStoreId, RequestOptions options); + public virtual Task> DeleteVectorStoreAsync(string vectorStoreId, CancellationToken cancellationToken = null); + public virtual ClientResult GetBatchFileJob(VectorStoreBatchFileJob batchJob); + public virtual ClientResult GetBatchFileJob(string vectorStoreId, string batchId, RequestOptions options); + public virtual ClientResult GetBatchFileJob(string vectorStoreId, string batchJobId, CancellationToken cancellationToken = null); + public virtual Task> GetBatchFileJobAsync(VectorStoreBatchFileJob batchJob); + public virtual Task GetBatchFileJobAsync(string vectorStoreId, string batchId, RequestOptions options); + public virtual Task> GetBatchFileJobAsync(string vectorStoreId, string batchJobId, CancellationToken cancellationToken = null); + public virtual ClientResult GetFileAssociation(VectorStore vectorStore, Files.OpenAIFileInfo file); + public virtual ClientResult GetFileAssociation(string vectorStoreId, string fileId, RequestOptions options); + public virtual ClientResult GetFileAssociation(string vectorStoreId, string fileId, CancellationToken cancellationToken = null); + public virtual Task> GetFileAssociationAsync(VectorStore vectorStore, Files.OpenAIFileInfo file); + public virtual Task GetFileAssociationAsync(string vectorStoreId, string fileId, RequestOptions options); + public virtual Task> GetFileAssociationAsync(string vectorStoreId, string fileId, CancellationToken cancellationToken = null); + public virtual PageCollection GetFileAssociations(VectorStore vectorStore, VectorStoreFileAssociationCollectionOptions options = null); + public virtual PageCollection GetFileAssociations(VectorStoreBatchFileJob batchJob, VectorStoreFileAssociationCollectionOptions options = null); + public virtual PageCollection GetFileAssociations(ContinuationToken firstPageToken, CancellationToken cancellationToken = null); + public virtual PageCollection GetFileAssociations(string vectorStoreId, VectorStoreFileAssociationCollectionOptions options = null, CancellationToken cancellationToken = null); + public virtual IEnumerable GetFileAssociations(string vectorStoreId, int? limit, string order, string after, string before, string filter, RequestOptions options); + public virtual PageCollection GetFileAssociations(string vectorStoreId, string batchJobId, VectorStoreFileAssociationCollectionOptions options = null, CancellationToken cancellationToken = null); + public virtual PageCollection GetFileAssociations(string vectorStoreId, string batchJobId, ContinuationToken firstPageToken, CancellationToken cancellationToken = null); + public virtual IEnumerable GetFileAssociations(string vectorStoreId, string batchId, int? limit, string order, string after, string before, string filter, RequestOptions options); + public virtual AsyncPageCollection GetFileAssociationsAsync(VectorStore vectorStore, VectorStoreFileAssociationCollectionOptions options = null); + public virtual AsyncPageCollection GetFileAssociationsAsync(VectorStoreBatchFileJob batchJob, VectorStoreFileAssociationCollectionOptions options = null); + public virtual AsyncPageCollection GetFileAssociationsAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = null); + public virtual AsyncPageCollection GetFileAssociationsAsync(string vectorStoreId, VectorStoreFileAssociationCollectionOptions options = null, CancellationToken cancellationToken = null); + public virtual IAsyncEnumerable GetFileAssociationsAsync(string vectorStoreId, int? limit, string order, string after, string before, string filter, RequestOptions options); + public virtual AsyncPageCollection GetFileAssociationsAsync(string vectorStoreId, string batchJobId, VectorStoreFileAssociationCollectionOptions options = null, CancellationToken cancellationToken = null); + public virtual AsyncPageCollection GetFileAssociationsAsync(string vectorStoreId, string batchJobId, ContinuationToken firstPageToken, CancellationToken cancellationToken = null); + public virtual IAsyncEnumerable GetFileAssociationsAsync(string vectorStoreId, string batchId, int? limit, string order, string after, string before, string filter, RequestOptions options); + public virtual ClientResult GetVectorStore(VectorStore vectorStore); + public virtual ClientResult GetVectorStore(string vectorStoreId, RequestOptions options); + public virtual ClientResult GetVectorStore(string vectorStoreId, CancellationToken cancellationToken = null); + public virtual Task> GetVectorStoreAsync(VectorStore vectorStore); + public virtual Task GetVectorStoreAsync(string vectorStoreId, RequestOptions options); + public virtual Task> GetVectorStoreAsync(string vectorStoreId, CancellationToken cancellationToken = null); + public virtual PageCollection GetVectorStores(VectorStoreCollectionOptions options = null, CancellationToken cancellationToken = null); + public virtual PageCollection GetVectorStores(ContinuationToken firstPageToken, CancellationToken cancellationToken = null); + public virtual IEnumerable GetVectorStores(int? limit, string order, string after, string before, RequestOptions options); + public virtual AsyncPageCollection GetVectorStoresAsync(VectorStoreCollectionOptions options = null, CancellationToken cancellationToken = null); + public virtual AsyncPageCollection GetVectorStoresAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = null); + public virtual IAsyncEnumerable GetVectorStoresAsync(int? limit, string order, string after, string before, RequestOptions options); + public virtual ClientResult ModifyVectorStore(VectorStore vectorStore, VectorStoreModificationOptions options); + public virtual ClientResult ModifyVectorStore(string vectorStoreId, VectorStoreModificationOptions vectorStore, CancellationToken cancellationToken = null); + public virtual ClientResult ModifyVectorStore(string vectorStoreId, BinaryContent content, RequestOptions options = null); + public virtual Task> ModifyVectorStoreAsync(VectorStore vectorStore, VectorStoreModificationOptions options); + public virtual Task> ModifyVectorStoreAsync(string vectorStoreId, VectorStoreModificationOptions vectorStore, CancellationToken cancellationToken = null); + public virtual Task ModifyVectorStoreAsync(string vectorStoreId, BinaryContent content, RequestOptions options = null); + public virtual ClientResult RemoveFileFromStore(VectorStore vectorStore, Files.OpenAIFileInfo file); + public virtual ClientResult RemoveFileFromStore(string vectorStoreId, string fileId, RequestOptions options); + public virtual ClientResult RemoveFileFromStore(string vectorStoreId, string fileId, CancellationToken cancellationToken = null); + public virtual Task> RemoveFileFromStoreAsync(VectorStore vectorStore, Files.OpenAIFileInfo file); + public virtual Task RemoveFileFromStoreAsync(string vectorStoreId, string fileId, RequestOptions options); + public virtual Task> RemoveFileFromStoreAsync(string vectorStoreId, string fileId, CancellationToken cancellationToken = null); + } + public class VectorStoreCollectionOptions { + public VectorStoreCollectionOptions(); + public string AfterId { get; init; } + public string BeforeId { get; init; } + public ListOrder? Order { get; init; } + public int? PageSize { get; init; } + } + public class VectorStoreCreationOptions { + public VectorStoreCreationOptions(); + public FileChunkingStrategy ChunkingStrategy { get; init; } + public VectorStoreExpirationPolicy ExpirationPolicy { get; init; } + public IList FileIds { get; init; } + public IDictionary Metadata { get; } + public string Name { get; init; } + } + public sealed class VectorStoreExpirationAnchor { + public const VectorStoreExpirationAnchor LastActiveAt = 1; + public const VectorStoreExpirationAnchor Unknown = 0; + } + public class VectorStoreExpirationPolicy { + public VectorStoreExpirationPolicy(); + public VectorStoreExpirationPolicy(VectorStoreExpirationAnchor anchor, int days); + public required VectorStoreExpirationAnchor Anchor { get; init; } + public required int Days { get; init; } + } + public class VectorStoreFileAssociation { + public FileChunkingStrategy ChunkingStrategy { get; } + public DateTimeOffset CreatedAt { get; } + public string FileId { get; } + public VectorStoreFileAssociationError? LastError { get; } + public int Size { get; } + public VectorStoreFileAssociationStatus Status { get; } + public string VectorStoreId { get; } + } + public class VectorStoreFileAssociationCollectionOptions { + public VectorStoreFileAssociationCollectionOptions(); + public string AfterId { get; init; } + public string BeforeId { get; init; } + public VectorStoreFileStatusFilter? Filter { get; init; } + public ListOrder? Order { get; init; } + public int? PageSize { get; init; } + } + public sealed class VectorStoreFileAssociationError { + public VectorStoreFileAssociationError(); + public VectorStoreFileAssociationErrorCode Code { get; } + public string Message { get; } + } + public sealed class VectorStoreFileAssociationErrorCode { + public VectorStoreFileAssociationErrorCode(string value); + public static VectorStoreFileAssociationErrorCode FileNotFound { get; } + public static VectorStoreFileAssociationErrorCode InternalError { get; } + public static VectorStoreFileAssociationErrorCode ParsingError { get; } + public static VectorStoreFileAssociationErrorCode UnhandledMimeType { get; } + public bool Equals(VectorStoreFileAssociationErrorCode other); + public override bool Equals(object obj); + public override int GetHashCode(); + public static bool operator ==(VectorStoreFileAssociationErrorCode left, VectorStoreFileAssociationErrorCode right); + public static implicit operator VectorStoreFileAssociationErrorCode(string value); + public static bool operator !=(VectorStoreFileAssociationErrorCode left, VectorStoreFileAssociationErrorCode right); + public override string ToString(); + } + public sealed class VectorStoreFileAssociationStatus { + public const VectorStoreFileAssociationStatus Cancelled = 3; + public const VectorStoreFileAssociationStatus Completed = 2; + public const VectorStoreFileAssociationStatus Failed = 4; + public const VectorStoreFileAssociationStatus InProgress = 1; + public const VectorStoreFileAssociationStatus Unknown = 0; + } + public sealed class VectorStoreFileCounts { + public VectorStoreFileCounts(); + public int Cancelled { get; } + public int Completed { get; } + public int Failed { get; } + public int InProgress { get; } + public int Total { get; } + } + public sealed class VectorStoreFileStatusFilter { + public VectorStoreFileStatusFilter(string value); + public static VectorStoreFileStatusFilter Cancelled { get; } + public static VectorStoreFileStatusFilter Completed { get; } + public static VectorStoreFileStatusFilter Failed { get; } + public static VectorStoreFileStatusFilter InProgress { get; } + public bool Equals(VectorStoreFileStatusFilter other); + public override bool Equals(object obj); + public override int GetHashCode(); + public static bool operator ==(VectorStoreFileStatusFilter left, VectorStoreFileStatusFilter right); + public static implicit operator VectorStoreFileStatusFilter(string value); + public static bool operator !=(VectorStoreFileStatusFilter left, VectorStoreFileStatusFilter right); + public override string ToString(); + } + public class VectorStoreModificationOptions { + public VectorStoreModificationOptions(); + public VectorStoreExpirationPolicy ExpirationPolicy { get; init; } + public IDictionary Metadata { get; } + public string Name { get; init; } + } + public sealed class VectorStoreStatus { + public const VectorStoreStatus Completed = 2; + public const VectorStoreStatus Expired = 3; + public const VectorStoreStatus InProgress = 1; + public const VectorStoreStatus Unknown = 0; + } +} \ No newline at end of file diff --git a/.dotnet/api/api.md b/.dotnet/api/api.md index 72189bdd6..c0dbf08f7 100644 --- a/.dotnet/api/api.md +++ b/.dotnet/api/api.md @@ -19,17 +19,17 @@ namespace OpenAI { protected OpenAIClient(ClientPipeline pipeline, Uri endpoint, OpenAIClientOptions options); protected Uri Endpoint { get; } public virtual ClientPipeline Pipeline { get; } - public AssistantClient GetAssistantClient(); - public AudioClient GetAudioClient(string model); - public BatchClient GetBatchClient(); - public ChatClient GetChatClient(string model); - public EmbeddingClient GetEmbeddingClient(string model); - public FileClient GetFileClient(); - public FineTuningClient GetFineTuningClient(); - public ImageClient GetImageClient(string model); - public ModelClient GetModelClient(); - public ModerationClient GetModerationClient(string model); - public VectorStoreClient GetVectorStoreClient(); + public virtual AssistantClient GetAssistantClient(); + public virtual AudioClient GetAudioClient(string model); + public virtual BatchClient GetBatchClient(); + public virtual ChatClient GetChatClient(string model); + public virtual EmbeddingClient GetEmbeddingClient(string model); + public virtual FileClient GetFileClient(); + public virtual FineTuningClient GetFineTuningClient(); + public virtual ImageClient GetImageClient(string model); + public virtual ModelClient GetModelClient(); + public virtual ModerationClient GetModerationClient(string model); + public virtual VectorStoreClient GetVectorStoreClient(); } public class OpenAIClientOptions { public OpenAIClientOptions(); diff --git a/.scripts/Generate-Api.ps1 b/.scripts/Generate-Api.ps1 index 90421bfac..f222d8f4d 100644 --- a/.scripts/Generate-Api.ps1 +++ b/.scripts/Generate-Api.ps1 @@ -1,13 +1,16 @@ $repoRoot = Join-Path $PSScriptRoot .. -Resolve $dotnetFolder = Join-Path $repoRoot .dotnet\src +$apiFolder = Join-Path $repoRoot .dotnet\api -$assemblyPath = Join-Path $dotnetFolder bin\Debug\netstandard2.0\OpenAI.dll -$apiPath = Join-Path $repoRoot .dotnet\api\api.md +$platformTarget = "netstandard2.0" -genapi --assembly $assemblyPath --output-path $apiPath -$content = Get-Content $apiPath -Raw +$assemblyPath = Join-Path $dotnetFolder bin\Debug $platformTarget OpenAI.dll +$outputPath = Join-Path $apiFolder "OpenAI.$($platformTarget).cs" + +genapi --assembly $assemblyPath --output-path $outputPath + +$content = Get-Content $outputPath -Raw -$content = "``````csharp`n$($content)`n``````" $content = $content -replace '//.*\r?\n', '' $content = $content -replace '\r?\n\r?\n', "`n" $content = $content -replace 'System.Boolean', 'bool' @@ -38,4 +41,8 @@ $content = $content -replace ' *public int value__;\r?\n', '' $content = $content -replace " * internal.*`n", "" $content = $content -replace '(virtual )[^ \.]*\.', '$1' -Set-Content -Path $apiPath -Value $content -NoNewline \ No newline at end of file +Set-Content -Path $outputPath -Value $content -NoNewline + +# For PR diff only +$markdownContent = "``````csharp`n$($content)`n``````" +Set-Content -Path "$($apiFolder)\api.md" -Value $markdownContent -NoNewline \ No newline at end of file From 7c2cd8f879d00302cb044d7fb6987a6d82007ca3 Mon Sep 17 00:00:00 2001 From: Travis Wilson Date: Thu, 25 Jul 2024 17:15:39 -0700 Subject: [PATCH 3/7] cancellationToken = default fixup (reduces diff volume) --- .dotnet/api/OpenAI.netstandard2.0.cs | 272 +++++++++++++-------------- .dotnet/api/api.md | 272 +++++++++++++-------------- .scripts/Generate-Api.ps1 | 1 + 3 files changed, 273 insertions(+), 272 deletions(-) diff --git a/.dotnet/api/OpenAI.netstandard2.0.cs b/.dotnet/api/OpenAI.netstandard2.0.cs index 65500275a..d07551c8a 100644 --- a/.dotnet/api/OpenAI.netstandard2.0.cs +++ b/.dotnet/api/OpenAI.netstandard2.0.cs @@ -61,148 +61,148 @@ public class AssistantClient { public virtual ClientPipeline Pipeline { get; } public virtual ClientResult CancelRun(ThreadRun run); public virtual ClientResult CancelRun(string threadId, string runId, RequestOptions options); - public virtual ClientResult CancelRun(string threadId, string runId, CancellationToken cancellationToken = null); + public virtual ClientResult CancelRun(string threadId, string runId, CancellationToken cancellationToken = default); public virtual Task> CancelRunAsync(ThreadRun run); public virtual Task CancelRunAsync(string threadId, string runId, RequestOptions options); - public virtual Task> CancelRunAsync(string threadId, string runId, CancellationToken cancellationToken = null); + public virtual Task> CancelRunAsync(string threadId, string runId, CancellationToken cancellationToken = default); public virtual ClientResult CreateAssistant(BinaryContent content, RequestOptions options = null); - public virtual ClientResult CreateAssistant(string model, AssistantCreationOptions options = null, CancellationToken cancellationToken = null); + public virtual ClientResult CreateAssistant(string model, AssistantCreationOptions options = null, CancellationToken cancellationToken = default); public virtual Task CreateAssistantAsync(BinaryContent content, RequestOptions options = null); - public virtual Task> CreateAssistantAsync(string model, AssistantCreationOptions options = null, CancellationToken cancellationToken = null); + public virtual Task> CreateAssistantAsync(string model, AssistantCreationOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult CreateMessage(AssistantThread thread, MessageRole role, IEnumerable content, MessageCreationOptions options = null); - public virtual ClientResult CreateMessage(string threadId, MessageRole role, IEnumerable content, MessageCreationOptions options = null, CancellationToken cancellationToken = null); + public virtual ClientResult CreateMessage(string threadId, MessageRole role, IEnumerable content, MessageCreationOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult CreateMessage(string threadId, BinaryContent content, RequestOptions options = null); public virtual Task> CreateMessageAsync(AssistantThread thread, MessageRole role, IEnumerable content, MessageCreationOptions options = null); - public virtual Task> CreateMessageAsync(string threadId, MessageRole role, IEnumerable content, MessageCreationOptions options = null, CancellationToken cancellationToken = null); + public virtual Task> CreateMessageAsync(string threadId, MessageRole role, IEnumerable content, MessageCreationOptions options = null, CancellationToken cancellationToken = default); public virtual Task CreateMessageAsync(string threadId, BinaryContent content, RequestOptions options = null); public virtual ClientResult CreateRun(AssistantThread thread, Assistant assistant, RunCreationOptions options = null); public virtual ClientResult CreateRun(string threadId, BinaryContent content, RequestOptions options = null); - public virtual ClientResult CreateRun(string threadId, string assistantId, RunCreationOptions options = null, CancellationToken cancellationToken = null); + public virtual ClientResult CreateRun(string threadId, string assistantId, RunCreationOptions options = null, CancellationToken cancellationToken = default); public virtual Task> CreateRunAsync(AssistantThread thread, Assistant assistant, RunCreationOptions options = null); public virtual Task CreateRunAsync(string threadId, BinaryContent content, RequestOptions options = null); - public virtual Task> CreateRunAsync(string threadId, string assistantId, RunCreationOptions options = null, CancellationToken cancellationToken = null); + public virtual Task> CreateRunAsync(string threadId, string assistantId, RunCreationOptions options = null, CancellationToken cancellationToken = default); public virtual CollectionResult CreateRunStreaming(AssistantThread thread, Assistant assistant, RunCreationOptions options = null); - public virtual CollectionResult CreateRunStreaming(string threadId, string assistantId, RunCreationOptions options = null, CancellationToken cancellationToken = null); + public virtual CollectionResult CreateRunStreaming(string threadId, string assistantId, RunCreationOptions options = null, CancellationToken cancellationToken = default); public virtual AsyncCollectionResult CreateRunStreamingAsync(AssistantThread thread, Assistant assistant, RunCreationOptions options = null); - public virtual AsyncCollectionResult CreateRunStreamingAsync(string threadId, string assistantId, RunCreationOptions options = null, CancellationToken cancellationToken = null); - public virtual ClientResult CreateThread(ThreadCreationOptions options = null, CancellationToken cancellationToken = null); + public virtual AsyncCollectionResult CreateRunStreamingAsync(string threadId, string assistantId, RunCreationOptions options = null, CancellationToken cancellationToken = default); + public virtual ClientResult CreateThread(ThreadCreationOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult CreateThread(BinaryContent content, RequestOptions options = null); public virtual ClientResult CreateThreadAndRun(Assistant assistant, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null); public virtual ClientResult CreateThreadAndRun(BinaryContent content, RequestOptions options = null); - public virtual ClientResult CreateThreadAndRun(string assistantId, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null, CancellationToken cancellationToken = null); + public virtual ClientResult CreateThreadAndRun(string assistantId, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null, CancellationToken cancellationToken = default); public virtual Task> CreateThreadAndRunAsync(Assistant assistant, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null); public virtual Task CreateThreadAndRunAsync(BinaryContent content, RequestOptions options = null); - public virtual Task> CreateThreadAndRunAsync(string assistantId, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null, CancellationToken cancellationToken = null); + public virtual Task> CreateThreadAndRunAsync(string assistantId, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null, CancellationToken cancellationToken = default); public virtual CollectionResult CreateThreadAndRunStreaming(Assistant assistant, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null); - public virtual CollectionResult CreateThreadAndRunStreaming(string assistantId, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null, CancellationToken cancellationToken = null); + public virtual CollectionResult CreateThreadAndRunStreaming(string assistantId, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null, CancellationToken cancellationToken = default); public virtual AsyncCollectionResult CreateThreadAndRunStreamingAsync(Assistant assistant, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null); - public virtual AsyncCollectionResult CreateThreadAndRunStreamingAsync(string assistantId, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null, CancellationToken cancellationToken = null); - public virtual Task> CreateThreadAsync(ThreadCreationOptions options = null, CancellationToken cancellationToken = null); + public virtual AsyncCollectionResult CreateThreadAndRunStreamingAsync(string assistantId, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null, CancellationToken cancellationToken = default); + public virtual Task> CreateThreadAsync(ThreadCreationOptions options = null, CancellationToken cancellationToken = default); public virtual Task CreateThreadAsync(BinaryContent content, RequestOptions options = null); public virtual ClientResult DeleteAssistant(Assistant assistant); public virtual ClientResult DeleteAssistant(string assistantId, RequestOptions options); - public virtual ClientResult DeleteAssistant(string assistantId, CancellationToken cancellationToken = null); + public virtual ClientResult DeleteAssistant(string assistantId, CancellationToken cancellationToken = default); public virtual Task> DeleteAssistantAsync(Assistant assistant); public virtual Task DeleteAssistantAsync(string assistantId, RequestOptions options); - public virtual Task> DeleteAssistantAsync(string assistantId, CancellationToken cancellationToken = null); + public virtual Task> DeleteAssistantAsync(string assistantId, CancellationToken cancellationToken = default); public virtual ClientResult DeleteMessage(ThreadMessage message); public virtual ClientResult DeleteMessage(string threadId, string messageId, RequestOptions options); - public virtual ClientResult DeleteMessage(string threadId, string messageId, CancellationToken cancellationToken = null); + public virtual ClientResult DeleteMessage(string threadId, string messageId, CancellationToken cancellationToken = default); public virtual Task> DeleteMessageAsync(ThreadMessage message); public virtual Task DeleteMessageAsync(string threadId, string messageId, RequestOptions options); - public virtual Task> DeleteMessageAsync(string threadId, string messageId, CancellationToken cancellationToken = null); + public virtual Task> DeleteMessageAsync(string threadId, string messageId, CancellationToken cancellationToken = default); public virtual ClientResult DeleteThread(AssistantThread thread); public virtual ClientResult DeleteThread(string threadId, RequestOptions options); - public virtual ClientResult DeleteThread(string threadId, CancellationToken cancellationToken = null); + public virtual ClientResult DeleteThread(string threadId, CancellationToken cancellationToken = default); public virtual Task> DeleteThreadAsync(AssistantThread thread); public virtual Task DeleteThreadAsync(string threadId, RequestOptions options); - public virtual Task> DeleteThreadAsync(string threadId, CancellationToken cancellationToken = null); + public virtual Task> DeleteThreadAsync(string threadId, CancellationToken cancellationToken = default); public virtual ClientResult GetAssistant(string assistantId, RequestOptions options); - public virtual ClientResult GetAssistant(string assistantId, CancellationToken cancellationToken = null); + public virtual ClientResult GetAssistant(string assistantId, CancellationToken cancellationToken = default); public virtual Task GetAssistantAsync(string assistantId, RequestOptions options); - public virtual Task> GetAssistantAsync(string assistantId, CancellationToken cancellationToken = null); - public virtual PageCollection GetAssistants(AssistantCollectionOptions options = null, CancellationToken cancellationToken = null); - public virtual PageCollection GetAssistants(ContinuationToken firstPageToken, CancellationToken cancellationToken = null); + public virtual Task> GetAssistantAsync(string assistantId, CancellationToken cancellationToken = default); + public virtual PageCollection GetAssistants(AssistantCollectionOptions options = null, CancellationToken cancellationToken = default); + public virtual PageCollection GetAssistants(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); public virtual IEnumerable GetAssistants(int? limit, string order, string after, string before, RequestOptions options); - public virtual AsyncPageCollection GetAssistantsAsync(AssistantCollectionOptions options = null, CancellationToken cancellationToken = null); - public virtual AsyncPageCollection GetAssistantsAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = null); + public virtual AsyncPageCollection GetAssistantsAsync(AssistantCollectionOptions options = null, CancellationToken cancellationToken = default); + public virtual AsyncPageCollection GetAssistantsAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); public virtual IAsyncEnumerable GetAssistantsAsync(int? limit, string order, string after, string before, RequestOptions options); public virtual ClientResult GetMessage(ThreadMessage message); public virtual ClientResult GetMessage(string threadId, string messageId, RequestOptions options); - public virtual ClientResult GetMessage(string threadId, string messageId, CancellationToken cancellationToken = null); + public virtual ClientResult GetMessage(string threadId, string messageId, CancellationToken cancellationToken = default); public virtual Task> GetMessageAsync(ThreadMessage message); public virtual Task GetMessageAsync(string threadId, string messageId, RequestOptions options); - public virtual Task> GetMessageAsync(string threadId, string messageId, CancellationToken cancellationToken = null); + public virtual Task> GetMessageAsync(string threadId, string messageId, CancellationToken cancellationToken = default); public virtual PageCollection GetMessages(AssistantThread thread, MessageCollectionOptions options = null); - public virtual PageCollection GetMessages(ContinuationToken firstPageToken, CancellationToken cancellationToken = null); - public virtual PageCollection GetMessages(string threadId, MessageCollectionOptions options = null, CancellationToken cancellationToken = null); + public virtual PageCollection GetMessages(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); + public virtual PageCollection GetMessages(string threadId, MessageCollectionOptions options = null, CancellationToken cancellationToken = default); public virtual IEnumerable GetMessages(string threadId, int? limit, string order, string after, string before, RequestOptions options); public virtual AsyncPageCollection GetMessagesAsync(AssistantThread thread, MessageCollectionOptions options = null); - public virtual AsyncPageCollection GetMessagesAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = null); - public virtual AsyncPageCollection GetMessagesAsync(string threadId, MessageCollectionOptions options = null, CancellationToken cancellationToken = null); + public virtual AsyncPageCollection GetMessagesAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); + public virtual AsyncPageCollection GetMessagesAsync(string threadId, MessageCollectionOptions options = null, CancellationToken cancellationToken = default); public virtual IAsyncEnumerable GetMessagesAsync(string threadId, int? limit, string order, string after, string before, RequestOptions options); public virtual ClientResult GetRun(ThreadRun run); public virtual ClientResult GetRun(string threadId, string runId, RequestOptions options); - public virtual ClientResult GetRun(string threadId, string runId, CancellationToken cancellationToken = null); + public virtual ClientResult GetRun(string threadId, string runId, CancellationToken cancellationToken = default); public virtual Task> GetRunAsync(ThreadRun run); public virtual Task GetRunAsync(string threadId, string runId, RequestOptions options); - public virtual Task> GetRunAsync(string threadId, string runId, CancellationToken cancellationToken = null); + public virtual Task> GetRunAsync(string threadId, string runId, CancellationToken cancellationToken = default); public virtual PageCollection GetRuns(AssistantThread thread, RunCollectionOptions options = null); - public virtual PageCollection GetRuns(ContinuationToken firstPageToken, CancellationToken cancellationToken = null); - public virtual PageCollection GetRuns(string threadId, RunCollectionOptions options = null, CancellationToken cancellationToken = null); + public virtual PageCollection GetRuns(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); + public virtual PageCollection GetRuns(string threadId, RunCollectionOptions options = null, CancellationToken cancellationToken = default); public virtual IEnumerable GetRuns(string threadId, int? limit, string order, string after, string before, RequestOptions options); public virtual AsyncPageCollection GetRunsAsync(AssistantThread thread, RunCollectionOptions options = null); - public virtual AsyncPageCollection GetRunsAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = null); - public virtual AsyncPageCollection GetRunsAsync(string threadId, RunCollectionOptions options = null, CancellationToken cancellationToken = null); + public virtual AsyncPageCollection GetRunsAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); + public virtual AsyncPageCollection GetRunsAsync(string threadId, RunCollectionOptions options = null, CancellationToken cancellationToken = default); public virtual IAsyncEnumerable GetRunsAsync(string threadId, int? limit, string order, string after, string before, RequestOptions options); public virtual ClientResult GetRunStep(string threadId, string runId, string stepId, RequestOptions options); - public virtual ClientResult GetRunStep(string threadId, string runId, string stepId, CancellationToken cancellationToken = null); + public virtual ClientResult GetRunStep(string threadId, string runId, string stepId, CancellationToken cancellationToken = default); public virtual Task GetRunStepAsync(string threadId, string runId, string stepId, RequestOptions options); - public virtual Task> GetRunStepAsync(string threadId, string runId, string stepId, CancellationToken cancellationToken = null); + public virtual Task> GetRunStepAsync(string threadId, string runId, string stepId, CancellationToken cancellationToken = default); public virtual PageCollection GetRunSteps(ThreadRun run, RunStepCollectionOptions options = null); - public virtual PageCollection GetRunSteps(ContinuationToken firstPageToken, CancellationToken cancellationToken = null); - public virtual PageCollection GetRunSteps(string threadId, string runId, RunStepCollectionOptions options = null, CancellationToken cancellationToken = null); + public virtual PageCollection GetRunSteps(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); + public virtual PageCollection GetRunSteps(string threadId, string runId, RunStepCollectionOptions options = null, CancellationToken cancellationToken = default); public virtual IEnumerable GetRunSteps(string threadId, string runId, int? limit, string order, string after, string before, RequestOptions options); public virtual AsyncPageCollection GetRunStepsAsync(ThreadRun run, RunStepCollectionOptions options = null); - public virtual AsyncPageCollection GetRunStepsAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = null); - public virtual AsyncPageCollection GetRunStepsAsync(string threadId, string runId, RunStepCollectionOptions options = null, CancellationToken cancellationToken = null); + public virtual AsyncPageCollection GetRunStepsAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); + public virtual AsyncPageCollection GetRunStepsAsync(string threadId, string runId, RunStepCollectionOptions options = null, CancellationToken cancellationToken = default); public virtual IAsyncEnumerable GetRunStepsAsync(string threadId, string runId, int? limit, string order, string after, string before, RequestOptions options); public virtual ClientResult GetThread(AssistantThread thread); public virtual ClientResult GetThread(string threadId, RequestOptions options); - public virtual ClientResult GetThread(string threadId, CancellationToken cancellationToken = null); + public virtual ClientResult GetThread(string threadId, CancellationToken cancellationToken = default); public virtual Task> GetThreadAsync(AssistantThread thread); public virtual Task GetThreadAsync(string threadId, RequestOptions options); - public virtual Task> GetThreadAsync(string threadId, CancellationToken cancellationToken = null); + public virtual Task> GetThreadAsync(string threadId, CancellationToken cancellationToken = default); public virtual ClientResult ModifyAssistant(Assistant assistant, AssistantModificationOptions options); - public virtual ClientResult ModifyAssistant(string assistantId, AssistantModificationOptions options, CancellationToken cancellationToken = null); + public virtual ClientResult ModifyAssistant(string assistantId, AssistantModificationOptions options, CancellationToken cancellationToken = default); public virtual ClientResult ModifyAssistant(string assistantId, BinaryContent content, RequestOptions options = null); public virtual Task> ModifyAssistantAsync(Assistant assistant, AssistantModificationOptions options); - public virtual Task> ModifyAssistantAsync(string assistantId, AssistantModificationOptions options, CancellationToken cancellationToken = null); + public virtual Task> ModifyAssistantAsync(string assistantId, AssistantModificationOptions options, CancellationToken cancellationToken = default); public virtual Task ModifyAssistantAsync(string assistantId, BinaryContent content, RequestOptions options = null); public virtual ClientResult ModifyMessage(ThreadMessage message, MessageModificationOptions options); - public virtual ClientResult ModifyMessage(string threadId, string messageId, MessageModificationOptions options, CancellationToken cancellationToken = null); + public virtual ClientResult ModifyMessage(string threadId, string messageId, MessageModificationOptions options, CancellationToken cancellationToken = default); public virtual ClientResult ModifyMessage(string threadId, string messageId, BinaryContent content, RequestOptions options = null); public virtual Task> ModifyMessageAsync(ThreadMessage message, MessageModificationOptions options); - public virtual Task> ModifyMessageAsync(string threadId, string messageId, MessageModificationOptions options, CancellationToken cancellationToken = null); + public virtual Task> ModifyMessageAsync(string threadId, string messageId, MessageModificationOptions options, CancellationToken cancellationToken = default); public virtual Task ModifyMessageAsync(string threadId, string messageId, BinaryContent content, RequestOptions options = null); public virtual ClientResult ModifyRun(string threadId, string runId, BinaryContent content, RequestOptions options = null); public virtual Task ModifyRunAsync(string threadId, string runId, BinaryContent content, RequestOptions options = null); public virtual ClientResult ModifyThread(AssistantThread thread, ThreadModificationOptions options); - public virtual ClientResult ModifyThread(string threadId, ThreadModificationOptions options, CancellationToken cancellationToken = null); + public virtual ClientResult ModifyThread(string threadId, ThreadModificationOptions options, CancellationToken cancellationToken = default); public virtual ClientResult ModifyThread(string threadId, BinaryContent content, RequestOptions options = null); public virtual Task> ModifyThreadAsync(AssistantThread thread, ThreadModificationOptions options); - public virtual Task> ModifyThreadAsync(string threadId, ThreadModificationOptions options, CancellationToken cancellationToken = null); + public virtual Task> ModifyThreadAsync(string threadId, ThreadModificationOptions options, CancellationToken cancellationToken = default); public virtual Task ModifyThreadAsync(string threadId, BinaryContent content, RequestOptions options = null); public virtual ClientResult SubmitToolOutputsToRun(ThreadRun run, IEnumerable toolOutputs); public virtual ClientResult SubmitToolOutputsToRun(string threadId, string runId, BinaryContent content, RequestOptions options = null); - public virtual ClientResult SubmitToolOutputsToRun(string threadId, string runId, IEnumerable toolOutputs, CancellationToken cancellationToken = null); + public virtual ClientResult SubmitToolOutputsToRun(string threadId, string runId, IEnumerable toolOutputs, CancellationToken cancellationToken = default); public virtual Task> SubmitToolOutputsToRunAsync(ThreadRun run, IEnumerable toolOutputs); public virtual Task SubmitToolOutputsToRunAsync(string threadId, string runId, BinaryContent content, RequestOptions options = null); - public virtual Task> SubmitToolOutputsToRunAsync(string threadId, string runId, IEnumerable toolOutputs, CancellationToken cancellationToken = null); + public virtual Task> SubmitToolOutputsToRunAsync(string threadId, string runId, IEnumerable toolOutputs, CancellationToken cancellationToken = default); public virtual CollectionResult SubmitToolOutputsToRunStreaming(ThreadRun run, IEnumerable toolOutputs); - public virtual CollectionResult SubmitToolOutputsToRunStreaming(string threadId, string runId, IEnumerable toolOutputs, CancellationToken cancellationToken = null); + public virtual CollectionResult SubmitToolOutputsToRunStreaming(string threadId, string runId, IEnumerable toolOutputs, CancellationToken cancellationToken = default); public virtual AsyncCollectionResult SubmitToolOutputsToRunStreamingAsync(ThreadRun run, IEnumerable toolOutputs); - public virtual AsyncCollectionResult SubmitToolOutputsToRunStreamingAsync(string threadId, string runId, IEnumerable toolOutputs, CancellationToken cancellationToken = null); + public virtual AsyncCollectionResult SubmitToolOutputsToRunStreamingAsync(string threadId, string runId, IEnumerable toolOutputs, CancellationToken cancellationToken = default); } public class AssistantCollectionOptions { public AssistantCollectionOptions(); @@ -740,20 +740,20 @@ public class AudioClient { public AudioClient(string model, ApiKeyCredential credential, OpenAIClientOptions options = null); public virtual ClientPipeline Pipeline { get; } public virtual ClientResult GenerateSpeechFromText(BinaryContent content, RequestOptions options = null); - public virtual ClientResult GenerateSpeechFromText(string text, GeneratedSpeechVoice voice, SpeechGenerationOptions options = null, CancellationToken cancellationToken = null); + public virtual ClientResult GenerateSpeechFromText(string text, GeneratedSpeechVoice voice, SpeechGenerationOptions options = null, CancellationToken cancellationToken = default); public virtual Task GenerateSpeechFromTextAsync(BinaryContent content, RequestOptions options = null); - public virtual Task> GenerateSpeechFromTextAsync(string text, GeneratedSpeechVoice voice, SpeechGenerationOptions options = null, CancellationToken cancellationToken = null); + public virtual Task> GenerateSpeechFromTextAsync(string text, GeneratedSpeechVoice voice, SpeechGenerationOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult TranscribeAudio(BinaryContent content, string contentType, RequestOptions options = null); - public virtual ClientResult TranscribeAudio(Stream audio, string audioFilename, AudioTranscriptionOptions options = null, CancellationToken cancellationToken = null); + public virtual ClientResult TranscribeAudio(Stream audio, string audioFilename, AudioTranscriptionOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult TranscribeAudio(string audioFilePath, AudioTranscriptionOptions options = null); public virtual Task TranscribeAudioAsync(BinaryContent content, string contentType, RequestOptions options = null); - public virtual Task> TranscribeAudioAsync(Stream audio, string audioFilename, AudioTranscriptionOptions options = null, CancellationToken cancellationToken = null); + public virtual Task> TranscribeAudioAsync(Stream audio, string audioFilename, AudioTranscriptionOptions options = null, CancellationToken cancellationToken = default); public virtual Task> TranscribeAudioAsync(string audioFilePath, AudioTranscriptionOptions options = null); public virtual ClientResult TranslateAudio(BinaryContent content, string contentType, RequestOptions options = null); - public virtual ClientResult TranslateAudio(Stream audio, string audioFilename, AudioTranslationOptions options = null, CancellationToken cancellationToken = null); + public virtual ClientResult TranslateAudio(Stream audio, string audioFilename, AudioTranslationOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult TranslateAudio(string audioFilePath, AudioTranslationOptions options = null); public virtual Task TranslateAudioAsync(BinaryContent content, string contentType, RequestOptions options = null); - public virtual Task> TranslateAudioAsync(Stream audio, string audioFilename, AudioTranslationOptions options = null, CancellationToken cancellationToken = null); + public virtual Task> TranslateAudioAsync(Stream audio, string audioFilename, AudioTranslationOptions options = null, CancellationToken cancellationToken = default); public virtual Task> TranslateAudioAsync(string audioFilePath, AudioTranslationOptions options = null); } public sealed class AudioTimestampGranularities { @@ -879,14 +879,14 @@ public class ChatClient { public virtual ClientPipeline Pipeline { get; } public virtual ClientResult CompleteChat(params ChatMessage[] messages); public virtual ClientResult CompleteChat(BinaryContent content, RequestOptions options = null); - public virtual ClientResult CompleteChat(IEnumerable messages, ChatCompletionOptions options = null, CancellationToken cancellationToken = null); + public virtual ClientResult CompleteChat(IEnumerable messages, ChatCompletionOptions options = null, CancellationToken cancellationToken = default); public virtual Task> CompleteChatAsync(params ChatMessage[] messages); public virtual Task CompleteChatAsync(BinaryContent content, RequestOptions options = null); - public virtual Task> CompleteChatAsync(IEnumerable messages, ChatCompletionOptions options = null, CancellationToken cancellationToken = null); + public virtual Task> CompleteChatAsync(IEnumerable messages, ChatCompletionOptions options = null, CancellationToken cancellationToken = default); public virtual CollectionResult CompleteChatStreaming(params ChatMessage[] messages); - public virtual CollectionResult CompleteChatStreaming(IEnumerable messages, ChatCompletionOptions options = null, CancellationToken cancellationToken = null); + public virtual CollectionResult CompleteChatStreaming(IEnumerable messages, ChatCompletionOptions options = null, CancellationToken cancellationToken = default); public virtual AsyncCollectionResult CompleteChatStreamingAsync(params ChatMessage[] messages); - public virtual AsyncCollectionResult CompleteChatStreamingAsync(IEnumerable messages, ChatCompletionOptions options = null, CancellationToken cancellationToken = null); + public virtual AsyncCollectionResult CompleteChatStreamingAsync(IEnumerable messages, ChatCompletionOptions options = null, CancellationToken cancellationToken = default); } public class ChatCompletion { public IReadOnlyList Content { get; } @@ -1126,14 +1126,14 @@ public class EmbeddingClient { public EmbeddingClient(string model, OpenAIClientOptions options = null); public EmbeddingClient(string model, ApiKeyCredential credential, OpenAIClientOptions options = null); public virtual ClientPipeline Pipeline { get; } - public virtual ClientResult GenerateEmbedding(string input, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = null); - public virtual Task> GenerateEmbeddingAsync(string input, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = null); + public virtual ClientResult GenerateEmbedding(string input, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = default); + public virtual Task> GenerateEmbeddingAsync(string input, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult GenerateEmbeddings(BinaryContent content, RequestOptions options = null); - public virtual ClientResult GenerateEmbeddings(IEnumerable> inputs, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = null); - public virtual ClientResult GenerateEmbeddings(IEnumerable inputs, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = null); + public virtual ClientResult GenerateEmbeddings(IEnumerable> inputs, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = default); + public virtual ClientResult GenerateEmbeddings(IEnumerable inputs, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = default); public virtual Task GenerateEmbeddingsAsync(BinaryContent content, RequestOptions options = null); - public virtual Task> GenerateEmbeddingsAsync(IEnumerable> inputs, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = null); - public virtual Task> GenerateEmbeddingsAsync(IEnumerable inputs, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = null); + public virtual Task> GenerateEmbeddingsAsync(IEnumerable> inputs, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = default); + public virtual Task> GenerateEmbeddingsAsync(IEnumerable inputs, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = default); } public class EmbeddingCollection { public string Model { get; } @@ -1160,31 +1160,31 @@ public class FileClient { public virtual Task CreateIncrementalUploadJobAsync(BinaryContent content, RequestOptions options); public virtual ClientResult DeleteFile(OpenAIFileInfo file); public virtual ClientResult DeleteFile(string fileId, RequestOptions options); - public virtual ClientResult DeleteFile(string fileId, CancellationToken cancellationToken = null); + public virtual ClientResult DeleteFile(string fileId, CancellationToken cancellationToken = default); public virtual Task> DeleteFileAsync(OpenAIFileInfo file); public virtual Task DeleteFileAsync(string fileId, RequestOptions options); - public virtual Task> DeleteFileAsync(string fileId, CancellationToken cancellationToken = null); + public virtual Task> DeleteFileAsync(string fileId, CancellationToken cancellationToken = default); public virtual ClientResult DownloadFile(OpenAIFileInfo file); public virtual ClientResult DownloadFile(string fileId, RequestOptions options); - public virtual ClientResult DownloadFile(string fileId, CancellationToken cancellationToken = null); + public virtual ClientResult DownloadFile(string fileId, CancellationToken cancellationToken = default); public virtual Task> DownloadFileAsync(OpenAIFileInfo file); public virtual Task DownloadFileAsync(string fileId, RequestOptions options); - public virtual Task> DownloadFileAsync(string fileId, CancellationToken cancellationToken = null); + public virtual Task> DownloadFileAsync(string fileId, CancellationToken cancellationToken = default); public virtual ClientResult GetFile(string fileId, RequestOptions options); - public virtual ClientResult GetFile(string fileId, CancellationToken cancellationToken = null); + public virtual ClientResult GetFile(string fileId, CancellationToken cancellationToken = default); public virtual Task GetFileAsync(string fileId, RequestOptions options); - public virtual Task> GetFileAsync(string fileId, CancellationToken cancellationToken = null); - public virtual ClientResult GetFiles(OpenAIFilePurpose? purpose = null, CancellationToken cancellationToken = null); + public virtual Task> GetFileAsync(string fileId, CancellationToken cancellationToken = default); + public virtual ClientResult GetFiles(OpenAIFilePurpose? purpose = null, CancellationToken cancellationToken = default); public virtual ClientResult GetFiles(string purpose, RequestOptions options); - public virtual Task> GetFilesAsync(OpenAIFilePurpose? purpose = null, CancellationToken cancellationToken = null); + public virtual Task> GetFilesAsync(OpenAIFilePurpose? purpose = null, CancellationToken cancellationToken = default); public virtual Task GetFilesAsync(string purpose, RequestOptions options); public virtual ClientResult UploadFile(BinaryData file, string filename, FileUploadPurpose purpose); public virtual ClientResult UploadFile(BinaryContent content, string contentType, RequestOptions options = null); - public virtual ClientResult UploadFile(Stream file, string filename, FileUploadPurpose purpose, CancellationToken cancellationToken = null); + public virtual ClientResult UploadFile(Stream file, string filename, FileUploadPurpose purpose, CancellationToken cancellationToken = default); public virtual ClientResult UploadFile(string filePath, FileUploadPurpose purpose); public virtual Task> UploadFileAsync(BinaryData file, string filename, FileUploadPurpose purpose); public virtual Task UploadFileAsync(BinaryContent content, string contentType, RequestOptions options = null); - public virtual Task> UploadFileAsync(Stream file, string filename, FileUploadPurpose purpose, CancellationToken cancellationToken = null); + public virtual Task> UploadFileAsync(Stream file, string filename, FileUploadPurpose purpose, CancellationToken cancellationToken = default); public virtual Task> UploadFileAsync(string filePath, FileUploadPurpose purpose); } public sealed class FileUploadPurpose { @@ -1319,39 +1319,39 @@ public class ImageClient { public ImageClient(string model, OpenAIClientOptions options = null); public ImageClient(string model, ApiKeyCredential credential, OpenAIClientOptions options = null); public virtual ClientPipeline Pipeline { get; } - public virtual ClientResult GenerateImage(string prompt, ImageGenerationOptions options = null, CancellationToken cancellationToken = null); - public virtual Task> GenerateImageAsync(string prompt, ImageGenerationOptions options = null, CancellationToken cancellationToken = null); - public virtual ClientResult GenerateImageEdit(Stream image, string imageFilename, string prompt, ImageEditOptions options = null, CancellationToken cancellationToken = null); - public virtual ClientResult GenerateImageEdit(Stream image, string imageFilename, string prompt, Stream mask, string maskFilename, ImageEditOptions options = null, CancellationToken cancellationToken = null); + public virtual ClientResult GenerateImage(string prompt, ImageGenerationOptions options = null, CancellationToken cancellationToken = default); + public virtual Task> GenerateImageAsync(string prompt, ImageGenerationOptions options = null, CancellationToken cancellationToken = default); + public virtual ClientResult GenerateImageEdit(Stream image, string imageFilename, string prompt, ImageEditOptions options = null, CancellationToken cancellationToken = default); + public virtual ClientResult GenerateImageEdit(Stream image, string imageFilename, string prompt, Stream mask, string maskFilename, ImageEditOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult GenerateImageEdit(string imageFilePath, string prompt, ImageEditOptions options = null); public virtual ClientResult GenerateImageEdit(string imageFilePath, string prompt, string maskFilePath, ImageEditOptions options = null); - public virtual Task> GenerateImageEditAsync(Stream image, string imageFilename, string prompt, ImageEditOptions options = null, CancellationToken cancellationToken = null); - public virtual Task> GenerateImageEditAsync(Stream image, string imageFilename, string prompt, Stream mask, string maskFilename, ImageEditOptions options = null, CancellationToken cancellationToken = null); + public virtual Task> GenerateImageEditAsync(Stream image, string imageFilename, string prompt, ImageEditOptions options = null, CancellationToken cancellationToken = default); + public virtual Task> GenerateImageEditAsync(Stream image, string imageFilename, string prompt, Stream mask, string maskFilename, ImageEditOptions options = null, CancellationToken cancellationToken = default); public virtual Task> GenerateImageEditAsync(string imageFilePath, string prompt, ImageEditOptions options = null); public virtual Task> GenerateImageEditAsync(string imageFilePath, string prompt, string maskFilePath, ImageEditOptions options = null); public virtual ClientResult GenerateImageEdits(BinaryContent content, string contentType, RequestOptions options = null); - public virtual ClientResult GenerateImageEdits(Stream image, string imageFilename, string prompt, int imageCount, ImageEditOptions options = null, CancellationToken cancellationToken = null); - public virtual ClientResult GenerateImageEdits(Stream image, string imageFilename, string prompt, Stream mask, string maskFilename, int imageCount, ImageEditOptions options = null, CancellationToken cancellationToken = null); + public virtual ClientResult GenerateImageEdits(Stream image, string imageFilename, string prompt, int imageCount, ImageEditOptions options = null, CancellationToken cancellationToken = default); + public virtual ClientResult GenerateImageEdits(Stream image, string imageFilename, string prompt, Stream mask, string maskFilename, int imageCount, ImageEditOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult GenerateImageEdits(string imageFilePath, string prompt, int imageCount, ImageEditOptions options = null); public virtual ClientResult GenerateImageEdits(string imageFilePath, string prompt, string maskFilePath, int imageCount, ImageEditOptions options = null); public virtual Task GenerateImageEditsAsync(BinaryContent content, string contentType, RequestOptions options = null); - public virtual Task> GenerateImageEditsAsync(Stream image, string imageFilename, string prompt, int imageCount, ImageEditOptions options = null, CancellationToken cancellationToken = null); - public virtual Task> GenerateImageEditsAsync(Stream image, string imageFilename, string prompt, Stream mask, string maskFilename, int imageCount, ImageEditOptions options = null, CancellationToken cancellationToken = null); + public virtual Task> GenerateImageEditsAsync(Stream image, string imageFilename, string prompt, int imageCount, ImageEditOptions options = null, CancellationToken cancellationToken = default); + public virtual Task> GenerateImageEditsAsync(Stream image, string imageFilename, string prompt, Stream mask, string maskFilename, int imageCount, ImageEditOptions options = null, CancellationToken cancellationToken = default); public virtual Task> GenerateImageEditsAsync(string imageFilePath, string prompt, int imageCount, ImageEditOptions options = null); public virtual Task> GenerateImageEditsAsync(string imageFilePath, string prompt, string maskFilePath, int imageCount, ImageEditOptions options = null); public virtual ClientResult GenerateImages(BinaryContent content, RequestOptions options = null); - public virtual ClientResult GenerateImages(string prompt, int imageCount, ImageGenerationOptions options = null, CancellationToken cancellationToken = null); + public virtual ClientResult GenerateImages(string prompt, int imageCount, ImageGenerationOptions options = null, CancellationToken cancellationToken = default); public virtual Task GenerateImagesAsync(BinaryContent content, RequestOptions options = null); - public virtual Task> GenerateImagesAsync(string prompt, int imageCount, ImageGenerationOptions options = null, CancellationToken cancellationToken = null); - public virtual ClientResult GenerateImageVariation(Stream image, string imageFilename, ImageVariationOptions options = null, CancellationToken cancellationToken = null); + public virtual Task> GenerateImagesAsync(string prompt, int imageCount, ImageGenerationOptions options = null, CancellationToken cancellationToken = default); + public virtual ClientResult GenerateImageVariation(Stream image, string imageFilename, ImageVariationOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult GenerateImageVariation(string imageFilePath, ImageVariationOptions options = null); - public virtual Task> GenerateImageVariationAsync(Stream image, string imageFilename, ImageVariationOptions options = null, CancellationToken cancellationToken = null); + public virtual Task> GenerateImageVariationAsync(Stream image, string imageFilename, ImageVariationOptions options = null, CancellationToken cancellationToken = default); public virtual Task> GenerateImageVariationAsync(string imageFilePath, ImageVariationOptions options = null); public virtual ClientResult GenerateImageVariations(BinaryContent content, string contentType, RequestOptions options = null); - public virtual ClientResult GenerateImageVariations(Stream image, string imageFilename, int imageCount, ImageVariationOptions options = null, CancellationToken cancellationToken = null); + public virtual ClientResult GenerateImageVariations(Stream image, string imageFilename, int imageCount, ImageVariationOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult GenerateImageVariations(string imageFilePath, int imageCount, ImageVariationOptions options = null); public virtual Task GenerateImageVariationsAsync(BinaryContent content, string contentType, RequestOptions options = null); - public virtual Task> GenerateImageVariationsAsync(Stream image, string imageFilename, int imageCount, ImageVariationOptions options = null, CancellationToken cancellationToken = null); + public virtual Task> GenerateImageVariationsAsync(Stream image, string imageFilename, int imageCount, ImageVariationOptions options = null, CancellationToken cancellationToken = default); public virtual Task> GenerateImageVariationsAsync(string imageFilePath, int imageCount, ImageVariationOptions options = null); } public class ImageEditOptions { @@ -1436,12 +1436,12 @@ public class ModerationClient { public ModerationClient(string model, OpenAIClientOptions options = null); public ModerationClient(string model, ApiKeyCredential credential, OpenAIClientOptions options = null); public virtual ClientPipeline Pipeline { get; } - public virtual ClientResult ClassifyTextInput(string input, CancellationToken cancellationToken = null); - public virtual Task> ClassifyTextInputAsync(string input, CancellationToken cancellationToken = null); + public virtual ClientResult ClassifyTextInput(string input, CancellationToken cancellationToken = default); + public virtual Task> ClassifyTextInputAsync(string input, CancellationToken cancellationToken = default); public virtual ClientResult ClassifyTextInputs(BinaryContent content, RequestOptions options = null); - public virtual ClientResult ClassifyTextInputs(IEnumerable inputs, CancellationToken cancellationToken = null); + public virtual ClientResult ClassifyTextInputs(IEnumerable inputs, CancellationToken cancellationToken = default); public virtual Task ClassifyTextInputsAsync(BinaryContent content, RequestOptions options = null); - public virtual Task> ClassifyTextInputsAsync(IEnumerable inputs, CancellationToken cancellationToken = null); + public virtual Task> ClassifyTextInputsAsync(IEnumerable inputs, CancellationToken cancellationToken = default); } public class ModerationCollection { public string Id { get; } @@ -1506,84 +1506,84 @@ public class VectorStoreClient { public virtual ClientPipeline Pipeline { get; } public virtual ClientResult AddFileToVectorStore(VectorStore vectorStore, Files.OpenAIFileInfo file); public virtual ClientResult AddFileToVectorStore(string vectorStoreId, BinaryContent content, RequestOptions options = null); - public virtual ClientResult AddFileToVectorStore(string vectorStoreId, string fileId, CancellationToken cancellationToken = null); + public virtual ClientResult AddFileToVectorStore(string vectorStoreId, string fileId, CancellationToken cancellationToken = default); public virtual Task> AddFileToVectorStoreAsync(VectorStore vectorStore, Files.OpenAIFileInfo file); public virtual Task AddFileToVectorStoreAsync(string vectorStoreId, BinaryContent content, RequestOptions options = null); - public virtual Task> AddFileToVectorStoreAsync(string vectorStoreId, string fileId, CancellationToken cancellationToken = null); + public virtual Task> AddFileToVectorStoreAsync(string vectorStoreId, string fileId, CancellationToken cancellationToken = default); public virtual ClientResult CancelBatchFileJob(VectorStoreBatchFileJob batchJob); public virtual ClientResult CancelBatchFileJob(string vectorStoreId, string batchId, RequestOptions options); - public virtual ClientResult CancelBatchFileJob(string vectorStoreId, string batchJobId, CancellationToken cancellationToken = null); + public virtual ClientResult CancelBatchFileJob(string vectorStoreId, string batchJobId, CancellationToken cancellationToken = default); public virtual Task> CancelBatchFileJobAsync(VectorStoreBatchFileJob batchJob); public virtual Task CancelBatchFileJobAsync(string vectorStoreId, string batchId, RequestOptions options); - public virtual Task> CancelBatchFileJobAsync(string vectorStoreId, string batchJobId, CancellationToken cancellationToken = null); + public virtual Task> CancelBatchFileJobAsync(string vectorStoreId, string batchJobId, CancellationToken cancellationToken = default); public virtual ClientResult CreateBatchFileJob(VectorStore vectorStore, IEnumerable files); public virtual ClientResult CreateBatchFileJob(string vectorStoreId, BinaryContent content, RequestOptions options = null); - public virtual ClientResult CreateBatchFileJob(string vectorStoreId, IEnumerable fileIds, CancellationToken cancellationToken = null); + public virtual ClientResult CreateBatchFileJob(string vectorStoreId, IEnumerable fileIds, CancellationToken cancellationToken = default); public virtual Task> CreateBatchFileJobAsync(VectorStore vectorStore, IEnumerable files); public virtual Task CreateBatchFileJobAsync(string vectorStoreId, BinaryContent content, RequestOptions options = null); - public virtual Task> CreateBatchFileJobAsync(string vectorStoreId, IEnumerable fileIds, CancellationToken cancellationToken = null); - public virtual ClientResult CreateVectorStore(VectorStoreCreationOptions vectorStore = null, CancellationToken cancellationToken = null); + public virtual Task> CreateBatchFileJobAsync(string vectorStoreId, IEnumerable fileIds, CancellationToken cancellationToken = default); + public virtual ClientResult CreateVectorStore(VectorStoreCreationOptions vectorStore = null, CancellationToken cancellationToken = default); public virtual ClientResult CreateVectorStore(BinaryContent content, RequestOptions options = null); - public virtual Task> CreateVectorStoreAsync(VectorStoreCreationOptions vectorStore = null, CancellationToken cancellationToken = null); + public virtual Task> CreateVectorStoreAsync(VectorStoreCreationOptions vectorStore = null, CancellationToken cancellationToken = default); public virtual Task CreateVectorStoreAsync(BinaryContent content, RequestOptions options = null); public virtual ClientResult DeleteVectorStore(VectorStore vectorStore); public virtual ClientResult DeleteVectorStore(string vectorStoreId, RequestOptions options); - public virtual ClientResult DeleteVectorStore(string vectorStoreId, CancellationToken cancellationToken = null); + public virtual ClientResult DeleteVectorStore(string vectorStoreId, CancellationToken cancellationToken = default); public virtual Task> DeleteVectorStoreAsync(VectorStore vectorStore); public virtual Task DeleteVectorStoreAsync(string vectorStoreId, RequestOptions options); - public virtual Task> DeleteVectorStoreAsync(string vectorStoreId, CancellationToken cancellationToken = null); + public virtual Task> DeleteVectorStoreAsync(string vectorStoreId, CancellationToken cancellationToken = default); public virtual ClientResult GetBatchFileJob(VectorStoreBatchFileJob batchJob); public virtual ClientResult GetBatchFileJob(string vectorStoreId, string batchId, RequestOptions options); - public virtual ClientResult GetBatchFileJob(string vectorStoreId, string batchJobId, CancellationToken cancellationToken = null); + public virtual ClientResult GetBatchFileJob(string vectorStoreId, string batchJobId, CancellationToken cancellationToken = default); public virtual Task> GetBatchFileJobAsync(VectorStoreBatchFileJob batchJob); public virtual Task GetBatchFileJobAsync(string vectorStoreId, string batchId, RequestOptions options); - public virtual Task> GetBatchFileJobAsync(string vectorStoreId, string batchJobId, CancellationToken cancellationToken = null); + public virtual Task> GetBatchFileJobAsync(string vectorStoreId, string batchJobId, CancellationToken cancellationToken = default); public virtual ClientResult GetFileAssociation(VectorStore vectorStore, Files.OpenAIFileInfo file); public virtual ClientResult GetFileAssociation(string vectorStoreId, string fileId, RequestOptions options); - public virtual ClientResult GetFileAssociation(string vectorStoreId, string fileId, CancellationToken cancellationToken = null); + public virtual ClientResult GetFileAssociation(string vectorStoreId, string fileId, CancellationToken cancellationToken = default); public virtual Task> GetFileAssociationAsync(VectorStore vectorStore, Files.OpenAIFileInfo file); public virtual Task GetFileAssociationAsync(string vectorStoreId, string fileId, RequestOptions options); - public virtual Task> GetFileAssociationAsync(string vectorStoreId, string fileId, CancellationToken cancellationToken = null); + public virtual Task> GetFileAssociationAsync(string vectorStoreId, string fileId, CancellationToken cancellationToken = default); public virtual PageCollection GetFileAssociations(VectorStore vectorStore, VectorStoreFileAssociationCollectionOptions options = null); public virtual PageCollection GetFileAssociations(VectorStoreBatchFileJob batchJob, VectorStoreFileAssociationCollectionOptions options = null); - public virtual PageCollection GetFileAssociations(ContinuationToken firstPageToken, CancellationToken cancellationToken = null); - public virtual PageCollection GetFileAssociations(string vectorStoreId, VectorStoreFileAssociationCollectionOptions options = null, CancellationToken cancellationToken = null); + public virtual PageCollection GetFileAssociations(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); + public virtual PageCollection GetFileAssociations(string vectorStoreId, VectorStoreFileAssociationCollectionOptions options = null, CancellationToken cancellationToken = default); public virtual IEnumerable GetFileAssociations(string vectorStoreId, int? limit, string order, string after, string before, string filter, RequestOptions options); - public virtual PageCollection GetFileAssociations(string vectorStoreId, string batchJobId, VectorStoreFileAssociationCollectionOptions options = null, CancellationToken cancellationToken = null); - public virtual PageCollection GetFileAssociations(string vectorStoreId, string batchJobId, ContinuationToken firstPageToken, CancellationToken cancellationToken = null); + public virtual PageCollection GetFileAssociations(string vectorStoreId, string batchJobId, VectorStoreFileAssociationCollectionOptions options = null, CancellationToken cancellationToken = default); + public virtual PageCollection GetFileAssociations(string vectorStoreId, string batchJobId, ContinuationToken firstPageToken, CancellationToken cancellationToken = default); public virtual IEnumerable GetFileAssociations(string vectorStoreId, string batchId, int? limit, string order, string after, string before, string filter, RequestOptions options); public virtual AsyncPageCollection GetFileAssociationsAsync(VectorStore vectorStore, VectorStoreFileAssociationCollectionOptions options = null); public virtual AsyncPageCollection GetFileAssociationsAsync(VectorStoreBatchFileJob batchJob, VectorStoreFileAssociationCollectionOptions options = null); - public virtual AsyncPageCollection GetFileAssociationsAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = null); - public virtual AsyncPageCollection GetFileAssociationsAsync(string vectorStoreId, VectorStoreFileAssociationCollectionOptions options = null, CancellationToken cancellationToken = null); + public virtual AsyncPageCollection GetFileAssociationsAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); + public virtual AsyncPageCollection GetFileAssociationsAsync(string vectorStoreId, VectorStoreFileAssociationCollectionOptions options = null, CancellationToken cancellationToken = default); public virtual IAsyncEnumerable GetFileAssociationsAsync(string vectorStoreId, int? limit, string order, string after, string before, string filter, RequestOptions options); - public virtual AsyncPageCollection GetFileAssociationsAsync(string vectorStoreId, string batchJobId, VectorStoreFileAssociationCollectionOptions options = null, CancellationToken cancellationToken = null); - public virtual AsyncPageCollection GetFileAssociationsAsync(string vectorStoreId, string batchJobId, ContinuationToken firstPageToken, CancellationToken cancellationToken = null); + public virtual AsyncPageCollection GetFileAssociationsAsync(string vectorStoreId, string batchJobId, VectorStoreFileAssociationCollectionOptions options = null, CancellationToken cancellationToken = default); + public virtual AsyncPageCollection GetFileAssociationsAsync(string vectorStoreId, string batchJobId, ContinuationToken firstPageToken, CancellationToken cancellationToken = default); public virtual IAsyncEnumerable GetFileAssociationsAsync(string vectorStoreId, string batchId, int? limit, string order, string after, string before, string filter, RequestOptions options); public virtual ClientResult GetVectorStore(VectorStore vectorStore); public virtual ClientResult GetVectorStore(string vectorStoreId, RequestOptions options); - public virtual ClientResult GetVectorStore(string vectorStoreId, CancellationToken cancellationToken = null); + public virtual ClientResult GetVectorStore(string vectorStoreId, CancellationToken cancellationToken = default); public virtual Task> GetVectorStoreAsync(VectorStore vectorStore); public virtual Task GetVectorStoreAsync(string vectorStoreId, RequestOptions options); - public virtual Task> GetVectorStoreAsync(string vectorStoreId, CancellationToken cancellationToken = null); - public virtual PageCollection GetVectorStores(VectorStoreCollectionOptions options = null, CancellationToken cancellationToken = null); - public virtual PageCollection GetVectorStores(ContinuationToken firstPageToken, CancellationToken cancellationToken = null); + public virtual Task> GetVectorStoreAsync(string vectorStoreId, CancellationToken cancellationToken = default); + public virtual PageCollection GetVectorStores(VectorStoreCollectionOptions options = null, CancellationToken cancellationToken = default); + public virtual PageCollection GetVectorStores(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); public virtual IEnumerable GetVectorStores(int? limit, string order, string after, string before, RequestOptions options); - public virtual AsyncPageCollection GetVectorStoresAsync(VectorStoreCollectionOptions options = null, CancellationToken cancellationToken = null); - public virtual AsyncPageCollection GetVectorStoresAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = null); + public virtual AsyncPageCollection GetVectorStoresAsync(VectorStoreCollectionOptions options = null, CancellationToken cancellationToken = default); + public virtual AsyncPageCollection GetVectorStoresAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); public virtual IAsyncEnumerable GetVectorStoresAsync(int? limit, string order, string after, string before, RequestOptions options); public virtual ClientResult ModifyVectorStore(VectorStore vectorStore, VectorStoreModificationOptions options); - public virtual ClientResult ModifyVectorStore(string vectorStoreId, VectorStoreModificationOptions vectorStore, CancellationToken cancellationToken = null); + public virtual ClientResult ModifyVectorStore(string vectorStoreId, VectorStoreModificationOptions vectorStore, CancellationToken cancellationToken = default); public virtual ClientResult ModifyVectorStore(string vectorStoreId, BinaryContent content, RequestOptions options = null); public virtual Task> ModifyVectorStoreAsync(VectorStore vectorStore, VectorStoreModificationOptions options); - public virtual Task> ModifyVectorStoreAsync(string vectorStoreId, VectorStoreModificationOptions vectorStore, CancellationToken cancellationToken = null); + public virtual Task> ModifyVectorStoreAsync(string vectorStoreId, VectorStoreModificationOptions vectorStore, CancellationToken cancellationToken = default); public virtual Task ModifyVectorStoreAsync(string vectorStoreId, BinaryContent content, RequestOptions options = null); public virtual ClientResult RemoveFileFromStore(VectorStore vectorStore, Files.OpenAIFileInfo file); public virtual ClientResult RemoveFileFromStore(string vectorStoreId, string fileId, RequestOptions options); - public virtual ClientResult RemoveFileFromStore(string vectorStoreId, string fileId, CancellationToken cancellationToken = null); + public virtual ClientResult RemoveFileFromStore(string vectorStoreId, string fileId, CancellationToken cancellationToken = default); public virtual Task> RemoveFileFromStoreAsync(VectorStore vectorStore, Files.OpenAIFileInfo file); public virtual Task RemoveFileFromStoreAsync(string vectorStoreId, string fileId, RequestOptions options); - public virtual Task> RemoveFileFromStoreAsync(string vectorStoreId, string fileId, CancellationToken cancellationToken = null); + public virtual Task> RemoveFileFromStoreAsync(string vectorStoreId, string fileId, CancellationToken cancellationToken = default); } public class VectorStoreCollectionOptions { public VectorStoreCollectionOptions(); diff --git a/.dotnet/api/api.md b/.dotnet/api/api.md index c0dbf08f7..fa4af620d 100644 --- a/.dotnet/api/api.md +++ b/.dotnet/api/api.md @@ -62,148 +62,148 @@ namespace OpenAI.Assistants { public virtual ClientPipeline Pipeline { get; } public virtual ClientResult CancelRun(ThreadRun run); public virtual ClientResult CancelRun(string threadId, string runId, RequestOptions options); - public virtual ClientResult CancelRun(string threadId, string runId, CancellationToken cancellationToken = null); + public virtual ClientResult CancelRun(string threadId, string runId, CancellationToken cancellationToken = default); public virtual Task> CancelRunAsync(ThreadRun run); public virtual Task CancelRunAsync(string threadId, string runId, RequestOptions options); - public virtual Task> CancelRunAsync(string threadId, string runId, CancellationToken cancellationToken = null); + public virtual Task> CancelRunAsync(string threadId, string runId, CancellationToken cancellationToken = default); public virtual ClientResult CreateAssistant(BinaryContent content, RequestOptions options = null); - public virtual ClientResult CreateAssistant(string model, AssistantCreationOptions options = null, CancellationToken cancellationToken = null); + public virtual ClientResult CreateAssistant(string model, AssistantCreationOptions options = null, CancellationToken cancellationToken = default); public virtual Task CreateAssistantAsync(BinaryContent content, RequestOptions options = null); - public virtual Task> CreateAssistantAsync(string model, AssistantCreationOptions options = null, CancellationToken cancellationToken = null); + public virtual Task> CreateAssistantAsync(string model, AssistantCreationOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult CreateMessage(AssistantThread thread, MessageRole role, IEnumerable content, MessageCreationOptions options = null); - public virtual ClientResult CreateMessage(string threadId, MessageRole role, IEnumerable content, MessageCreationOptions options = null, CancellationToken cancellationToken = null); + public virtual ClientResult CreateMessage(string threadId, MessageRole role, IEnumerable content, MessageCreationOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult CreateMessage(string threadId, BinaryContent content, RequestOptions options = null); public virtual Task> CreateMessageAsync(AssistantThread thread, MessageRole role, IEnumerable content, MessageCreationOptions options = null); - public virtual Task> CreateMessageAsync(string threadId, MessageRole role, IEnumerable content, MessageCreationOptions options = null, CancellationToken cancellationToken = null); + public virtual Task> CreateMessageAsync(string threadId, MessageRole role, IEnumerable content, MessageCreationOptions options = null, CancellationToken cancellationToken = default); public virtual Task CreateMessageAsync(string threadId, BinaryContent content, RequestOptions options = null); public virtual ClientResult CreateRun(AssistantThread thread, Assistant assistant, RunCreationOptions options = null); public virtual ClientResult CreateRun(string threadId, BinaryContent content, RequestOptions options = null); - public virtual ClientResult CreateRun(string threadId, string assistantId, RunCreationOptions options = null, CancellationToken cancellationToken = null); + public virtual ClientResult CreateRun(string threadId, string assistantId, RunCreationOptions options = null, CancellationToken cancellationToken = default); public virtual Task> CreateRunAsync(AssistantThread thread, Assistant assistant, RunCreationOptions options = null); public virtual Task CreateRunAsync(string threadId, BinaryContent content, RequestOptions options = null); - public virtual Task> CreateRunAsync(string threadId, string assistantId, RunCreationOptions options = null, CancellationToken cancellationToken = null); + public virtual Task> CreateRunAsync(string threadId, string assistantId, RunCreationOptions options = null, CancellationToken cancellationToken = default); public virtual CollectionResult CreateRunStreaming(AssistantThread thread, Assistant assistant, RunCreationOptions options = null); - public virtual CollectionResult CreateRunStreaming(string threadId, string assistantId, RunCreationOptions options = null, CancellationToken cancellationToken = null); + public virtual CollectionResult CreateRunStreaming(string threadId, string assistantId, RunCreationOptions options = null, CancellationToken cancellationToken = default); public virtual AsyncCollectionResult CreateRunStreamingAsync(AssistantThread thread, Assistant assistant, RunCreationOptions options = null); - public virtual AsyncCollectionResult CreateRunStreamingAsync(string threadId, string assistantId, RunCreationOptions options = null, CancellationToken cancellationToken = null); - public virtual ClientResult CreateThread(ThreadCreationOptions options = null, CancellationToken cancellationToken = null); + public virtual AsyncCollectionResult CreateRunStreamingAsync(string threadId, string assistantId, RunCreationOptions options = null, CancellationToken cancellationToken = default); + public virtual ClientResult CreateThread(ThreadCreationOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult CreateThread(BinaryContent content, RequestOptions options = null); public virtual ClientResult CreateThreadAndRun(Assistant assistant, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null); public virtual ClientResult CreateThreadAndRun(BinaryContent content, RequestOptions options = null); - public virtual ClientResult CreateThreadAndRun(string assistantId, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null, CancellationToken cancellationToken = null); + public virtual ClientResult CreateThreadAndRun(string assistantId, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null, CancellationToken cancellationToken = default); public virtual Task> CreateThreadAndRunAsync(Assistant assistant, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null); public virtual Task CreateThreadAndRunAsync(BinaryContent content, RequestOptions options = null); - public virtual Task> CreateThreadAndRunAsync(string assistantId, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null, CancellationToken cancellationToken = null); + public virtual Task> CreateThreadAndRunAsync(string assistantId, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null, CancellationToken cancellationToken = default); public virtual CollectionResult CreateThreadAndRunStreaming(Assistant assistant, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null); - public virtual CollectionResult CreateThreadAndRunStreaming(string assistantId, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null, CancellationToken cancellationToken = null); + public virtual CollectionResult CreateThreadAndRunStreaming(string assistantId, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null, CancellationToken cancellationToken = default); public virtual AsyncCollectionResult CreateThreadAndRunStreamingAsync(Assistant assistant, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null); - public virtual AsyncCollectionResult CreateThreadAndRunStreamingAsync(string assistantId, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null, CancellationToken cancellationToken = null); - public virtual Task> CreateThreadAsync(ThreadCreationOptions options = null, CancellationToken cancellationToken = null); + public virtual AsyncCollectionResult CreateThreadAndRunStreamingAsync(string assistantId, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null, CancellationToken cancellationToken = default); + public virtual Task> CreateThreadAsync(ThreadCreationOptions options = null, CancellationToken cancellationToken = default); public virtual Task CreateThreadAsync(BinaryContent content, RequestOptions options = null); public virtual ClientResult DeleteAssistant(Assistant assistant); public virtual ClientResult DeleteAssistant(string assistantId, RequestOptions options); - public virtual ClientResult DeleteAssistant(string assistantId, CancellationToken cancellationToken = null); + public virtual ClientResult DeleteAssistant(string assistantId, CancellationToken cancellationToken = default); public virtual Task> DeleteAssistantAsync(Assistant assistant); public virtual Task DeleteAssistantAsync(string assistantId, RequestOptions options); - public virtual Task> DeleteAssistantAsync(string assistantId, CancellationToken cancellationToken = null); + public virtual Task> DeleteAssistantAsync(string assistantId, CancellationToken cancellationToken = default); public virtual ClientResult DeleteMessage(ThreadMessage message); public virtual ClientResult DeleteMessage(string threadId, string messageId, RequestOptions options); - public virtual ClientResult DeleteMessage(string threadId, string messageId, CancellationToken cancellationToken = null); + public virtual ClientResult DeleteMessage(string threadId, string messageId, CancellationToken cancellationToken = default); public virtual Task> DeleteMessageAsync(ThreadMessage message); public virtual Task DeleteMessageAsync(string threadId, string messageId, RequestOptions options); - public virtual Task> DeleteMessageAsync(string threadId, string messageId, CancellationToken cancellationToken = null); + public virtual Task> DeleteMessageAsync(string threadId, string messageId, CancellationToken cancellationToken = default); public virtual ClientResult DeleteThread(AssistantThread thread); public virtual ClientResult DeleteThread(string threadId, RequestOptions options); - public virtual ClientResult DeleteThread(string threadId, CancellationToken cancellationToken = null); + public virtual ClientResult DeleteThread(string threadId, CancellationToken cancellationToken = default); public virtual Task> DeleteThreadAsync(AssistantThread thread); public virtual Task DeleteThreadAsync(string threadId, RequestOptions options); - public virtual Task> DeleteThreadAsync(string threadId, CancellationToken cancellationToken = null); + public virtual Task> DeleteThreadAsync(string threadId, CancellationToken cancellationToken = default); public virtual ClientResult GetAssistant(string assistantId, RequestOptions options); - public virtual ClientResult GetAssistant(string assistantId, CancellationToken cancellationToken = null); + public virtual ClientResult GetAssistant(string assistantId, CancellationToken cancellationToken = default); public virtual Task GetAssistantAsync(string assistantId, RequestOptions options); - public virtual Task> GetAssistantAsync(string assistantId, CancellationToken cancellationToken = null); - public virtual PageCollection GetAssistants(AssistantCollectionOptions options = null, CancellationToken cancellationToken = null); - public virtual PageCollection GetAssistants(ContinuationToken firstPageToken, CancellationToken cancellationToken = null); + public virtual Task> GetAssistantAsync(string assistantId, CancellationToken cancellationToken = default); + public virtual PageCollection GetAssistants(AssistantCollectionOptions options = null, CancellationToken cancellationToken = default); + public virtual PageCollection GetAssistants(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); public virtual IEnumerable GetAssistants(int? limit, string order, string after, string before, RequestOptions options); - public virtual AsyncPageCollection GetAssistantsAsync(AssistantCollectionOptions options = null, CancellationToken cancellationToken = null); - public virtual AsyncPageCollection GetAssistantsAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = null); + public virtual AsyncPageCollection GetAssistantsAsync(AssistantCollectionOptions options = null, CancellationToken cancellationToken = default); + public virtual AsyncPageCollection GetAssistantsAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); public virtual IAsyncEnumerable GetAssistantsAsync(int? limit, string order, string after, string before, RequestOptions options); public virtual ClientResult GetMessage(ThreadMessage message); public virtual ClientResult GetMessage(string threadId, string messageId, RequestOptions options); - public virtual ClientResult GetMessage(string threadId, string messageId, CancellationToken cancellationToken = null); + public virtual ClientResult GetMessage(string threadId, string messageId, CancellationToken cancellationToken = default); public virtual Task> GetMessageAsync(ThreadMessage message); public virtual Task GetMessageAsync(string threadId, string messageId, RequestOptions options); - public virtual Task> GetMessageAsync(string threadId, string messageId, CancellationToken cancellationToken = null); + public virtual Task> GetMessageAsync(string threadId, string messageId, CancellationToken cancellationToken = default); public virtual PageCollection GetMessages(AssistantThread thread, MessageCollectionOptions options = null); - public virtual PageCollection GetMessages(ContinuationToken firstPageToken, CancellationToken cancellationToken = null); - public virtual PageCollection GetMessages(string threadId, MessageCollectionOptions options = null, CancellationToken cancellationToken = null); + public virtual PageCollection GetMessages(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); + public virtual PageCollection GetMessages(string threadId, MessageCollectionOptions options = null, CancellationToken cancellationToken = default); public virtual IEnumerable GetMessages(string threadId, int? limit, string order, string after, string before, RequestOptions options); public virtual AsyncPageCollection GetMessagesAsync(AssistantThread thread, MessageCollectionOptions options = null); - public virtual AsyncPageCollection GetMessagesAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = null); - public virtual AsyncPageCollection GetMessagesAsync(string threadId, MessageCollectionOptions options = null, CancellationToken cancellationToken = null); + public virtual AsyncPageCollection GetMessagesAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); + public virtual AsyncPageCollection GetMessagesAsync(string threadId, MessageCollectionOptions options = null, CancellationToken cancellationToken = default); public virtual IAsyncEnumerable GetMessagesAsync(string threadId, int? limit, string order, string after, string before, RequestOptions options); public virtual ClientResult GetRun(ThreadRun run); public virtual ClientResult GetRun(string threadId, string runId, RequestOptions options); - public virtual ClientResult GetRun(string threadId, string runId, CancellationToken cancellationToken = null); + public virtual ClientResult GetRun(string threadId, string runId, CancellationToken cancellationToken = default); public virtual Task> GetRunAsync(ThreadRun run); public virtual Task GetRunAsync(string threadId, string runId, RequestOptions options); - public virtual Task> GetRunAsync(string threadId, string runId, CancellationToken cancellationToken = null); + public virtual Task> GetRunAsync(string threadId, string runId, CancellationToken cancellationToken = default); public virtual PageCollection GetRuns(AssistantThread thread, RunCollectionOptions options = null); - public virtual PageCollection GetRuns(ContinuationToken firstPageToken, CancellationToken cancellationToken = null); - public virtual PageCollection GetRuns(string threadId, RunCollectionOptions options = null, CancellationToken cancellationToken = null); + public virtual PageCollection GetRuns(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); + public virtual PageCollection GetRuns(string threadId, RunCollectionOptions options = null, CancellationToken cancellationToken = default); public virtual IEnumerable GetRuns(string threadId, int? limit, string order, string after, string before, RequestOptions options); public virtual AsyncPageCollection GetRunsAsync(AssistantThread thread, RunCollectionOptions options = null); - public virtual AsyncPageCollection GetRunsAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = null); - public virtual AsyncPageCollection GetRunsAsync(string threadId, RunCollectionOptions options = null, CancellationToken cancellationToken = null); + public virtual AsyncPageCollection GetRunsAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); + public virtual AsyncPageCollection GetRunsAsync(string threadId, RunCollectionOptions options = null, CancellationToken cancellationToken = default); public virtual IAsyncEnumerable GetRunsAsync(string threadId, int? limit, string order, string after, string before, RequestOptions options); public virtual ClientResult GetRunStep(string threadId, string runId, string stepId, RequestOptions options); - public virtual ClientResult GetRunStep(string threadId, string runId, string stepId, CancellationToken cancellationToken = null); + public virtual ClientResult GetRunStep(string threadId, string runId, string stepId, CancellationToken cancellationToken = default); public virtual Task GetRunStepAsync(string threadId, string runId, string stepId, RequestOptions options); - public virtual Task> GetRunStepAsync(string threadId, string runId, string stepId, CancellationToken cancellationToken = null); + public virtual Task> GetRunStepAsync(string threadId, string runId, string stepId, CancellationToken cancellationToken = default); public virtual PageCollection GetRunSteps(ThreadRun run, RunStepCollectionOptions options = null); - public virtual PageCollection GetRunSteps(ContinuationToken firstPageToken, CancellationToken cancellationToken = null); - public virtual PageCollection GetRunSteps(string threadId, string runId, RunStepCollectionOptions options = null, CancellationToken cancellationToken = null); + public virtual PageCollection GetRunSteps(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); + public virtual PageCollection GetRunSteps(string threadId, string runId, RunStepCollectionOptions options = null, CancellationToken cancellationToken = default); public virtual IEnumerable GetRunSteps(string threadId, string runId, int? limit, string order, string after, string before, RequestOptions options); public virtual AsyncPageCollection GetRunStepsAsync(ThreadRun run, RunStepCollectionOptions options = null); - public virtual AsyncPageCollection GetRunStepsAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = null); - public virtual AsyncPageCollection GetRunStepsAsync(string threadId, string runId, RunStepCollectionOptions options = null, CancellationToken cancellationToken = null); + public virtual AsyncPageCollection GetRunStepsAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); + public virtual AsyncPageCollection GetRunStepsAsync(string threadId, string runId, RunStepCollectionOptions options = null, CancellationToken cancellationToken = default); public virtual IAsyncEnumerable GetRunStepsAsync(string threadId, string runId, int? limit, string order, string after, string before, RequestOptions options); public virtual ClientResult GetThread(AssistantThread thread); public virtual ClientResult GetThread(string threadId, RequestOptions options); - public virtual ClientResult GetThread(string threadId, CancellationToken cancellationToken = null); + public virtual ClientResult GetThread(string threadId, CancellationToken cancellationToken = default); public virtual Task> GetThreadAsync(AssistantThread thread); public virtual Task GetThreadAsync(string threadId, RequestOptions options); - public virtual Task> GetThreadAsync(string threadId, CancellationToken cancellationToken = null); + public virtual Task> GetThreadAsync(string threadId, CancellationToken cancellationToken = default); public virtual ClientResult ModifyAssistant(Assistant assistant, AssistantModificationOptions options); - public virtual ClientResult ModifyAssistant(string assistantId, AssistantModificationOptions options, CancellationToken cancellationToken = null); + public virtual ClientResult ModifyAssistant(string assistantId, AssistantModificationOptions options, CancellationToken cancellationToken = default); public virtual ClientResult ModifyAssistant(string assistantId, BinaryContent content, RequestOptions options = null); public virtual Task> ModifyAssistantAsync(Assistant assistant, AssistantModificationOptions options); - public virtual Task> ModifyAssistantAsync(string assistantId, AssistantModificationOptions options, CancellationToken cancellationToken = null); + public virtual Task> ModifyAssistantAsync(string assistantId, AssistantModificationOptions options, CancellationToken cancellationToken = default); public virtual Task ModifyAssistantAsync(string assistantId, BinaryContent content, RequestOptions options = null); public virtual ClientResult ModifyMessage(ThreadMessage message, MessageModificationOptions options); - public virtual ClientResult ModifyMessage(string threadId, string messageId, MessageModificationOptions options, CancellationToken cancellationToken = null); + public virtual ClientResult ModifyMessage(string threadId, string messageId, MessageModificationOptions options, CancellationToken cancellationToken = default); public virtual ClientResult ModifyMessage(string threadId, string messageId, BinaryContent content, RequestOptions options = null); public virtual Task> ModifyMessageAsync(ThreadMessage message, MessageModificationOptions options); - public virtual Task> ModifyMessageAsync(string threadId, string messageId, MessageModificationOptions options, CancellationToken cancellationToken = null); + public virtual Task> ModifyMessageAsync(string threadId, string messageId, MessageModificationOptions options, CancellationToken cancellationToken = default); public virtual Task ModifyMessageAsync(string threadId, string messageId, BinaryContent content, RequestOptions options = null); public virtual ClientResult ModifyRun(string threadId, string runId, BinaryContent content, RequestOptions options = null); public virtual Task ModifyRunAsync(string threadId, string runId, BinaryContent content, RequestOptions options = null); public virtual ClientResult ModifyThread(AssistantThread thread, ThreadModificationOptions options); - public virtual ClientResult ModifyThread(string threadId, ThreadModificationOptions options, CancellationToken cancellationToken = null); + public virtual ClientResult ModifyThread(string threadId, ThreadModificationOptions options, CancellationToken cancellationToken = default); public virtual ClientResult ModifyThread(string threadId, BinaryContent content, RequestOptions options = null); public virtual Task> ModifyThreadAsync(AssistantThread thread, ThreadModificationOptions options); - public virtual Task> ModifyThreadAsync(string threadId, ThreadModificationOptions options, CancellationToken cancellationToken = null); + public virtual Task> ModifyThreadAsync(string threadId, ThreadModificationOptions options, CancellationToken cancellationToken = default); public virtual Task ModifyThreadAsync(string threadId, BinaryContent content, RequestOptions options = null); public virtual ClientResult SubmitToolOutputsToRun(ThreadRun run, IEnumerable toolOutputs); public virtual ClientResult SubmitToolOutputsToRun(string threadId, string runId, BinaryContent content, RequestOptions options = null); - public virtual ClientResult SubmitToolOutputsToRun(string threadId, string runId, IEnumerable toolOutputs, CancellationToken cancellationToken = null); + public virtual ClientResult SubmitToolOutputsToRun(string threadId, string runId, IEnumerable toolOutputs, CancellationToken cancellationToken = default); public virtual Task> SubmitToolOutputsToRunAsync(ThreadRun run, IEnumerable toolOutputs); public virtual Task SubmitToolOutputsToRunAsync(string threadId, string runId, BinaryContent content, RequestOptions options = null); - public virtual Task> SubmitToolOutputsToRunAsync(string threadId, string runId, IEnumerable toolOutputs, CancellationToken cancellationToken = null); + public virtual Task> SubmitToolOutputsToRunAsync(string threadId, string runId, IEnumerable toolOutputs, CancellationToken cancellationToken = default); public virtual CollectionResult SubmitToolOutputsToRunStreaming(ThreadRun run, IEnumerable toolOutputs); - public virtual CollectionResult SubmitToolOutputsToRunStreaming(string threadId, string runId, IEnumerable toolOutputs, CancellationToken cancellationToken = null); + public virtual CollectionResult SubmitToolOutputsToRunStreaming(string threadId, string runId, IEnumerable toolOutputs, CancellationToken cancellationToken = default); public virtual AsyncCollectionResult SubmitToolOutputsToRunStreamingAsync(ThreadRun run, IEnumerable toolOutputs); - public virtual AsyncCollectionResult SubmitToolOutputsToRunStreamingAsync(string threadId, string runId, IEnumerable toolOutputs, CancellationToken cancellationToken = null); + public virtual AsyncCollectionResult SubmitToolOutputsToRunStreamingAsync(string threadId, string runId, IEnumerable toolOutputs, CancellationToken cancellationToken = default); } public class AssistantCollectionOptions { public AssistantCollectionOptions(); @@ -741,20 +741,20 @@ namespace OpenAI.Audio { public AudioClient(string model, ApiKeyCredential credential, OpenAIClientOptions options = null); public virtual ClientPipeline Pipeline { get; } public virtual ClientResult GenerateSpeechFromText(BinaryContent content, RequestOptions options = null); - public virtual ClientResult GenerateSpeechFromText(string text, GeneratedSpeechVoice voice, SpeechGenerationOptions options = null, CancellationToken cancellationToken = null); + public virtual ClientResult GenerateSpeechFromText(string text, GeneratedSpeechVoice voice, SpeechGenerationOptions options = null, CancellationToken cancellationToken = default); public virtual Task GenerateSpeechFromTextAsync(BinaryContent content, RequestOptions options = null); - public virtual Task> GenerateSpeechFromTextAsync(string text, GeneratedSpeechVoice voice, SpeechGenerationOptions options = null, CancellationToken cancellationToken = null); + public virtual Task> GenerateSpeechFromTextAsync(string text, GeneratedSpeechVoice voice, SpeechGenerationOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult TranscribeAudio(BinaryContent content, string contentType, RequestOptions options = null); - public virtual ClientResult TranscribeAudio(Stream audio, string audioFilename, AudioTranscriptionOptions options = null, CancellationToken cancellationToken = null); + public virtual ClientResult TranscribeAudio(Stream audio, string audioFilename, AudioTranscriptionOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult TranscribeAudio(string audioFilePath, AudioTranscriptionOptions options = null); public virtual Task TranscribeAudioAsync(BinaryContent content, string contentType, RequestOptions options = null); - public virtual Task> TranscribeAudioAsync(Stream audio, string audioFilename, AudioTranscriptionOptions options = null, CancellationToken cancellationToken = null); + public virtual Task> TranscribeAudioAsync(Stream audio, string audioFilename, AudioTranscriptionOptions options = null, CancellationToken cancellationToken = default); public virtual Task> TranscribeAudioAsync(string audioFilePath, AudioTranscriptionOptions options = null); public virtual ClientResult TranslateAudio(BinaryContent content, string contentType, RequestOptions options = null); - public virtual ClientResult TranslateAudio(Stream audio, string audioFilename, AudioTranslationOptions options = null, CancellationToken cancellationToken = null); + public virtual ClientResult TranslateAudio(Stream audio, string audioFilename, AudioTranslationOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult TranslateAudio(string audioFilePath, AudioTranslationOptions options = null); public virtual Task TranslateAudioAsync(BinaryContent content, string contentType, RequestOptions options = null); - public virtual Task> TranslateAudioAsync(Stream audio, string audioFilename, AudioTranslationOptions options = null, CancellationToken cancellationToken = null); + public virtual Task> TranslateAudioAsync(Stream audio, string audioFilename, AudioTranslationOptions options = null, CancellationToken cancellationToken = default); public virtual Task> TranslateAudioAsync(string audioFilePath, AudioTranslationOptions options = null); } public sealed class AudioTimestampGranularities { @@ -880,14 +880,14 @@ namespace OpenAI.Chat { public virtual ClientPipeline Pipeline { get; } public virtual ClientResult CompleteChat(params ChatMessage[] messages); public virtual ClientResult CompleteChat(BinaryContent content, RequestOptions options = null); - public virtual ClientResult CompleteChat(IEnumerable messages, ChatCompletionOptions options = null, CancellationToken cancellationToken = null); + public virtual ClientResult CompleteChat(IEnumerable messages, ChatCompletionOptions options = null, CancellationToken cancellationToken = default); public virtual Task> CompleteChatAsync(params ChatMessage[] messages); public virtual Task CompleteChatAsync(BinaryContent content, RequestOptions options = null); - public virtual Task> CompleteChatAsync(IEnumerable messages, ChatCompletionOptions options = null, CancellationToken cancellationToken = null); + public virtual Task> CompleteChatAsync(IEnumerable messages, ChatCompletionOptions options = null, CancellationToken cancellationToken = default); public virtual CollectionResult CompleteChatStreaming(params ChatMessage[] messages); - public virtual CollectionResult CompleteChatStreaming(IEnumerable messages, ChatCompletionOptions options = null, CancellationToken cancellationToken = null); + public virtual CollectionResult CompleteChatStreaming(IEnumerable messages, ChatCompletionOptions options = null, CancellationToken cancellationToken = default); public virtual AsyncCollectionResult CompleteChatStreamingAsync(params ChatMessage[] messages); - public virtual AsyncCollectionResult CompleteChatStreamingAsync(IEnumerable messages, ChatCompletionOptions options = null, CancellationToken cancellationToken = null); + public virtual AsyncCollectionResult CompleteChatStreamingAsync(IEnumerable messages, ChatCompletionOptions options = null, CancellationToken cancellationToken = default); } public class ChatCompletion { public IReadOnlyList Content { get; } @@ -1127,14 +1127,14 @@ namespace OpenAI.Embeddings { public EmbeddingClient(string model, OpenAIClientOptions options = null); public EmbeddingClient(string model, ApiKeyCredential credential, OpenAIClientOptions options = null); public virtual ClientPipeline Pipeline { get; } - public virtual ClientResult GenerateEmbedding(string input, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = null); - public virtual Task> GenerateEmbeddingAsync(string input, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = null); + public virtual ClientResult GenerateEmbedding(string input, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = default); + public virtual Task> GenerateEmbeddingAsync(string input, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult GenerateEmbeddings(BinaryContent content, RequestOptions options = null); - public virtual ClientResult GenerateEmbeddings(IEnumerable> inputs, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = null); - public virtual ClientResult GenerateEmbeddings(IEnumerable inputs, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = null); + public virtual ClientResult GenerateEmbeddings(IEnumerable> inputs, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = default); + public virtual ClientResult GenerateEmbeddings(IEnumerable inputs, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = default); public virtual Task GenerateEmbeddingsAsync(BinaryContent content, RequestOptions options = null); - public virtual Task> GenerateEmbeddingsAsync(IEnumerable> inputs, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = null); - public virtual Task> GenerateEmbeddingsAsync(IEnumerable inputs, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = null); + public virtual Task> GenerateEmbeddingsAsync(IEnumerable> inputs, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = default); + public virtual Task> GenerateEmbeddingsAsync(IEnumerable inputs, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = default); } public class EmbeddingCollection { public string Model { get; } @@ -1161,31 +1161,31 @@ namespace OpenAI.Files { public virtual Task CreateIncrementalUploadJobAsync(BinaryContent content, RequestOptions options); public virtual ClientResult DeleteFile(OpenAIFileInfo file); public virtual ClientResult DeleteFile(string fileId, RequestOptions options); - public virtual ClientResult DeleteFile(string fileId, CancellationToken cancellationToken = null); + public virtual ClientResult DeleteFile(string fileId, CancellationToken cancellationToken = default); public virtual Task> DeleteFileAsync(OpenAIFileInfo file); public virtual Task DeleteFileAsync(string fileId, RequestOptions options); - public virtual Task> DeleteFileAsync(string fileId, CancellationToken cancellationToken = null); + public virtual Task> DeleteFileAsync(string fileId, CancellationToken cancellationToken = default); public virtual ClientResult DownloadFile(OpenAIFileInfo file); public virtual ClientResult DownloadFile(string fileId, RequestOptions options); - public virtual ClientResult DownloadFile(string fileId, CancellationToken cancellationToken = null); + public virtual ClientResult DownloadFile(string fileId, CancellationToken cancellationToken = default); public virtual Task> DownloadFileAsync(OpenAIFileInfo file); public virtual Task DownloadFileAsync(string fileId, RequestOptions options); - public virtual Task> DownloadFileAsync(string fileId, CancellationToken cancellationToken = null); + public virtual Task> DownloadFileAsync(string fileId, CancellationToken cancellationToken = default); public virtual ClientResult GetFile(string fileId, RequestOptions options); - public virtual ClientResult GetFile(string fileId, CancellationToken cancellationToken = null); + public virtual ClientResult GetFile(string fileId, CancellationToken cancellationToken = default); public virtual Task GetFileAsync(string fileId, RequestOptions options); - public virtual Task> GetFileAsync(string fileId, CancellationToken cancellationToken = null); - public virtual ClientResult GetFiles(OpenAIFilePurpose? purpose = null, CancellationToken cancellationToken = null); + public virtual Task> GetFileAsync(string fileId, CancellationToken cancellationToken = default); + public virtual ClientResult GetFiles(OpenAIFilePurpose? purpose = null, CancellationToken cancellationToken = default); public virtual ClientResult GetFiles(string purpose, RequestOptions options); - public virtual Task> GetFilesAsync(OpenAIFilePurpose? purpose = null, CancellationToken cancellationToken = null); + public virtual Task> GetFilesAsync(OpenAIFilePurpose? purpose = null, CancellationToken cancellationToken = default); public virtual Task GetFilesAsync(string purpose, RequestOptions options); public virtual ClientResult UploadFile(BinaryData file, string filename, FileUploadPurpose purpose); public virtual ClientResult UploadFile(BinaryContent content, string contentType, RequestOptions options = null); - public virtual ClientResult UploadFile(Stream file, string filename, FileUploadPurpose purpose, CancellationToken cancellationToken = null); + public virtual ClientResult UploadFile(Stream file, string filename, FileUploadPurpose purpose, CancellationToken cancellationToken = default); public virtual ClientResult UploadFile(string filePath, FileUploadPurpose purpose); public virtual Task> UploadFileAsync(BinaryData file, string filename, FileUploadPurpose purpose); public virtual Task UploadFileAsync(BinaryContent content, string contentType, RequestOptions options = null); - public virtual Task> UploadFileAsync(Stream file, string filename, FileUploadPurpose purpose, CancellationToken cancellationToken = null); + public virtual Task> UploadFileAsync(Stream file, string filename, FileUploadPurpose purpose, CancellationToken cancellationToken = default); public virtual Task> UploadFileAsync(string filePath, FileUploadPurpose purpose); } public sealed class FileUploadPurpose { @@ -1320,39 +1320,39 @@ namespace OpenAI.Images { public ImageClient(string model, OpenAIClientOptions options = null); public ImageClient(string model, ApiKeyCredential credential, OpenAIClientOptions options = null); public virtual ClientPipeline Pipeline { get; } - public virtual ClientResult GenerateImage(string prompt, ImageGenerationOptions options = null, CancellationToken cancellationToken = null); - public virtual Task> GenerateImageAsync(string prompt, ImageGenerationOptions options = null, CancellationToken cancellationToken = null); - public virtual ClientResult GenerateImageEdit(Stream image, string imageFilename, string prompt, ImageEditOptions options = null, CancellationToken cancellationToken = null); - public virtual ClientResult GenerateImageEdit(Stream image, string imageFilename, string prompt, Stream mask, string maskFilename, ImageEditOptions options = null, CancellationToken cancellationToken = null); + public virtual ClientResult GenerateImage(string prompt, ImageGenerationOptions options = null, CancellationToken cancellationToken = default); + public virtual Task> GenerateImageAsync(string prompt, ImageGenerationOptions options = null, CancellationToken cancellationToken = default); + public virtual ClientResult GenerateImageEdit(Stream image, string imageFilename, string prompt, ImageEditOptions options = null, CancellationToken cancellationToken = default); + public virtual ClientResult GenerateImageEdit(Stream image, string imageFilename, string prompt, Stream mask, string maskFilename, ImageEditOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult GenerateImageEdit(string imageFilePath, string prompt, ImageEditOptions options = null); public virtual ClientResult GenerateImageEdit(string imageFilePath, string prompt, string maskFilePath, ImageEditOptions options = null); - public virtual Task> GenerateImageEditAsync(Stream image, string imageFilename, string prompt, ImageEditOptions options = null, CancellationToken cancellationToken = null); - public virtual Task> GenerateImageEditAsync(Stream image, string imageFilename, string prompt, Stream mask, string maskFilename, ImageEditOptions options = null, CancellationToken cancellationToken = null); + public virtual Task> GenerateImageEditAsync(Stream image, string imageFilename, string prompt, ImageEditOptions options = null, CancellationToken cancellationToken = default); + public virtual Task> GenerateImageEditAsync(Stream image, string imageFilename, string prompt, Stream mask, string maskFilename, ImageEditOptions options = null, CancellationToken cancellationToken = default); public virtual Task> GenerateImageEditAsync(string imageFilePath, string prompt, ImageEditOptions options = null); public virtual Task> GenerateImageEditAsync(string imageFilePath, string prompt, string maskFilePath, ImageEditOptions options = null); public virtual ClientResult GenerateImageEdits(BinaryContent content, string contentType, RequestOptions options = null); - public virtual ClientResult GenerateImageEdits(Stream image, string imageFilename, string prompt, int imageCount, ImageEditOptions options = null, CancellationToken cancellationToken = null); - public virtual ClientResult GenerateImageEdits(Stream image, string imageFilename, string prompt, Stream mask, string maskFilename, int imageCount, ImageEditOptions options = null, CancellationToken cancellationToken = null); + public virtual ClientResult GenerateImageEdits(Stream image, string imageFilename, string prompt, int imageCount, ImageEditOptions options = null, CancellationToken cancellationToken = default); + public virtual ClientResult GenerateImageEdits(Stream image, string imageFilename, string prompt, Stream mask, string maskFilename, int imageCount, ImageEditOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult GenerateImageEdits(string imageFilePath, string prompt, int imageCount, ImageEditOptions options = null); public virtual ClientResult GenerateImageEdits(string imageFilePath, string prompt, string maskFilePath, int imageCount, ImageEditOptions options = null); public virtual Task GenerateImageEditsAsync(BinaryContent content, string contentType, RequestOptions options = null); - public virtual Task> GenerateImageEditsAsync(Stream image, string imageFilename, string prompt, int imageCount, ImageEditOptions options = null, CancellationToken cancellationToken = null); - public virtual Task> GenerateImageEditsAsync(Stream image, string imageFilename, string prompt, Stream mask, string maskFilename, int imageCount, ImageEditOptions options = null, CancellationToken cancellationToken = null); + public virtual Task> GenerateImageEditsAsync(Stream image, string imageFilename, string prompt, int imageCount, ImageEditOptions options = null, CancellationToken cancellationToken = default); + public virtual Task> GenerateImageEditsAsync(Stream image, string imageFilename, string prompt, Stream mask, string maskFilename, int imageCount, ImageEditOptions options = null, CancellationToken cancellationToken = default); public virtual Task> GenerateImageEditsAsync(string imageFilePath, string prompt, int imageCount, ImageEditOptions options = null); public virtual Task> GenerateImageEditsAsync(string imageFilePath, string prompt, string maskFilePath, int imageCount, ImageEditOptions options = null); public virtual ClientResult GenerateImages(BinaryContent content, RequestOptions options = null); - public virtual ClientResult GenerateImages(string prompt, int imageCount, ImageGenerationOptions options = null, CancellationToken cancellationToken = null); + public virtual ClientResult GenerateImages(string prompt, int imageCount, ImageGenerationOptions options = null, CancellationToken cancellationToken = default); public virtual Task GenerateImagesAsync(BinaryContent content, RequestOptions options = null); - public virtual Task> GenerateImagesAsync(string prompt, int imageCount, ImageGenerationOptions options = null, CancellationToken cancellationToken = null); - public virtual ClientResult GenerateImageVariation(Stream image, string imageFilename, ImageVariationOptions options = null, CancellationToken cancellationToken = null); + public virtual Task> GenerateImagesAsync(string prompt, int imageCount, ImageGenerationOptions options = null, CancellationToken cancellationToken = default); + public virtual ClientResult GenerateImageVariation(Stream image, string imageFilename, ImageVariationOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult GenerateImageVariation(string imageFilePath, ImageVariationOptions options = null); - public virtual Task> GenerateImageVariationAsync(Stream image, string imageFilename, ImageVariationOptions options = null, CancellationToken cancellationToken = null); + public virtual Task> GenerateImageVariationAsync(Stream image, string imageFilename, ImageVariationOptions options = null, CancellationToken cancellationToken = default); public virtual Task> GenerateImageVariationAsync(string imageFilePath, ImageVariationOptions options = null); public virtual ClientResult GenerateImageVariations(BinaryContent content, string contentType, RequestOptions options = null); - public virtual ClientResult GenerateImageVariations(Stream image, string imageFilename, int imageCount, ImageVariationOptions options = null, CancellationToken cancellationToken = null); + public virtual ClientResult GenerateImageVariations(Stream image, string imageFilename, int imageCount, ImageVariationOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult GenerateImageVariations(string imageFilePath, int imageCount, ImageVariationOptions options = null); public virtual Task GenerateImageVariationsAsync(BinaryContent content, string contentType, RequestOptions options = null); - public virtual Task> GenerateImageVariationsAsync(Stream image, string imageFilename, int imageCount, ImageVariationOptions options = null, CancellationToken cancellationToken = null); + public virtual Task> GenerateImageVariationsAsync(Stream image, string imageFilename, int imageCount, ImageVariationOptions options = null, CancellationToken cancellationToken = default); public virtual Task> GenerateImageVariationsAsync(string imageFilePath, int imageCount, ImageVariationOptions options = null); } public class ImageEditOptions { @@ -1437,12 +1437,12 @@ namespace OpenAI.Moderations { public ModerationClient(string model, OpenAIClientOptions options = null); public ModerationClient(string model, ApiKeyCredential credential, OpenAIClientOptions options = null); public virtual ClientPipeline Pipeline { get; } - public virtual ClientResult ClassifyTextInput(string input, CancellationToken cancellationToken = null); - public virtual Task> ClassifyTextInputAsync(string input, CancellationToken cancellationToken = null); + public virtual ClientResult ClassifyTextInput(string input, CancellationToken cancellationToken = default); + public virtual Task> ClassifyTextInputAsync(string input, CancellationToken cancellationToken = default); public virtual ClientResult ClassifyTextInputs(BinaryContent content, RequestOptions options = null); - public virtual ClientResult ClassifyTextInputs(IEnumerable inputs, CancellationToken cancellationToken = null); + public virtual ClientResult ClassifyTextInputs(IEnumerable inputs, CancellationToken cancellationToken = default); public virtual Task ClassifyTextInputsAsync(BinaryContent content, RequestOptions options = null); - public virtual Task> ClassifyTextInputsAsync(IEnumerable inputs, CancellationToken cancellationToken = null); + public virtual Task> ClassifyTextInputsAsync(IEnumerable inputs, CancellationToken cancellationToken = default); } public class ModerationCollection { public string Id { get; } @@ -1507,84 +1507,84 @@ namespace OpenAI.VectorStores { public virtual ClientPipeline Pipeline { get; } public virtual ClientResult AddFileToVectorStore(VectorStore vectorStore, Files.OpenAIFileInfo file); public virtual ClientResult AddFileToVectorStore(string vectorStoreId, BinaryContent content, RequestOptions options = null); - public virtual ClientResult AddFileToVectorStore(string vectorStoreId, string fileId, CancellationToken cancellationToken = null); + public virtual ClientResult AddFileToVectorStore(string vectorStoreId, string fileId, CancellationToken cancellationToken = default); public virtual Task> AddFileToVectorStoreAsync(VectorStore vectorStore, Files.OpenAIFileInfo file); public virtual Task AddFileToVectorStoreAsync(string vectorStoreId, BinaryContent content, RequestOptions options = null); - public virtual Task> AddFileToVectorStoreAsync(string vectorStoreId, string fileId, CancellationToken cancellationToken = null); + public virtual Task> AddFileToVectorStoreAsync(string vectorStoreId, string fileId, CancellationToken cancellationToken = default); public virtual ClientResult CancelBatchFileJob(VectorStoreBatchFileJob batchJob); public virtual ClientResult CancelBatchFileJob(string vectorStoreId, string batchId, RequestOptions options); - public virtual ClientResult CancelBatchFileJob(string vectorStoreId, string batchJobId, CancellationToken cancellationToken = null); + public virtual ClientResult CancelBatchFileJob(string vectorStoreId, string batchJobId, CancellationToken cancellationToken = default); public virtual Task> CancelBatchFileJobAsync(VectorStoreBatchFileJob batchJob); public virtual Task CancelBatchFileJobAsync(string vectorStoreId, string batchId, RequestOptions options); - public virtual Task> CancelBatchFileJobAsync(string vectorStoreId, string batchJobId, CancellationToken cancellationToken = null); + public virtual Task> CancelBatchFileJobAsync(string vectorStoreId, string batchJobId, CancellationToken cancellationToken = default); public virtual ClientResult CreateBatchFileJob(VectorStore vectorStore, IEnumerable files); public virtual ClientResult CreateBatchFileJob(string vectorStoreId, BinaryContent content, RequestOptions options = null); - public virtual ClientResult CreateBatchFileJob(string vectorStoreId, IEnumerable fileIds, CancellationToken cancellationToken = null); + public virtual ClientResult CreateBatchFileJob(string vectorStoreId, IEnumerable fileIds, CancellationToken cancellationToken = default); public virtual Task> CreateBatchFileJobAsync(VectorStore vectorStore, IEnumerable files); public virtual Task CreateBatchFileJobAsync(string vectorStoreId, BinaryContent content, RequestOptions options = null); - public virtual Task> CreateBatchFileJobAsync(string vectorStoreId, IEnumerable fileIds, CancellationToken cancellationToken = null); - public virtual ClientResult CreateVectorStore(VectorStoreCreationOptions vectorStore = null, CancellationToken cancellationToken = null); + public virtual Task> CreateBatchFileJobAsync(string vectorStoreId, IEnumerable fileIds, CancellationToken cancellationToken = default); + public virtual ClientResult CreateVectorStore(VectorStoreCreationOptions vectorStore = null, CancellationToken cancellationToken = default); public virtual ClientResult CreateVectorStore(BinaryContent content, RequestOptions options = null); - public virtual Task> CreateVectorStoreAsync(VectorStoreCreationOptions vectorStore = null, CancellationToken cancellationToken = null); + public virtual Task> CreateVectorStoreAsync(VectorStoreCreationOptions vectorStore = null, CancellationToken cancellationToken = default); public virtual Task CreateVectorStoreAsync(BinaryContent content, RequestOptions options = null); public virtual ClientResult DeleteVectorStore(VectorStore vectorStore); public virtual ClientResult DeleteVectorStore(string vectorStoreId, RequestOptions options); - public virtual ClientResult DeleteVectorStore(string vectorStoreId, CancellationToken cancellationToken = null); + public virtual ClientResult DeleteVectorStore(string vectorStoreId, CancellationToken cancellationToken = default); public virtual Task> DeleteVectorStoreAsync(VectorStore vectorStore); public virtual Task DeleteVectorStoreAsync(string vectorStoreId, RequestOptions options); - public virtual Task> DeleteVectorStoreAsync(string vectorStoreId, CancellationToken cancellationToken = null); + public virtual Task> DeleteVectorStoreAsync(string vectorStoreId, CancellationToken cancellationToken = default); public virtual ClientResult GetBatchFileJob(VectorStoreBatchFileJob batchJob); public virtual ClientResult GetBatchFileJob(string vectorStoreId, string batchId, RequestOptions options); - public virtual ClientResult GetBatchFileJob(string vectorStoreId, string batchJobId, CancellationToken cancellationToken = null); + public virtual ClientResult GetBatchFileJob(string vectorStoreId, string batchJobId, CancellationToken cancellationToken = default); public virtual Task> GetBatchFileJobAsync(VectorStoreBatchFileJob batchJob); public virtual Task GetBatchFileJobAsync(string vectorStoreId, string batchId, RequestOptions options); - public virtual Task> GetBatchFileJobAsync(string vectorStoreId, string batchJobId, CancellationToken cancellationToken = null); + public virtual Task> GetBatchFileJobAsync(string vectorStoreId, string batchJobId, CancellationToken cancellationToken = default); public virtual ClientResult GetFileAssociation(VectorStore vectorStore, Files.OpenAIFileInfo file); public virtual ClientResult GetFileAssociation(string vectorStoreId, string fileId, RequestOptions options); - public virtual ClientResult GetFileAssociation(string vectorStoreId, string fileId, CancellationToken cancellationToken = null); + public virtual ClientResult GetFileAssociation(string vectorStoreId, string fileId, CancellationToken cancellationToken = default); public virtual Task> GetFileAssociationAsync(VectorStore vectorStore, Files.OpenAIFileInfo file); public virtual Task GetFileAssociationAsync(string vectorStoreId, string fileId, RequestOptions options); - public virtual Task> GetFileAssociationAsync(string vectorStoreId, string fileId, CancellationToken cancellationToken = null); + public virtual Task> GetFileAssociationAsync(string vectorStoreId, string fileId, CancellationToken cancellationToken = default); public virtual PageCollection GetFileAssociations(VectorStore vectorStore, VectorStoreFileAssociationCollectionOptions options = null); public virtual PageCollection GetFileAssociations(VectorStoreBatchFileJob batchJob, VectorStoreFileAssociationCollectionOptions options = null); - public virtual PageCollection GetFileAssociations(ContinuationToken firstPageToken, CancellationToken cancellationToken = null); - public virtual PageCollection GetFileAssociations(string vectorStoreId, VectorStoreFileAssociationCollectionOptions options = null, CancellationToken cancellationToken = null); + public virtual PageCollection GetFileAssociations(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); + public virtual PageCollection GetFileAssociations(string vectorStoreId, VectorStoreFileAssociationCollectionOptions options = null, CancellationToken cancellationToken = default); public virtual IEnumerable GetFileAssociations(string vectorStoreId, int? limit, string order, string after, string before, string filter, RequestOptions options); - public virtual PageCollection GetFileAssociations(string vectorStoreId, string batchJobId, VectorStoreFileAssociationCollectionOptions options = null, CancellationToken cancellationToken = null); - public virtual PageCollection GetFileAssociations(string vectorStoreId, string batchJobId, ContinuationToken firstPageToken, CancellationToken cancellationToken = null); + public virtual PageCollection GetFileAssociations(string vectorStoreId, string batchJobId, VectorStoreFileAssociationCollectionOptions options = null, CancellationToken cancellationToken = default); + public virtual PageCollection GetFileAssociations(string vectorStoreId, string batchJobId, ContinuationToken firstPageToken, CancellationToken cancellationToken = default); public virtual IEnumerable GetFileAssociations(string vectorStoreId, string batchId, int? limit, string order, string after, string before, string filter, RequestOptions options); public virtual AsyncPageCollection GetFileAssociationsAsync(VectorStore vectorStore, VectorStoreFileAssociationCollectionOptions options = null); public virtual AsyncPageCollection GetFileAssociationsAsync(VectorStoreBatchFileJob batchJob, VectorStoreFileAssociationCollectionOptions options = null); - public virtual AsyncPageCollection GetFileAssociationsAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = null); - public virtual AsyncPageCollection GetFileAssociationsAsync(string vectorStoreId, VectorStoreFileAssociationCollectionOptions options = null, CancellationToken cancellationToken = null); + public virtual AsyncPageCollection GetFileAssociationsAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); + public virtual AsyncPageCollection GetFileAssociationsAsync(string vectorStoreId, VectorStoreFileAssociationCollectionOptions options = null, CancellationToken cancellationToken = default); public virtual IAsyncEnumerable GetFileAssociationsAsync(string vectorStoreId, int? limit, string order, string after, string before, string filter, RequestOptions options); - public virtual AsyncPageCollection GetFileAssociationsAsync(string vectorStoreId, string batchJobId, VectorStoreFileAssociationCollectionOptions options = null, CancellationToken cancellationToken = null); - public virtual AsyncPageCollection GetFileAssociationsAsync(string vectorStoreId, string batchJobId, ContinuationToken firstPageToken, CancellationToken cancellationToken = null); + public virtual AsyncPageCollection GetFileAssociationsAsync(string vectorStoreId, string batchJobId, VectorStoreFileAssociationCollectionOptions options = null, CancellationToken cancellationToken = default); + public virtual AsyncPageCollection GetFileAssociationsAsync(string vectorStoreId, string batchJobId, ContinuationToken firstPageToken, CancellationToken cancellationToken = default); public virtual IAsyncEnumerable GetFileAssociationsAsync(string vectorStoreId, string batchId, int? limit, string order, string after, string before, string filter, RequestOptions options); public virtual ClientResult GetVectorStore(VectorStore vectorStore); public virtual ClientResult GetVectorStore(string vectorStoreId, RequestOptions options); - public virtual ClientResult GetVectorStore(string vectorStoreId, CancellationToken cancellationToken = null); + public virtual ClientResult GetVectorStore(string vectorStoreId, CancellationToken cancellationToken = default); public virtual Task> GetVectorStoreAsync(VectorStore vectorStore); public virtual Task GetVectorStoreAsync(string vectorStoreId, RequestOptions options); - public virtual Task> GetVectorStoreAsync(string vectorStoreId, CancellationToken cancellationToken = null); - public virtual PageCollection GetVectorStores(VectorStoreCollectionOptions options = null, CancellationToken cancellationToken = null); - public virtual PageCollection GetVectorStores(ContinuationToken firstPageToken, CancellationToken cancellationToken = null); + public virtual Task> GetVectorStoreAsync(string vectorStoreId, CancellationToken cancellationToken = default); + public virtual PageCollection GetVectorStores(VectorStoreCollectionOptions options = null, CancellationToken cancellationToken = default); + public virtual PageCollection GetVectorStores(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); public virtual IEnumerable GetVectorStores(int? limit, string order, string after, string before, RequestOptions options); - public virtual AsyncPageCollection GetVectorStoresAsync(VectorStoreCollectionOptions options = null, CancellationToken cancellationToken = null); - public virtual AsyncPageCollection GetVectorStoresAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = null); + public virtual AsyncPageCollection GetVectorStoresAsync(VectorStoreCollectionOptions options = null, CancellationToken cancellationToken = default); + public virtual AsyncPageCollection GetVectorStoresAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); public virtual IAsyncEnumerable GetVectorStoresAsync(int? limit, string order, string after, string before, RequestOptions options); public virtual ClientResult ModifyVectorStore(VectorStore vectorStore, VectorStoreModificationOptions options); - public virtual ClientResult ModifyVectorStore(string vectorStoreId, VectorStoreModificationOptions vectorStore, CancellationToken cancellationToken = null); + public virtual ClientResult ModifyVectorStore(string vectorStoreId, VectorStoreModificationOptions vectorStore, CancellationToken cancellationToken = default); public virtual ClientResult ModifyVectorStore(string vectorStoreId, BinaryContent content, RequestOptions options = null); public virtual Task> ModifyVectorStoreAsync(VectorStore vectorStore, VectorStoreModificationOptions options); - public virtual Task> ModifyVectorStoreAsync(string vectorStoreId, VectorStoreModificationOptions vectorStore, CancellationToken cancellationToken = null); + public virtual Task> ModifyVectorStoreAsync(string vectorStoreId, VectorStoreModificationOptions vectorStore, CancellationToken cancellationToken = default); public virtual Task ModifyVectorStoreAsync(string vectorStoreId, BinaryContent content, RequestOptions options = null); public virtual ClientResult RemoveFileFromStore(VectorStore vectorStore, Files.OpenAIFileInfo file); public virtual ClientResult RemoveFileFromStore(string vectorStoreId, string fileId, RequestOptions options); - public virtual ClientResult RemoveFileFromStore(string vectorStoreId, string fileId, CancellationToken cancellationToken = null); + public virtual ClientResult RemoveFileFromStore(string vectorStoreId, string fileId, CancellationToken cancellationToken = default); public virtual Task> RemoveFileFromStoreAsync(VectorStore vectorStore, Files.OpenAIFileInfo file); public virtual Task RemoveFileFromStoreAsync(string vectorStoreId, string fileId, RequestOptions options); - public virtual Task> RemoveFileFromStoreAsync(string vectorStoreId, string fileId, CancellationToken cancellationToken = null); + public virtual Task> RemoveFileFromStoreAsync(string vectorStoreId, string fileId, CancellationToken cancellationToken = default); } public class VectorStoreCollectionOptions { public VectorStoreCollectionOptions(); diff --git a/.scripts/Generate-Api.ps1 b/.scripts/Generate-Api.ps1 index f222d8f4d..487f48929 100644 --- a/.scripts/Generate-Api.ps1 +++ b/.scripts/Generate-Api.ps1 @@ -40,6 +40,7 @@ $content = $content -replace ' { *}', ';' $content = $content -replace ' *public int value__;\r?\n', '' $content = $content -replace " * internal.*`n", "" $content = $content -replace '(virtual )[^ \.]*\.', '$1' +$content = $content -replace "cancellationToken = null", "cancellationToken = default" Set-Content -Path $outputPath -Value $content -NoNewline From 6c0d8895383dae002cc490f6ad7a5534c8990cab Mon Sep 17 00:00:00 2001 From: Travis Wilson Date: Fri, 26 Jul 2024 11:54:19 -0700 Subject: [PATCH 4/7] add assembly refs --- .dotnet/api/OpenAI.netstandard2.0.cs | 1679 ++++++++++++++++++-------- .dotnet/api/api.md | 1679 ++++++++++++++++++-------- .scripts/Generate-Api.ps1 | 15 +- 3 files changed, 2368 insertions(+), 1005 deletions(-) diff --git a/.dotnet/api/OpenAI.netstandard2.0.cs b/.dotnet/api/OpenAI.netstandard2.0.cs index d07551c8a..1cd7ef41b 100644 --- a/.dotnet/api/OpenAI.netstandard2.0.cs +++ b/.dotnet/api/OpenAI.netstandard2.0.cs @@ -1,15 +1,19 @@ namespace OpenAI { - public sealed class ListOrder { + public readonly partial struct ListOrder : IEquatable { + private readonly object _dummy; + private readonly int _dummyPrimitive; public ListOrder(string value); public static ListOrder NewestFirst { get; } public static ListOrder OldestFirst { get; } - public bool Equals(ListOrder other); - public override bool Equals(object obj); - public override int GetHashCode(); + public readonly bool Equals(ListOrder other); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly bool Equals(object obj); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly int GetHashCode(); public static bool operator ==(ListOrder left, ListOrder right); public static implicit operator ListOrder(string value); public static bool operator !=(ListOrder left, ListOrder right); - public override string ToString(); + public override readonly string ToString(); } public class OpenAIClient { protected OpenAIClient(); @@ -30,8 +34,7 @@ public class OpenAIClient { public virtual ModerationClient GetModerationClient(string model); public virtual VectorStoreClient GetVectorStoreClient(); } - public class OpenAIClientOptions { - public OpenAIClientOptions(); + public class OpenAIClientOptions : ClientPipelineOptions { public string ApplicationId { get; init; } public Uri Endpoint { get; init; } public string OrganizationId { get; init; } @@ -39,7 +42,7 @@ public class OpenAIClientOptions { } } namespace OpenAI.Assistants { - public class Assistant { + public class Assistant : IJsonModel, IPersistableModel { public DateTimeOffset CreatedAt { get; } public string Description { get; } public string Id { get; } @@ -52,6 +55,11 @@ public class Assistant { public float? Temperature { get; } public ToolResources ToolResources { get; } public IReadOnlyList Tools { get; } + Assistant IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + Assistant IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } public class AssistantClient { protected AssistantClient(); @@ -60,159 +68,212 @@ public class AssistantClient { protected internal AssistantClient(ClientPipeline pipeline, Uri endpoint, OpenAIClientOptions options); public virtual ClientPipeline Pipeline { get; } public virtual ClientResult CancelRun(ThreadRun run); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult CancelRun(string threadId, string runId, RequestOptions options); public virtual ClientResult CancelRun(string threadId, string runId, CancellationToken cancellationToken = default); public virtual Task> CancelRunAsync(ThreadRun run); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task CancelRunAsync(string threadId, string runId, RequestOptions options); + [Diagnostics.DebuggerStepThrough] public virtual Task> CancelRunAsync(string threadId, string runId, CancellationToken cancellationToken = default); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult CreateAssistant(BinaryContent content, RequestOptions options = null); public virtual ClientResult CreateAssistant(string model, AssistantCreationOptions options = null, CancellationToken cancellationToken = default); + [Diagnostics.DebuggerStepThrough] + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task CreateAssistantAsync(BinaryContent content, RequestOptions options = null); + [Diagnostics.DebuggerStepThrough] public virtual Task> CreateAssistantAsync(string model, AssistantCreationOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult CreateMessage(AssistantThread thread, MessageRole role, IEnumerable content, MessageCreationOptions options = null); public virtual ClientResult CreateMessage(string threadId, MessageRole role, IEnumerable content, MessageCreationOptions options = null, CancellationToken cancellationToken = default); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult CreateMessage(string threadId, BinaryContent content, RequestOptions options = null); public virtual Task> CreateMessageAsync(AssistantThread thread, MessageRole role, IEnumerable content, MessageCreationOptions options = null); + [Diagnostics.DebuggerStepThrough] public virtual Task> CreateMessageAsync(string threadId, MessageRole role, IEnumerable content, MessageCreationOptions options = null, CancellationToken cancellationToken = default); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task CreateMessageAsync(string threadId, BinaryContent content, RequestOptions options = null); public virtual ClientResult CreateRun(AssistantThread thread, Assistant assistant, RunCreationOptions options = null); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult CreateRun(string threadId, BinaryContent content, RequestOptions options = null); public virtual ClientResult CreateRun(string threadId, string assistantId, RunCreationOptions options = null, CancellationToken cancellationToken = default); public virtual Task> CreateRunAsync(AssistantThread thread, Assistant assistant, RunCreationOptions options = null); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task CreateRunAsync(string threadId, BinaryContent content, RequestOptions options = null); + [Diagnostics.DebuggerStepThrough] public virtual Task> CreateRunAsync(string threadId, string assistantId, RunCreationOptions options = null, CancellationToken cancellationToken = default); - public virtual CollectionResult CreateRunStreaming(AssistantThread thread, Assistant assistant, RunCreationOptions options = null); - public virtual CollectionResult CreateRunStreaming(string threadId, string assistantId, RunCreationOptions options = null, CancellationToken cancellationToken = default); - public virtual AsyncCollectionResult CreateRunStreamingAsync(AssistantThread thread, Assistant assistant, RunCreationOptions options = null); - public virtual AsyncCollectionResult CreateRunStreamingAsync(string threadId, string assistantId, RunCreationOptions options = null, CancellationToken cancellationToken = default); + public virtual ResultCollection CreateRunStreaming(AssistantThread thread, Assistant assistant, RunCreationOptions options = null); + public virtual ResultCollection CreateRunStreaming(string threadId, string assistantId, RunCreationOptions options = null, CancellationToken cancellationToken = default); + public virtual AsyncResultCollection CreateRunStreamingAsync(AssistantThread thread, Assistant assistant, RunCreationOptions options = null); + public virtual AsyncResultCollection CreateRunStreamingAsync(string threadId, string assistantId, RunCreationOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult CreateThread(ThreadCreationOptions options = null, CancellationToken cancellationToken = default); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult CreateThread(BinaryContent content, RequestOptions options = null); public virtual ClientResult CreateThreadAndRun(Assistant assistant, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult CreateThreadAndRun(BinaryContent content, RequestOptions options = null); public virtual ClientResult CreateThreadAndRun(string assistantId, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null, CancellationToken cancellationToken = default); public virtual Task> CreateThreadAndRunAsync(Assistant assistant, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task CreateThreadAndRunAsync(BinaryContent content, RequestOptions options = null); + [Diagnostics.DebuggerStepThrough] public virtual Task> CreateThreadAndRunAsync(string assistantId, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null, CancellationToken cancellationToken = default); - public virtual CollectionResult CreateThreadAndRunStreaming(Assistant assistant, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null); - public virtual CollectionResult CreateThreadAndRunStreaming(string assistantId, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null, CancellationToken cancellationToken = default); - public virtual AsyncCollectionResult CreateThreadAndRunStreamingAsync(Assistant assistant, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null); - public virtual AsyncCollectionResult CreateThreadAndRunStreamingAsync(string assistantId, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null, CancellationToken cancellationToken = default); + public virtual ResultCollection CreateThreadAndRunStreaming(Assistant assistant, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null); + public virtual ResultCollection CreateThreadAndRunStreaming(string assistantId, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null, CancellationToken cancellationToken = default); + public virtual AsyncResultCollection CreateThreadAndRunStreamingAsync(Assistant assistant, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null); + public virtual AsyncResultCollection CreateThreadAndRunStreamingAsync(string assistantId, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null, CancellationToken cancellationToken = default); + [Diagnostics.DebuggerStepThrough] public virtual Task> CreateThreadAsync(ThreadCreationOptions options = null, CancellationToken cancellationToken = default); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task CreateThreadAsync(BinaryContent content, RequestOptions options = null); public virtual ClientResult DeleteAssistant(Assistant assistant); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult DeleteAssistant(string assistantId, RequestOptions options); public virtual ClientResult DeleteAssistant(string assistantId, CancellationToken cancellationToken = default); public virtual Task> DeleteAssistantAsync(Assistant assistant); + [Diagnostics.DebuggerStepThrough] + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task DeleteAssistantAsync(string assistantId, RequestOptions options); + [Diagnostics.DebuggerStepThrough] public virtual Task> DeleteAssistantAsync(string assistantId, CancellationToken cancellationToken = default); public virtual ClientResult DeleteMessage(ThreadMessage message); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult DeleteMessage(string threadId, string messageId, RequestOptions options); public virtual ClientResult DeleteMessage(string threadId, string messageId, CancellationToken cancellationToken = default); public virtual Task> DeleteMessageAsync(ThreadMessage message); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task DeleteMessageAsync(string threadId, string messageId, RequestOptions options); + [Diagnostics.DebuggerStepThrough] public virtual Task> DeleteMessageAsync(string threadId, string messageId, CancellationToken cancellationToken = default); public virtual ClientResult DeleteThread(AssistantThread thread); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult DeleteThread(string threadId, RequestOptions options); public virtual ClientResult DeleteThread(string threadId, CancellationToken cancellationToken = default); public virtual Task> DeleteThreadAsync(AssistantThread thread); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task DeleteThreadAsync(string threadId, RequestOptions options); + [Diagnostics.DebuggerStepThrough] public virtual Task> DeleteThreadAsync(string threadId, CancellationToken cancellationToken = default); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult GetAssistant(string assistantId, RequestOptions options); public virtual ClientResult GetAssistant(string assistantId, CancellationToken cancellationToken = default); + [Diagnostics.DebuggerStepThrough] + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task GetAssistantAsync(string assistantId, RequestOptions options); + [Diagnostics.DebuggerStepThrough] public virtual Task> GetAssistantAsync(string assistantId, CancellationToken cancellationToken = default); - public virtual PageCollection GetAssistants(AssistantCollectionOptions options = null, CancellationToken cancellationToken = default); - public virtual PageCollection GetAssistants(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); - public virtual IEnumerable GetAssistants(int? limit, string order, string after, string before, RequestOptions options); - public virtual AsyncPageCollection GetAssistantsAsync(AssistantCollectionOptions options = null, CancellationToken cancellationToken = default); - public virtual AsyncPageCollection GetAssistantsAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); - public virtual IAsyncEnumerable GetAssistantsAsync(int? limit, string order, string after, string before, RequestOptions options); + public virtual PageableCollection GetAssistants(ListOrder? resultOrder = null, CancellationToken cancellationToken = default); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public virtual ClientResult GetAssistants(int? limit, string order, string after, string before, RequestOptions options); + public virtual AsyncPageableCollection GetAssistantsAsync(ListOrder? resultOrder = null, CancellationToken cancellationToken = default); + [Diagnostics.DebuggerStepThrough] + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public virtual Task GetAssistantsAsync(int? limit, string order, string after, string before, RequestOptions options); public virtual ClientResult GetMessage(ThreadMessage message); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult GetMessage(string threadId, string messageId, RequestOptions options); public virtual ClientResult GetMessage(string threadId, string messageId, CancellationToken cancellationToken = default); public virtual Task> GetMessageAsync(ThreadMessage message); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task GetMessageAsync(string threadId, string messageId, RequestOptions options); + [Diagnostics.DebuggerStepThrough] public virtual Task> GetMessageAsync(string threadId, string messageId, CancellationToken cancellationToken = default); - public virtual PageCollection GetMessages(AssistantThread thread, MessageCollectionOptions options = null); - public virtual PageCollection GetMessages(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); - public virtual PageCollection GetMessages(string threadId, MessageCollectionOptions options = null, CancellationToken cancellationToken = default); - public virtual IEnumerable GetMessages(string threadId, int? limit, string order, string after, string before, RequestOptions options); - public virtual AsyncPageCollection GetMessagesAsync(AssistantThread thread, MessageCollectionOptions options = null); - public virtual AsyncPageCollection GetMessagesAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); - public virtual AsyncPageCollection GetMessagesAsync(string threadId, MessageCollectionOptions options = null, CancellationToken cancellationToken = default); - public virtual IAsyncEnumerable GetMessagesAsync(string threadId, int? limit, string order, string after, string before, RequestOptions options); + public virtual PageableCollection GetMessages(AssistantThread thread, ListOrder? resultOrder = null); + public virtual PageableCollection GetMessages(string threadId, ListOrder? resultOrder = null, CancellationToken cancellationToken = default); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public virtual ClientResult GetMessages(string threadId, int? limit, string order, string after, string before, RequestOptions options); + public virtual AsyncPageableCollection GetMessagesAsync(AssistantThread thread, ListOrder? resultOrder = null); + public virtual AsyncPageableCollection GetMessagesAsync(string threadId, ListOrder? resultOrder = null, CancellationToken cancellationToken = default); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public virtual Task GetMessagesAsync(string threadId, int? limit, string order, string after, string before, RequestOptions options); public virtual ClientResult GetRun(ThreadRun run); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult GetRun(string threadId, string runId, RequestOptions options); public virtual ClientResult GetRun(string threadId, string runId, CancellationToken cancellationToken = default); public virtual Task> GetRunAsync(ThreadRun run); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task GetRunAsync(string threadId, string runId, RequestOptions options); + [Diagnostics.DebuggerStepThrough] public virtual Task> GetRunAsync(string threadId, string runId, CancellationToken cancellationToken = default); - public virtual PageCollection GetRuns(AssistantThread thread, RunCollectionOptions options = null); - public virtual PageCollection GetRuns(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); - public virtual PageCollection GetRuns(string threadId, RunCollectionOptions options = null, CancellationToken cancellationToken = default); - public virtual IEnumerable GetRuns(string threadId, int? limit, string order, string after, string before, RequestOptions options); - public virtual AsyncPageCollection GetRunsAsync(AssistantThread thread, RunCollectionOptions options = null); - public virtual AsyncPageCollection GetRunsAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); - public virtual AsyncPageCollection GetRunsAsync(string threadId, RunCollectionOptions options = null, CancellationToken cancellationToken = default); - public virtual IAsyncEnumerable GetRunsAsync(string threadId, int? limit, string order, string after, string before, RequestOptions options); + public virtual PageableCollection GetRuns(AssistantThread thread, ListOrder? resultOrder = null); + public virtual PageableCollection GetRuns(string threadId, ListOrder? resultOrder = null, CancellationToken cancellationToken = default); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public virtual ClientResult GetRuns(string threadId, int? limit, string order, string after, string before, RequestOptions options); + public virtual AsyncPageableCollection GetRunsAsync(AssistantThread thread, ListOrder? resultOrder = null); + public virtual AsyncPageableCollection GetRunsAsync(string threadId, ListOrder? resultOrder = null, CancellationToken cancellationToken = default); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public virtual Task GetRunsAsync(string threadId, int? limit, string order, string after, string before, RequestOptions options); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult GetRunStep(string threadId, string runId, string stepId, RequestOptions options); public virtual ClientResult GetRunStep(string threadId, string runId, string stepId, CancellationToken cancellationToken = default); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task GetRunStepAsync(string threadId, string runId, string stepId, RequestOptions options); + [Diagnostics.DebuggerStepThrough] public virtual Task> GetRunStepAsync(string threadId, string runId, string stepId, CancellationToken cancellationToken = default); - public virtual PageCollection GetRunSteps(ThreadRun run, RunStepCollectionOptions options = null); - public virtual PageCollection GetRunSteps(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); - public virtual PageCollection GetRunSteps(string threadId, string runId, RunStepCollectionOptions options = null, CancellationToken cancellationToken = default); - public virtual IEnumerable GetRunSteps(string threadId, string runId, int? limit, string order, string after, string before, RequestOptions options); - public virtual AsyncPageCollection GetRunStepsAsync(ThreadRun run, RunStepCollectionOptions options = null); - public virtual AsyncPageCollection GetRunStepsAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); - public virtual AsyncPageCollection GetRunStepsAsync(string threadId, string runId, RunStepCollectionOptions options = null, CancellationToken cancellationToken = default); - public virtual IAsyncEnumerable GetRunStepsAsync(string threadId, string runId, int? limit, string order, string after, string before, RequestOptions options); + public virtual PageableCollection GetRunSteps(ThreadRun run, ListOrder? resultOrder = null); + public virtual PageableCollection GetRunSteps(string threadId, string runId, ListOrder? resultOrder = null, CancellationToken cancellationToken = default); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public virtual ClientResult GetRunSteps(string threadId, string runId, int? limit, string order, string after, string before, RequestOptions options); + public virtual AsyncPageableCollection GetRunStepsAsync(ThreadRun run, ListOrder? resultOrder = null); + public virtual AsyncPageableCollection GetRunStepsAsync(string threadId, string runId, ListOrder? resultOrder = null, CancellationToken cancellationToken = default); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public virtual Task GetRunStepsAsync(string threadId, string runId, int? limit, string order, string after, string before, RequestOptions options); public virtual ClientResult GetThread(AssistantThread thread); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult GetThread(string threadId, RequestOptions options); public virtual ClientResult GetThread(string threadId, CancellationToken cancellationToken = default); public virtual Task> GetThreadAsync(AssistantThread thread); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task GetThreadAsync(string threadId, RequestOptions options); + [Diagnostics.DebuggerStepThrough] public virtual Task> GetThreadAsync(string threadId, CancellationToken cancellationToken = default); public virtual ClientResult ModifyAssistant(Assistant assistant, AssistantModificationOptions options); public virtual ClientResult ModifyAssistant(string assistantId, AssistantModificationOptions options, CancellationToken cancellationToken = default); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult ModifyAssistant(string assistantId, BinaryContent content, RequestOptions options = null); public virtual Task> ModifyAssistantAsync(Assistant assistant, AssistantModificationOptions options); + [Diagnostics.DebuggerStepThrough] public virtual Task> ModifyAssistantAsync(string assistantId, AssistantModificationOptions options, CancellationToken cancellationToken = default); + [Diagnostics.DebuggerStepThrough] + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task ModifyAssistantAsync(string assistantId, BinaryContent content, RequestOptions options = null); public virtual ClientResult ModifyMessage(ThreadMessage message, MessageModificationOptions options); public virtual ClientResult ModifyMessage(string threadId, string messageId, MessageModificationOptions options, CancellationToken cancellationToken = default); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult ModifyMessage(string threadId, string messageId, BinaryContent content, RequestOptions options = null); public virtual Task> ModifyMessageAsync(ThreadMessage message, MessageModificationOptions options); + [Diagnostics.DebuggerStepThrough] public virtual Task> ModifyMessageAsync(string threadId, string messageId, MessageModificationOptions options, CancellationToken cancellationToken = default); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task ModifyMessageAsync(string threadId, string messageId, BinaryContent content, RequestOptions options = null); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult ModifyRun(string threadId, string runId, BinaryContent content, RequestOptions options = null); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task ModifyRunAsync(string threadId, string runId, BinaryContent content, RequestOptions options = null); public virtual ClientResult ModifyThread(AssistantThread thread, ThreadModificationOptions options); public virtual ClientResult ModifyThread(string threadId, ThreadModificationOptions options, CancellationToken cancellationToken = default); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult ModifyThread(string threadId, BinaryContent content, RequestOptions options = null); public virtual Task> ModifyThreadAsync(AssistantThread thread, ThreadModificationOptions options); + [Diagnostics.DebuggerStepThrough] public virtual Task> ModifyThreadAsync(string threadId, ThreadModificationOptions options, CancellationToken cancellationToken = default); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task ModifyThreadAsync(string threadId, BinaryContent content, RequestOptions options = null); public virtual ClientResult SubmitToolOutputsToRun(ThreadRun run, IEnumerable toolOutputs); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult SubmitToolOutputsToRun(string threadId, string runId, BinaryContent content, RequestOptions options = null); public virtual ClientResult SubmitToolOutputsToRun(string threadId, string runId, IEnumerable toolOutputs, CancellationToken cancellationToken = default); public virtual Task> SubmitToolOutputsToRunAsync(ThreadRun run, IEnumerable toolOutputs); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task SubmitToolOutputsToRunAsync(string threadId, string runId, BinaryContent content, RequestOptions options = null); + [Diagnostics.DebuggerStepThrough] public virtual Task> SubmitToolOutputsToRunAsync(string threadId, string runId, IEnumerable toolOutputs, CancellationToken cancellationToken = default); - public virtual CollectionResult SubmitToolOutputsToRunStreaming(ThreadRun run, IEnumerable toolOutputs); - public virtual CollectionResult SubmitToolOutputsToRunStreaming(string threadId, string runId, IEnumerable toolOutputs, CancellationToken cancellationToken = default); - public virtual AsyncCollectionResult SubmitToolOutputsToRunStreamingAsync(ThreadRun run, IEnumerable toolOutputs); - public virtual AsyncCollectionResult SubmitToolOutputsToRunStreamingAsync(string threadId, string runId, IEnumerable toolOutputs, CancellationToken cancellationToken = default); - } - public class AssistantCollectionOptions { - public AssistantCollectionOptions(); - public string AfterId { get; init; } - public string BeforeId { get; init; } - public ListOrder? Order { get; init; } - public int? PageSize { get; init; } - } - public class AssistantCreationOptions { - public AssistantCreationOptions(); + public virtual ResultCollection SubmitToolOutputsToRunStreaming(ThreadRun run, IEnumerable toolOutputs); + public virtual ResultCollection SubmitToolOutputsToRunStreaming(string threadId, string runId, IEnumerable toolOutputs, CancellationToken cancellationToken = default); + public virtual AsyncResultCollection SubmitToolOutputsToRunStreamingAsync(ThreadRun run, IEnumerable toolOutputs); + public virtual AsyncResultCollection SubmitToolOutputsToRunStreamingAsync(string threadId, string runId, IEnumerable toolOutputs, CancellationToken cancellationToken = default); + } + public class AssistantCreationOptions : IJsonModel, IPersistableModel { public string Description { get; init; } public string Instructions { get; init; } public IDictionary Metadata { get; } @@ -222,9 +283,13 @@ public class AssistantCreationOptions { public float? Temperature { get; init; } public ToolResources ToolResources { get; init; } public IList Tools { get; } + AssistantCreationOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + AssistantCreationOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public class AssistantModificationOptions { - public AssistantModificationOptions(); + public class AssistantModificationOptions : IJsonModel, IPersistableModel { public IList DefaultTools { get; init; } public string Description { get; init; } public string Instructions { get; init; } @@ -235,59 +300,91 @@ public class AssistantModificationOptions { public AssistantResponseFormat ResponseFormat { get; init; } public float? Temperature { get; init; } public ToolResources ToolResources { get; init; } + AssistantModificationOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + AssistantModificationOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public class AssistantResponseFormat { + public class AssistantResponseFormat : IJsonModel, IPersistableModel { protected AssistantResponseFormat(); public static AssistantResponseFormat Auto { get; } public static AssistantResponseFormat JsonObject { get; } public static AssistantResponseFormat Text { get; } public bool Equals(AssistantResponseFormat other); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public override bool Equals(object obj); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public override int GetHashCode(); public static bool operator ==(AssistantResponseFormat left, AssistantResponseFormat right); public static implicit operator AssistantResponseFormat(string value); public static bool operator !=(AssistantResponseFormat left, AssistantResponseFormat right); + AssistantResponseFormat IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + AssistantResponseFormat IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); public override string ToString(); } - public class AssistantThread { + public class AssistantThread : IJsonModel, IPersistableModel { public DateTimeOffset CreatedAt { get; } public string Id { get; } public IReadOnlyDictionary Metadata { get; } public ToolResources ToolResources { get; } - } - public class CodeInterpreterToolDefinition : ToolDefinition { + AssistantThread IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + AssistantThread IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); + } + public class CodeInterpreterToolDefinition : ToolDefinition, IJsonModel, IPersistableModel { + CodeInterpreterToolDefinition IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + CodeInterpreterToolDefinition IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); protected override void WriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options); } - public class CodeInterpreterToolResources { - public CodeInterpreterToolResources(); + public class CodeInterpreterToolResources : IJsonModel, IPersistableModel { public IList FileIds { get; init; } + CodeInterpreterToolResources IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + CodeInterpreterToolResources IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public class FileSearchToolDefinition : ToolDefinition { + public class FileSearchToolDefinition : ToolDefinition, IJsonModel, IPersistableModel { public int? MaxResults { get; init; } + FileSearchToolDefinition IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + FileSearchToolDefinition IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); protected override void WriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options); } - public class FileSearchToolResources { - public FileSearchToolResources(); + public class FileSearchToolResources : IJsonModel, IPersistableModel { public IList NewVectorStores { get; } public IList VectorStoreIds { get; init; } + FileSearchToolResources IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + FileSearchToolResources IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public class FunctionToolDefinition : ToolDefinition { + public class FunctionToolDefinition : ToolDefinition, IJsonModel, IPersistableModel { public FunctionToolDefinition(); public FunctionToolDefinition(string name, string description = null, BinaryData parameters = null); public string Description { get; init; } public required string FunctionName { get; init; } public BinaryData Parameters { get; init; } + FunctionToolDefinition IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + FunctionToolDefinition IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); protected override void WriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options); } - public class MessageCollectionOptions { - public MessageCollectionOptions(); - public string AfterId { get; init; } - public string BeforeId { get; init; } - public ListOrder? Order { get; init; } - public int? PageSize { get; init; } - } - public abstract class MessageContent { - protected MessageContent(); + public abstract class MessageContent : IJsonModel, IPersistableModel { public MessageImageDetail? ImageDetail { get; } public string ImageFileId { get; } public Uri ImageUrl { get; } @@ -297,6 +394,11 @@ public abstract class MessageContent { public static MessageContent FromImageUrl(Uri imageUri, MessageImageDetail? detail = null); public static MessageContent FromText(string text); public static implicit operator MessageContent(string value); + MessageContent IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + MessageContent IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); protected abstract void WriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options); } public class MessageContentUpdate : StreamingUpdate { @@ -308,83 +410,100 @@ public class MessageContentUpdate : StreamingUpdate { public string Text { get; } public TextAnnotationUpdate TextAnnotation { get; } } - public class MessageCreationAttachment { + public class MessageCreationAttachment : IJsonModel, IPersistableModel { public MessageCreationAttachment(string fileId, IEnumerable tools); public string FileId { get; } public IReadOnlyList Tools { get; } + MessageCreationAttachment IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + MessageCreationAttachment IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public class MessageCreationOptions { - public MessageCreationOptions(); + public class MessageCreationOptions : IJsonModel, IPersistableModel { public IList Attachments { get; } public IDictionary Metadata { get; } + MessageCreationOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + MessageCreationOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public class MessageFailureDetails { + public class MessageFailureDetails : IJsonModel, IPersistableModel { public MessageFailureReason Reason { get; } - } - public sealed class MessageFailureReason { + MessageFailureDetails IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + MessageFailureDetails IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); + } + public readonly partial struct MessageFailureReason : IEquatable { + private readonly object _dummy; + private readonly int _dummyPrimitive; public MessageFailureReason(string value); public static MessageFailureReason ContentFilter { get; } public static MessageFailureReason MaxTokens { get; } public static MessageFailureReason RunCancelled { get; } public static MessageFailureReason RunExpired { get; } public static MessageFailureReason RunFailed { get; } - public bool Equals(MessageFailureReason other); - public override bool Equals(object obj); - public override int GetHashCode(); + public readonly bool Equals(MessageFailureReason other); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly bool Equals(object obj); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly int GetHashCode(); public static bool operator ==(MessageFailureReason left, MessageFailureReason right); public static implicit operator MessageFailureReason(string value); public static bool operator !=(MessageFailureReason left, MessageFailureReason right); - public override string ToString(); + public override readonly string ToString(); } - public sealed class MessageImageDetail { - public const MessageImageDetail Auto = 0; - public const MessageImageDetail High = 2; - public const MessageImageDetail Low = 1; + public enum MessageImageDetail { + Auto = 0, + Low = 1, + High = 2 } - public class MessageModificationOptions { - public MessageModificationOptions(); + public class MessageModificationOptions : IJsonModel, IPersistableModel { public IDictionary Metadata { get; } - } - public sealed class MessageRole { - public const MessageRole Assistant = 1; - public const MessageRole User = 0; - } - public sealed class MessageStatus { + MessageModificationOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + MessageModificationOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); + } + public enum MessageRole { + User = 0, + Assistant = 1 + } + public readonly partial struct MessageStatus : IEquatable { + private readonly object _dummy; + private readonly int _dummyPrimitive; public MessageStatus(string value); public static MessageStatus Completed { get; } public static MessageStatus Incomplete { get; } public static MessageStatus InProgress { get; } - public bool Equals(MessageStatus other); - public override bool Equals(object obj); - public override int GetHashCode(); + public readonly bool Equals(MessageStatus other); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly bool Equals(object obj); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly int GetHashCode(); public static bool operator ==(MessageStatus left, MessageStatus right); public static implicit operator MessageStatus(string value); public static bool operator !=(MessageStatus left, MessageStatus right); - public override string ToString(); + public override readonly string ToString(); } public class MessageStatusUpdate : StreamingUpdate { } public abstract class RequiredAction { - protected RequiredAction(); public string FunctionArguments { get; } public string FunctionName { get; } public string ToolCallId { get; } } - public class RequiredActionUpdate : RunUpdate { + public class RequiredActionUpdate : StreamingUpdate { public string FunctionArguments { get; } public string FunctionName { get; } public string ToolCallId { get; } public ThreadRun GetThreadRun(); } - public class RunCollectionOptions { - public RunCollectionOptions(); - public string AfterId { get; init; } - public string BeforeId { get; init; } - public ListOrder? Order { get; init; } - public int? PageSize { get; init; } - } - public class RunCreationOptions { - public RunCreationOptions(); + public class RunCreationOptions : IJsonModel, IPersistableModel { public string AdditionalInstructions { get; init; } public IList AdditionalMessages { get; } public string InstructionsOverride { get; init; } @@ -399,44 +518,73 @@ public class RunCreationOptions { public ToolConstraint ToolConstraint { get; init; } public IList ToolsOverride { get; } public RunTruncationStrategy TruncationStrategy { get; init; } + RunCreationOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + RunCreationOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public class RunError { + public class RunError : IJsonModel, IPersistableModel { public RunErrorCode Code { get; } public string Message { get; } - } - public sealed class RunErrorCode { + RunError IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + RunError IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); + } + public readonly partial struct RunErrorCode : IEquatable { + private readonly object _dummy; + private readonly int _dummyPrimitive; public RunErrorCode(string value); public static RunErrorCode InvalidPrompt { get; } public static RunErrorCode RateLimitExceeded { get; } public static RunErrorCode ServerError { get; } - public bool Equals(RunErrorCode other); - public override bool Equals(object obj); - public override int GetHashCode(); + public readonly bool Equals(RunErrorCode other); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly bool Equals(object obj); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly int GetHashCode(); public static bool operator ==(RunErrorCode left, RunErrorCode right); public static implicit operator RunErrorCode(string value); public static bool operator !=(RunErrorCode left, RunErrorCode right); - public override string ToString(); + public override readonly string ToString(); } - public class RunIncompleteDetails { + public class RunIncompleteDetails : IJsonModel, IPersistableModel { public RunIncompleteReason? Reason { get; } - } - public sealed class RunIncompleteReason { + RunIncompleteDetails IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + RunIncompleteDetails IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); + } + public readonly partial struct RunIncompleteReason : IEquatable { + private readonly object _dummy; + private readonly int _dummyPrimitive; public RunIncompleteReason(string value); public static RunIncompleteReason MaxCompletionTokens { get; } public static RunIncompleteReason MaxPromptTokens { get; } - public bool Equals(RunIncompleteReason other); - public override bool Equals(object obj); - public override int GetHashCode(); + public readonly bool Equals(RunIncompleteReason other); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly bool Equals(object obj); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly int GetHashCode(); public static bool operator ==(RunIncompleteReason left, RunIncompleteReason right); public static implicit operator RunIncompleteReason(string value); public static bool operator !=(RunIncompleteReason left, RunIncompleteReason right); - public override string ToString(); + public override readonly string ToString(); } - public class RunModificationOptions { - public RunModificationOptions(); + public class RunModificationOptions : IJsonModel, IPersistableModel { public IDictionary Metadata { get; } - } - public sealed class RunStatus { + RunModificationOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + RunModificationOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); + } + public readonly partial struct RunStatus : IEquatable { + private readonly object _dummy; + private readonly int _dummyPrimitive; public RunStatus(string value); public static RunStatus Cancelled { get; } public static RunStatus Cancelling { get; } @@ -448,15 +596,17 @@ public sealed class RunStatus { public bool IsTerminal { get; } public static RunStatus Queued { get; } public static RunStatus RequiresAction { get; } - public bool Equals(RunStatus other); - public override bool Equals(object obj); - public override int GetHashCode(); + public readonly bool Equals(RunStatus other); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly bool Equals(object obj); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly int GetHashCode(); public static bool operator ==(RunStatus left, RunStatus right); public static implicit operator RunStatus(string value); public static bool operator !=(RunStatus left, RunStatus right); - public override string ToString(); + public override readonly string ToString(); } - public class RunStep { + public class RunStep : IJsonModel, IPersistableModel { public string AssistantId { get; } public DateTimeOffset? CancelledAt { get; } public DateTimeOffset? CompletedAt { get; } @@ -472,23 +622,29 @@ public class RunStep { public string ThreadId { get; } public RunStepType Type { get; } public RunStepTokenUsage Usage { get; } + RunStep IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + RunStep IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public abstract class RunStepCodeInterpreterOutput { - protected RunStepCodeInterpreterOutput(); + public abstract class RunStepCodeInterpreterOutput : IJsonModel, IPersistableModel { public string ImageFileId { get; } public string Logs { get; } + RunStepCodeInterpreterOutput IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + RunStepCodeInterpreterOutput IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public class RunStepCollectionOptions { - public RunStepCollectionOptions(); - public string AfterId { get; init; } - public string BeforeId { get; init; } - public ListOrder? Order { get; init; } - public int? PageSize { get; init; } - } - public abstract class RunStepDetails { - protected RunStepDetails(); + public abstract class RunStepDetails : IJsonModel, IPersistableModel { public string CreatedMessageId { get; } public IReadOnlyList ToolCalls { get; } + RunStepDetails IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + RunStepDetails IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } public class RunStepDetailsUpdate : StreamingUpdate { public string CodeInterpreterInput { get; } @@ -501,44 +657,61 @@ public class RunStepDetailsUpdate : StreamingUpdate { public string ToolCallId { get; } public int? ToolCallIndex { get; } } - public class RunStepError { + public class RunStepError : IJsonModel, IPersistableModel { public RunStepErrorCode Code { get; } public string Message { get; } - } - public sealed class RunStepErrorCode { + RunStepError IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + RunStepError IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); + } + public readonly partial struct RunStepErrorCode : IEquatable { + private readonly object _dummy; + private readonly int _dummyPrimitive; public RunStepErrorCode(string value); public static RunStepErrorCode RateLimitExceeded { get; } public static RunStepErrorCode ServerError { get; } - public bool Equals(RunStepErrorCode other); - public override bool Equals(object obj); - public override int GetHashCode(); + public readonly bool Equals(RunStepErrorCode other); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly bool Equals(object obj); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly int GetHashCode(); public static bool operator ==(RunStepErrorCode left, RunStepErrorCode right); public static implicit operator RunStepErrorCode(string value); public static bool operator !=(RunStepErrorCode left, RunStepErrorCode right); - public override string ToString(); + public override readonly string ToString(); } - public sealed class RunStepStatus { + public readonly partial struct RunStepStatus : IEquatable { + private readonly object _dummy; + private readonly int _dummyPrimitive; public RunStepStatus(string value); public static RunStepStatus Cancelled { get; } public static RunStepStatus Completed { get; } public static RunStepStatus Expired { get; } public static RunStepStatus Failed { get; } public static RunStepStatus InProgress { get; } - public bool Equals(RunStepStatus other); - public override bool Equals(object obj); - public override int GetHashCode(); + public readonly bool Equals(RunStepStatus other); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly bool Equals(object obj); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly int GetHashCode(); public static bool operator ==(RunStepStatus left, RunStepStatus right); public static implicit operator RunStepStatus(string value); public static bool operator !=(RunStepStatus left, RunStepStatus right); - public override string ToString(); + public override readonly string ToString(); } - public class RunStepTokenUsage { + public class RunStepTokenUsage : IJsonModel, IPersistableModel { public int CompletionTokens { get; } public int PromptTokens { get; } public int TotalTokens { get; } + RunStepTokenUsage IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + RunStepTokenUsage IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public abstract class RunStepToolCall { - protected RunStepToolCall(); + public abstract class RunStepToolCall : IJsonModel, IPersistableModel { public string CodeInterpreterInput { get; } public IReadOnlyList CodeInterpreterOutputs { get; } public string FunctionArguments { get; } @@ -546,75 +719,98 @@ public abstract class RunStepToolCall { public string FunctionOutput { get; } public string ToolCallId { get; } public RunStepToolCallKind ToolKind { get; } - } - public sealed class RunStepToolCallKind { - public const RunStepToolCallKind CodeInterpreter = 1; - public const RunStepToolCallKind FileSearch = 2; - public const RunStepToolCallKind Function = 3; - public const RunStepToolCallKind Unknown = 0; - } - public sealed class RunStepType { + RunStepToolCall IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + RunStepToolCall IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); + } + public enum RunStepToolCallKind { + Unknown = 0, + CodeInterpreter = 1, + FileSearch = 2, + Function = 3 + } + public readonly partial struct RunStepType : IEquatable { + private readonly object _dummy; + private readonly int _dummyPrimitive; public RunStepType(string value); public static RunStepType MessageCreation { get; } public static RunStepType ToolCalls { get; } - public bool Equals(RunStepType other); - public override bool Equals(object obj); - public override int GetHashCode(); + public readonly bool Equals(RunStepType other); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly bool Equals(object obj); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly int GetHashCode(); public static bool operator ==(RunStepType left, RunStepType right); public static implicit operator RunStepType(string value); public static bool operator !=(RunStepType left, RunStepType right); - public override string ToString(); + public override readonly string ToString(); } public class RunStepUpdate : StreamingUpdate { } - public abstract class RunStepUpdateCodeInterpreterOutput { - protected RunStepUpdateCodeInterpreterOutput(); + public abstract class RunStepUpdateCodeInterpreterOutput : IJsonModel, IPersistableModel { public string ImageFileId { get; } public string Logs { get; } public int OutputIndex { get; } + RunStepUpdateCodeInterpreterOutput IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + RunStepUpdateCodeInterpreterOutput IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public class RunTokenUsage { + public class RunTokenUsage : IJsonModel, IPersistableModel { public int CompletionTokens { get; } public int PromptTokens { get; } public int TotalTokens { get; } + RunTokenUsage IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + RunTokenUsage IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public class RunTruncationStrategy { + public class RunTruncationStrategy : IJsonModel, IPersistableModel { public static RunTruncationStrategy Auto { get; } public int? LastMessages { get; } public static RunTruncationStrategy CreateLastMessagesStrategy(int lastMessageCount); + RunTruncationStrategy IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + RunTruncationStrategy IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } public class RunUpdate : StreamingUpdate { } public abstract class StreamingUpdate { public StreamingUpdateReason UpdateKind { get; } } - public sealed class StreamingUpdateReason { - public const StreamingUpdateReason Done = 25; - public const StreamingUpdateReason Error = 24; - public const StreamingUpdateReason MessageCompleted = 22; - public const StreamingUpdateReason MessageCreated = 19; - public const StreamingUpdateReason MessageFailed = 23; - public const StreamingUpdateReason MessageInProgress = 20; - public const StreamingUpdateReason MessageUpdated = 21; - public const StreamingUpdateReason RunCancelled = 10; - public const StreamingUpdateReason RunCancelling = 9; - public const StreamingUpdateReason RunCompleted = 6; - public const StreamingUpdateReason RunCreated = 2; - public const StreamingUpdateReason RunExpired = 11; - public const StreamingUpdateReason RunFailed = 8; - public const StreamingUpdateReason RunIncomplete = 7; - public const StreamingUpdateReason RunInProgress = 4; - public const StreamingUpdateReason RunQueued = 3; - public const StreamingUpdateReason RunRequiresAction = 5; - public const StreamingUpdateReason RunStepCancelled = 17; - public const StreamingUpdateReason RunStepCompleted = 15; - public const StreamingUpdateReason RunStepCreated = 12; - public const StreamingUpdateReason RunStepExpired = 18; - public const StreamingUpdateReason RunStepFailed = 16; - public const StreamingUpdateReason RunStepInProgress = 13; - public const StreamingUpdateReason RunStepUpdated = 14; - public const StreamingUpdateReason ThreadCreated = 1; - public const StreamingUpdateReason Unknown = 0; + public enum StreamingUpdateReason { + Unknown = 0, + ThreadCreated = 1, + RunCreated = 2, + RunQueued = 3, + RunInProgress = 4, + RunRequiresAction = 5, + RunCompleted = 6, + RunIncomplete = 7, + RunFailed = 8, + RunCancelling = 9, + RunCancelled = 10, + RunExpired = 11, + RunStepCreated = 12, + RunStepInProgress = 13, + RunStepUpdated = 14, + RunStepCompleted = 15, + RunStepFailed = 16, + RunStepCancelled = 17, + RunStepExpired = 18, + MessageCreated = 19, + MessageInProgress = 20, + MessageUpdated = 21, + MessageCompleted = 22, + MessageFailed = 23, + Error = 24, + Done = 25 } public class StreamingUpdate : StreamingUpdate where T : class { public T Value { get; } @@ -635,17 +831,21 @@ public class TextAnnotationUpdate { public int? StartIndex { get; } public string TextToReplace { get; } } - public class ThreadCreationOptions { - public ThreadCreationOptions(); + public class ThreadCreationOptions : IJsonModel, IPersistableModel { public IList InitialMessages { get; } public IDictionary Metadata { get; } public ToolResources ToolResources { get; init; } + ThreadCreationOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + ThreadCreationOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } public class ThreadInitializationMessage : MessageCreationOptions { public ThreadInitializationMessage(MessageRole role, IEnumerable content); public static implicit operator ThreadInitializationMessage(string initializationMessage); } - public class ThreadMessage { + public class ThreadMessage : IJsonModel, IPersistableModel { public string AssistantId { get; } public IReadOnlyList Attachments { get; } public DateTimeOffset? CompletedAt { get; } @@ -659,13 +859,22 @@ public class ThreadMessage { public string RunId { get; } public MessageStatus Status { get; } public string ThreadId { get; } + ThreadMessage IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + ThreadMessage IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public class ThreadModificationOptions { - public ThreadModificationOptions(); + public class ThreadModificationOptions : IJsonModel, IPersistableModel { public IDictionary Metadata { get; } public ToolResources ToolResources { get; init; } + ThreadModificationOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + ThreadModificationOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public class ThreadRun { + public class ThreadRun : IJsonModel, IPersistableModel { public string AssistantId { get; } public DateTimeOffset? CancelledAt { get; } public DateTimeOffset? CompletedAt { get; } @@ -692,6 +901,11 @@ public class ThreadRun { public IReadOnlyList Tools { get; } public RunTruncationStrategy TruncationStrategy { get; } public RunTokenUsage Usage { get; } + ThreadRun IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + ThreadRun IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } public class ThreadUpdate : StreamingUpdate { public DateTimeOffset CreatedAt { get; } @@ -699,37 +913,61 @@ public class ThreadUpdate : StreamingUpdate { public IReadOnlyDictionary Metadata { get; } public ToolResources ToolResources { get; } } - public class ToolConstraint { + public class ToolConstraint : IJsonModel, IPersistableModel { public ToolConstraint(ToolDefinition toolDefinition); public static ToolConstraint Auto { get; } public static ToolConstraint None { get; } public static ToolConstraint Required { get; } + ToolConstraint IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + ToolConstraint IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public abstract class ToolDefinition { + public abstract class ToolDefinition : IJsonModel, IPersistableModel { protected ToolDefinition(); protected ToolDefinition(string type); public static CodeInterpreterToolDefinition CreateCodeInterpreter(); public static FileSearchToolDefinition CreateFileSearch(int? maxResults = null); public static FunctionToolDefinition CreateFunction(string name, string description = null, BinaryData parameters = null); + ToolDefinition IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + ToolDefinition IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); protected abstract void WriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options); } - public class ToolOutput { + public class ToolOutput : IJsonModel, IPersistableModel { public ToolOutput(); public ToolOutput(string toolCallId, string output); public string Output { get; init; } public string ToolCallId { get; init; } + ToolOutput IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + ToolOutput IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public class ToolResources { - public ToolResources(); + public class ToolResources : IJsonModel, IPersistableModel { public CodeInterpreterToolResources CodeInterpreter { get; init; } public FileSearchToolResources FileSearch { get; init; } + ToolResources IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + ToolResources IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public class VectorStoreCreationHelper { + public class VectorStoreCreationHelper : IJsonModel, IPersistableModel { public VectorStoreCreationHelper(); public VectorStoreCreationHelper(IEnumerable files, IDictionary metadata = null); public VectorStoreCreationHelper(IEnumerable fileIds, IDictionary metadata = null); public IList FileIds { get; } public IDictionary Metadata { get; } + VectorStoreCreationHelper IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + VectorStoreCreationHelper IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } } namespace OpenAI.Audio { @@ -739,108 +977,165 @@ public class AudioClient { public AudioClient(string model, OpenAIClientOptions options = null); public AudioClient(string model, ApiKeyCredential credential, OpenAIClientOptions options = null); public virtual ClientPipeline Pipeline { get; } + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult GenerateSpeechFromText(BinaryContent content, RequestOptions options = null); public virtual ClientResult GenerateSpeechFromText(string text, GeneratedSpeechVoice voice, SpeechGenerationOptions options = null, CancellationToken cancellationToken = default); + [Diagnostics.DebuggerStepThrough] + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task GenerateSpeechFromTextAsync(BinaryContent content, RequestOptions options = null); + [Diagnostics.DebuggerStepThrough] public virtual Task> GenerateSpeechFromTextAsync(string text, GeneratedSpeechVoice voice, SpeechGenerationOptions options = null, CancellationToken cancellationToken = default); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult TranscribeAudio(BinaryContent content, string contentType, RequestOptions options = null); public virtual ClientResult TranscribeAudio(Stream audio, string audioFilename, AudioTranscriptionOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult TranscribeAudio(string audioFilePath, AudioTranscriptionOptions options = null); + [Diagnostics.DebuggerStepThrough] + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task TranscribeAudioAsync(BinaryContent content, string contentType, RequestOptions options = null); + [Diagnostics.DebuggerStepThrough] public virtual Task> TranscribeAudioAsync(Stream audio, string audioFilename, AudioTranscriptionOptions options = null, CancellationToken cancellationToken = default); + [Diagnostics.DebuggerStepThrough] public virtual Task> TranscribeAudioAsync(string audioFilePath, AudioTranscriptionOptions options = null); public virtual ClientResult TranslateAudio(BinaryContent content, string contentType, RequestOptions options = null); public virtual ClientResult TranslateAudio(Stream audio, string audioFilename, AudioTranslationOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult TranslateAudio(string audioFilePath, AudioTranslationOptions options = null); + [Diagnostics.DebuggerStepThrough] public virtual Task TranslateAudioAsync(BinaryContent content, string contentType, RequestOptions options = null); + [Diagnostics.DebuggerStepThrough] public virtual Task> TranslateAudioAsync(Stream audio, string audioFilename, AudioTranslationOptions options = null, CancellationToken cancellationToken = default); + [Diagnostics.DebuggerStepThrough] public virtual Task> TranslateAudioAsync(string audioFilePath, AudioTranslationOptions options = null); } - public sealed class AudioTimestampGranularities { - public const AudioTimestampGranularities Default = 0; - public const AudioTimestampGranularities Segment = 2; - public const AudioTimestampGranularities Word = 1; + [Flags] + public enum AudioTimestampGranularities { + Default = 0, + Word = 1, + Segment = 2 } - public class AudioTranscription { + public class AudioTranscription : IJsonModel, IPersistableModel { public TimeSpan? Duration { get; } public string Language { get; } public IReadOnlyList Segments { get; } public string Text { get; } public IReadOnlyList Words { get; } - } - public sealed class AudioTranscriptionFormat { - public const AudioTranscriptionFormat Simple = 1; - public const AudioTranscriptionFormat Srt = 3; - public const AudioTranscriptionFormat Text = 0; - public const AudioTranscriptionFormat Verbose = 2; - public const AudioTranscriptionFormat Vtt = 4; - } - public class AudioTranscriptionOptions { - public AudioTranscriptionOptions(); + AudioTranscription IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + AudioTranscription IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); + } + public enum AudioTranscriptionFormat { + Text = 0, + Simple = 1, + Verbose = 2, + Srt = 3, + Vtt = 4 + } + public class AudioTranscriptionOptions : IJsonModel, IPersistableModel { public AudioTimestampGranularities Granularities { get; init; } public string Language { get; init; } public string Prompt { get; init; } public AudioTranscriptionFormat? ResponseFormat { get; init; } public float? Temperature { get; init; } + AudioTranscriptionOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + AudioTranscriptionOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public class AudioTranslation { + public class AudioTranslation : IJsonModel, IPersistableModel { public TimeSpan? Duration { get; } public string Language { get; } public IReadOnlyList Segments { get; } public string Text { get; } - } - public sealed class AudioTranslationFormat { - public const AudioTranslationFormat Simple = 1; - public const AudioTranslationFormat Srt = 3; - public const AudioTranslationFormat Text = 0; - public const AudioTranslationFormat Verbose = 2; - public const AudioTranslationFormat Vtt = 4; - } - public class AudioTranslationOptions { - public AudioTranslationOptions(); + AudioTranslation IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + AudioTranslation IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); + } + public enum AudioTranslationFormat { + Text = 0, + Simple = 1, + Verbose = 2, + Srt = 3, + Vtt = 4 + } + public class AudioTranslationOptions : IJsonModel, IPersistableModel { public string Prompt { get; init; } public AudioTranslationFormat? ResponseFormat { get; init; } public float? Temperature { get; init; } - } - public sealed class GeneratedSpeechFormat { - public const GeneratedSpeechFormat Aac = 2; - public const GeneratedSpeechFormat Flac = 3; - public const GeneratedSpeechFormat Mp3 = 0; - public const GeneratedSpeechFormat Opus = 1; - public const GeneratedSpeechFormat Pcm = 5; - public const GeneratedSpeechFormat Wav = 4; - } - public sealed class GeneratedSpeechVoice { - public const GeneratedSpeechVoice Alloy = 0; - public const GeneratedSpeechVoice Echo = 1; - public const GeneratedSpeechVoice Fable = 2; - public const GeneratedSpeechVoice Nova = 4; - public const GeneratedSpeechVoice Onyx = 3; - public const GeneratedSpeechVoice Shimmer = 5; - } - public class SpeechGenerationOptions { - public SpeechGenerationOptions(); + AudioTranslationOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + AudioTranslationOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); + } + public enum GeneratedSpeechFormat { + Mp3 = 0, + Opus = 1, + Aac = 2, + Flac = 3, + Wav = 4, + Pcm = 5 + } + public enum GeneratedSpeechVoice { + Alloy = 0, + Echo = 1, + Fable = 2, + Onyx = 3, + Nova = 4, + Shimmer = 5 + } + public class SpeechGenerationOptions : IJsonModel, IPersistableModel { public GeneratedSpeechFormat? ResponseFormat { get; init; } public float? Speed { get; init; } - } - public sealed class TranscribedSegment { - public TranscribedSegment(); - public Double AverageLogProbability { get; } + SpeechGenerationOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + SpeechGenerationOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); + } + public readonly partial struct TranscribedSegment : IJsonModel, IPersistableModel, IJsonModel, IPersistableModel { + private readonly object _dummy; + private readonly int _dummyPrimitive; + public double AverageLogProbability { get; } public float CompressionRatio { get; } public TimeSpan End { get; } public int Id { get; } - public Double NoSpeechProbability { get; } + public double NoSpeechProbability { get; } public long SeekOffset { get; } public TimeSpan Start { get; } public float Temperature { get; } public string Text { get; } public IReadOnlyList TokenIds { get; } - } - public sealed class TranscribedWord { - public TranscribedWord(); + readonly TranscribedSegment IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + readonly void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + readonly object IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + readonly void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + readonly TranscribedSegment IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + readonly string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + readonly BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); + readonly object IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + readonly string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + readonly BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); + } + public readonly partial struct TranscribedWord : IJsonModel, IPersistableModel, IJsonModel, IPersistableModel { + private readonly object _dummy; + private readonly int _dummyPrimitive; public TimeSpan End { get; } public TimeSpan Start { get; } public string Word { get; } + readonly TranscribedWord IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + readonly void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + readonly object IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + readonly void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + readonly TranscribedWord IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + readonly string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + readonly BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); + readonly object IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + readonly string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + readonly BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } } namespace OpenAI.Batch { @@ -851,17 +1146,21 @@ public class BatchClient { protected internal BatchClient(ClientPipeline pipeline, Uri endpoint, OpenAIClientOptions options); public virtual ClientPipeline Pipeline { get; } public virtual ClientResult CancelBatch(string batchId, RequestOptions options); + [Diagnostics.DebuggerStepThrough] public virtual Task CancelBatchAsync(string batchId, RequestOptions options); public virtual ClientResult CreateBatch(BinaryContent content, RequestOptions options = null); + [Diagnostics.DebuggerStepThrough] public virtual Task CreateBatchAsync(BinaryContent content, RequestOptions options = null); public virtual ClientResult GetBatch(string batchId, RequestOptions options); + [Diagnostics.DebuggerStepThrough] public virtual Task GetBatchAsync(string batchId, RequestOptions options); public virtual ClientResult GetBatches(string after, int? limit, RequestOptions options); + [Diagnostics.DebuggerStepThrough] public virtual Task GetBatchesAsync(string after, int? limit, RequestOptions options); } } namespace OpenAI.Chat { - public class AssistantChatMessage : ChatMessage { + public class AssistantChatMessage : ChatMessage, IJsonModel, IPersistableModel { public AssistantChatMessage(ChatCompletion chatCompletion); public AssistantChatMessage(ChatFunctionCall functionCall, string content = null); public AssistantChatMessage(IEnumerable toolCalls, string content = null); @@ -869,6 +1168,11 @@ public class AssistantChatMessage : ChatMessage { public ChatFunctionCall FunctionCall { get; init; } public string ParticipantName { get; init; } public IList ToolCalls { get; } + AssistantChatMessage IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + AssistantChatMessage IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); protected override void WriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options); } public class ChatClient { @@ -878,17 +1182,22 @@ public class ChatClient { public ChatClient(string model, ApiKeyCredential credential, OpenAIClientOptions options = null); public virtual ClientPipeline Pipeline { get; } public virtual ClientResult CompleteChat(params ChatMessage[] messages); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult CompleteChat(BinaryContent content, RequestOptions options = null); public virtual ClientResult CompleteChat(IEnumerable messages, ChatCompletionOptions options = null, CancellationToken cancellationToken = default); + [Diagnostics.DebuggerStepThrough] public virtual Task> CompleteChatAsync(params ChatMessage[] messages); + [Diagnostics.DebuggerStepThrough] + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task CompleteChatAsync(BinaryContent content, RequestOptions options = null); + [Diagnostics.DebuggerStepThrough] public virtual Task> CompleteChatAsync(IEnumerable messages, ChatCompletionOptions options = null, CancellationToken cancellationToken = default); - public virtual CollectionResult CompleteChatStreaming(params ChatMessage[] messages); - public virtual CollectionResult CompleteChatStreaming(IEnumerable messages, ChatCompletionOptions options = null, CancellationToken cancellationToken = default); - public virtual AsyncCollectionResult CompleteChatStreamingAsync(params ChatMessage[] messages); - public virtual AsyncCollectionResult CompleteChatStreamingAsync(IEnumerable messages, ChatCompletionOptions options = null, CancellationToken cancellationToken = default); + public virtual ResultCollection CompleteChatStreaming(params ChatMessage[] messages); + public virtual ResultCollection CompleteChatStreaming(IEnumerable messages, ChatCompletionOptions options = null, CancellationToken cancellationToken = default); + public virtual AsyncResultCollection CompleteChatStreamingAsync(params ChatMessage[] messages); + public virtual AsyncResultCollection CompleteChatStreamingAsync(IEnumerable messages, ChatCompletionOptions options = null, CancellationToken cancellationToken = default); } - public class ChatCompletion { + public class ChatCompletion : IJsonModel, IPersistableModel { public IReadOnlyList Content { get; } public IReadOnlyList ContentTokenLogProbabilities { get; } public DateTimeOffset CreatedAt { get; } @@ -900,10 +1209,14 @@ public class ChatCompletion { public string SystemFingerprint { get; } public IReadOnlyList ToolCalls { get; } public ChatTokenUsage Usage { get; } + ChatCompletion IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + ChatCompletion IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); public override string ToString(); } - public class ChatCompletionOptions { - public ChatCompletionOptions(); + public class ChatCompletionOptions : IJsonModel, IPersistableModel { public float? FrequencyPenalty { get; init; } public ChatFunctionChoice FunctionChoice { get; init; } public IList Functions { get; } @@ -921,32 +1234,52 @@ public class ChatCompletionOptions { public int? TopLogProbabilityCount { get; init; } public float? TopP { get; init; } public string User { get; init; } - } - public sealed class ChatFinishReason { - public const ChatFinishReason ContentFilter = 2; - public const ChatFinishReason FunctionCall = 4; - public const ChatFinishReason Length = 1; - public const ChatFinishReason Stop = 0; - public const ChatFinishReason ToolCalls = 3; - } - public class ChatFunction { + ChatCompletionOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + ChatCompletionOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); + } + public enum ChatFinishReason { + Stop = 0, + Length = 1, + ContentFilter = 2, + ToolCalls = 3, + FunctionCall = 4 + } + [Obsolete("This field is marked as deprecated.")] + public class ChatFunction : IJsonModel, IPersistableModel { public ChatFunction(string functionName, string functionDescription = null, BinaryData functionParameters = null); public string FunctionDescription { get; init; } public string FunctionName { get; } public BinaryData FunctionParameters { get; init; } + ChatFunction IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + ChatFunction IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public class ChatFunctionCall { + public class ChatFunctionCall : IJsonModel, IPersistableModel { public ChatFunctionCall(string functionName, string functionArguments); public string FunctionArguments { get; } public string FunctionName { get; } + ChatFunctionCall IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + ChatFunctionCall IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public class ChatFunctionChoice { + public class ChatFunctionChoice : IJsonModel, IPersistableModel { public ChatFunctionChoice(ChatFunction chatFunction); public static ChatFunctionChoice Auto { get; } public static ChatFunctionChoice None { get; } + ChatFunctionChoice IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + ChatFunctionChoice IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public abstract class ChatMessage { - protected ChatMessage(); + public abstract class ChatMessage : IJsonModel, IPersistableModel { public IList Content { get; protected init; } public static AssistantChatMessage CreateAssistantMessage(ChatCompletion chatCompletion); public static AssistantChatMessage CreateAssistantMessage(ChatFunctionCall functionCall, string content = null); @@ -959,9 +1292,14 @@ public abstract class ChatMessage { public static UserChatMessage CreateUserMessage(IEnumerable contentParts); public static UserChatMessage CreateUserMessage(string content); public static implicit operator ChatMessage(string userMessage); + ChatMessage IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + ChatMessage IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); protected abstract void WriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options); } - public class ChatMessageContentPart { + public class ChatMessageContentPart : IJsonModel, IPersistableModel { public BinaryData ImageBytes { get; } public string ImageBytesMediaType { get; } public ImageChatMessageContentPartDetail? ImageDetail { get; } @@ -972,108 +1310,170 @@ public class ChatMessageContentPart { public static ChatMessageContentPart CreateImageMessageContentPart(Uri imageUri, ImageChatMessageContentPartDetail? imageDetail = null); public static ChatMessageContentPart CreateTextMessageContentPart(string text); public static implicit operator ChatMessageContentPart(string content); + ChatMessageContentPart IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + ChatMessageContentPart IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); public override string ToString(); } - public sealed class ChatMessageContentPartKind { + public readonly partial struct ChatMessageContentPartKind : IEquatable { + private readonly object _dummy; + private readonly int _dummyPrimitive; public ChatMessageContentPartKind(string value); public static ChatMessageContentPartKind Image { get; } public static ChatMessageContentPartKind Text { get; } - public bool Equals(ChatMessageContentPartKind other); - public override bool Equals(object obj); - public override int GetHashCode(); + public readonly bool Equals(ChatMessageContentPartKind other); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly bool Equals(object obj); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly int GetHashCode(); public static bool operator ==(ChatMessageContentPartKind left, ChatMessageContentPartKind right); public static implicit operator ChatMessageContentPartKind(string value); public static bool operator !=(ChatMessageContentPartKind left, ChatMessageContentPartKind right); - public override string ToString(); + public override readonly string ToString(); } - public sealed class ChatMessageRole { - public const ChatMessageRole Assistant = 2; - public const ChatMessageRole Function = 4; - public const ChatMessageRole System = 0; - public const ChatMessageRole Tool = 3; - public const ChatMessageRole User = 1; + public enum ChatMessageRole { + System = 0, + User = 1, + Assistant = 2, + Tool = 3, + Function = 4 } - public class ChatResponseFormat { + public class ChatResponseFormat : IJsonModel, IPersistableModel { public static ChatResponseFormat JsonObject { get; } public static ChatResponseFormat Text { get; } + ChatResponseFormat IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + ChatResponseFormat IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public class ChatTokenLogProbabilityInfo { + public class ChatTokenLogProbabilityInfo : IJsonModel, IPersistableModel { public float LogProbability { get; } public string Token { get; } public IReadOnlyList TopLogProbabilities { get; } public IReadOnlyList Utf8ByteValues { get; } + ChatTokenLogProbabilityInfo IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + ChatTokenLogProbabilityInfo IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public class ChatTokenTopLogProbabilityInfo { + public class ChatTokenTopLogProbabilityInfo : IJsonModel, IPersistableModel { public float LogProbability { get; } public string Token { get; } public IReadOnlyList Utf8ByteValues { get; } + ChatTokenTopLogProbabilityInfo IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + ChatTokenTopLogProbabilityInfo IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public class ChatTokenUsage { + public class ChatTokenUsage : IJsonModel, IPersistableModel { public int InputTokens { get; } public int OutputTokens { get; } public int TotalTokens { get; } + ChatTokenUsage IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + ChatTokenUsage IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public class ChatTool { + public class ChatTool : IJsonModel, IPersistableModel { public string FunctionDescription { get; } public string FunctionName { get; } public BinaryData FunctionParameters { get; } public ChatToolKind Kind { get; } public static ChatTool CreateFunctionTool(string functionName, string functionDescription = null, BinaryData functionParameters = null); + ChatTool IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + ChatTool IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public class ChatToolCall { + public class ChatToolCall : IJsonModel, IPersistableModel { public string FunctionArguments { get; } public string FunctionName { get; } public string Id { get; init; } public ChatToolCallKind Kind { get; } public static ChatToolCall CreateFunctionToolCall(string toolCallId, string functionName, string functionArguments); - } - public sealed class ChatToolCallKind { + ChatToolCall IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + ChatToolCall IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); + } + public readonly partial struct ChatToolCallKind : IEquatable { + private readonly object _dummy; + private readonly int _dummyPrimitive; public ChatToolCallKind(string value); public static ChatToolCallKind Function { get; } - public bool Equals(ChatToolCallKind other); - public override bool Equals(object obj); - public override int GetHashCode(); + public readonly bool Equals(ChatToolCallKind other); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly bool Equals(object obj); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly int GetHashCode(); public static bool operator ==(ChatToolCallKind left, ChatToolCallKind right); public static implicit operator ChatToolCallKind(string value); public static bool operator !=(ChatToolCallKind left, ChatToolCallKind right); - public override string ToString(); + public override readonly string ToString(); } - public class ChatToolChoice { + public class ChatToolChoice : IJsonModel, IPersistableModel { public ChatToolChoice(ChatTool tool); public static ChatToolChoice Auto { get; } public static ChatToolChoice None { get; } public static ChatToolChoice Required { get; } - } - public sealed class ChatToolKind { + ChatToolChoice IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + ChatToolChoice IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); + } + public readonly partial struct ChatToolKind : IEquatable { + private readonly object _dummy; + private readonly int _dummyPrimitive; public ChatToolKind(string value); public static ChatToolKind Function { get; } - public bool Equals(ChatToolKind other); - public override bool Equals(object obj); - public override int GetHashCode(); + public readonly bool Equals(ChatToolKind other); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly bool Equals(object obj); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly int GetHashCode(); public static bool operator ==(ChatToolKind left, ChatToolKind right); public static implicit operator ChatToolKind(string value); public static bool operator !=(ChatToolKind left, ChatToolKind right); - public override string ToString(); + public override readonly string ToString(); } - public class FunctionChatMessage : ChatMessage { + [Obsolete("This field is marked as deprecated.")] + public class FunctionChatMessage : ChatMessage, IJsonModel, IPersistableModel { public FunctionChatMessage(string functionName, string content = null); public string FunctionName { get; } + FunctionChatMessage IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + FunctionChatMessage IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); protected override void WriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options); } - public sealed class ImageChatMessageContentPartDetail { + public readonly partial struct ImageChatMessageContentPartDetail : IEquatable { + private readonly object _dummy; + private readonly int _dummyPrimitive; public ImageChatMessageContentPartDetail(string value); public static ImageChatMessageContentPartDetail Auto { get; } public static ImageChatMessageContentPartDetail High { get; } public static ImageChatMessageContentPartDetail Low { get; } - public bool Equals(ImageChatMessageContentPartDetail other); - public override bool Equals(object obj); - public override int GetHashCode(); + public readonly bool Equals(ImageChatMessageContentPartDetail other); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly bool Equals(object obj); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly int GetHashCode(); public static bool operator ==(ImageChatMessageContentPartDetail left, ImageChatMessageContentPartDetail right); public static implicit operator ImageChatMessageContentPartDetail(string value); public static bool operator !=(ImageChatMessageContentPartDetail left, ImageChatMessageContentPartDetail right); - public override string ToString(); + public override readonly string ToString(); } - public class StreamingChatCompletionUpdate { + public class StreamingChatCompletionUpdate : IJsonModel, IPersistableModel { public IReadOnlyList ContentTokenLogProbabilities { get; } public IReadOnlyList ContentUpdate { get; } public DateTimeOffset CreatedAt { get; } @@ -1085,40 +1485,75 @@ public class StreamingChatCompletionUpdate { public string SystemFingerprint { get; } public IReadOnlyList ToolCallUpdates { get; } public ChatTokenUsage Usage { get; } + StreamingChatCompletionUpdate IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + StreamingChatCompletionUpdate IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public class StreamingChatFunctionCallUpdate { + public class StreamingChatFunctionCallUpdate : IJsonModel, IPersistableModel { public string FunctionArgumentsUpdate { get; } public string FunctionName { get; } + StreamingChatFunctionCallUpdate IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + StreamingChatFunctionCallUpdate IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public class StreamingChatToolCallUpdate { + public class StreamingChatToolCallUpdate : IJsonModel, IPersistableModel { public string FunctionArgumentsUpdate { get; } public string FunctionName { get; } public string Id { get; } public int Index { get; } public ChatToolCallKind Kind { get; } + StreamingChatToolCallUpdate IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + StreamingChatToolCallUpdate IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public class SystemChatMessage : ChatMessage { + public class SystemChatMessage : ChatMessage, IJsonModel, IPersistableModel { public SystemChatMessage(string content); public string ParticipantName { get; init; } + SystemChatMessage IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + SystemChatMessage IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); protected override void WriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options); } - public class ToolChatMessage : ChatMessage { + public class ToolChatMessage : ChatMessage, IJsonModel, IPersistableModel { public ToolChatMessage(string toolCallId, string content); public string ToolCallId { get; } + ToolChatMessage IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + ToolChatMessage IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); protected override void WriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options); } - public class UserChatMessage : ChatMessage { + public class UserChatMessage : ChatMessage, IJsonModel, IPersistableModel { public UserChatMessage(params ChatMessageContentPart[] content); public UserChatMessage(IEnumerable content); public UserChatMessage(string content); public string ParticipantName { get; init; } + UserChatMessage IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + UserChatMessage IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); protected override void WriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options); } } namespace OpenAI.Embeddings { - public class Embedding { + public class Embedding : IJsonModel, IPersistableModel { public int Index { get; } public ReadOnlyMemory Vector { get; } + Embedding IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + Embedding IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } public class EmbeddingClient { protected EmbeddingClient(); @@ -1127,26 +1562,46 @@ public class EmbeddingClient { public EmbeddingClient(string model, ApiKeyCredential credential, OpenAIClientOptions options = null); public virtual ClientPipeline Pipeline { get; } public virtual ClientResult GenerateEmbedding(string input, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = default); + [Diagnostics.DebuggerStepThrough] public virtual Task> GenerateEmbeddingAsync(string input, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = default); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult GenerateEmbeddings(BinaryContent content, RequestOptions options = null); public virtual ClientResult GenerateEmbeddings(IEnumerable> inputs, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult GenerateEmbeddings(IEnumerable inputs, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = default); + [Diagnostics.DebuggerStepThrough] + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task GenerateEmbeddingsAsync(BinaryContent content, RequestOptions options = null); + [Diagnostics.DebuggerStepThrough] public virtual Task> GenerateEmbeddingsAsync(IEnumerable> inputs, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = default); + [Diagnostics.DebuggerStepThrough] public virtual Task> GenerateEmbeddingsAsync(IEnumerable inputs, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = default); } - public class EmbeddingCollection { + public class EmbeddingCollection : ObjectModel.ReadOnlyCollection, IJsonModel, IPersistableModel { public string Model { get; } public EmbeddingTokenUsage Usage { get; } + EmbeddingCollection IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + EmbeddingCollection IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public class EmbeddingGenerationOptions { - public EmbeddingGenerationOptions(); + public class EmbeddingGenerationOptions : IJsonModel, IPersistableModel { public int? Dimensions { get; init; } public string User { get; init; } + EmbeddingGenerationOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + EmbeddingGenerationOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public class EmbeddingTokenUsage { + public class EmbeddingTokenUsage : IJsonModel, IPersistableModel { public int InputTokens { get; } public int TotalTokens { get; } + EmbeddingTokenUsage IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + EmbeddingTokenUsage IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } } namespace OpenAI.Files { @@ -1156,65 +1611,75 @@ public class FileClient { public FileClient(ApiKeyCredential credential, OpenAIClientOptions options = null); protected internal FileClient(ClientPipeline pipeline, Uri endpoint, OpenAIClientOptions options); public virtual ClientPipeline Pipeline { get; } - public virtual IncrementalUploadJob CreateIncrementalUploadJob(BinaryContent content, RequestOptions options); - public virtual Task CreateIncrementalUploadJobAsync(BinaryContent content, RequestOptions options); public virtual ClientResult DeleteFile(OpenAIFileInfo file); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult DeleteFile(string fileId, RequestOptions options); public virtual ClientResult DeleteFile(string fileId, CancellationToken cancellationToken = default); public virtual Task> DeleteFileAsync(OpenAIFileInfo file); + [Diagnostics.DebuggerStepThrough] + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task DeleteFileAsync(string fileId, RequestOptions options); + [Diagnostics.DebuggerStepThrough] public virtual Task> DeleteFileAsync(string fileId, CancellationToken cancellationToken = default); public virtual ClientResult DownloadFile(OpenAIFileInfo file); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult DownloadFile(string fileId, RequestOptions options); public virtual ClientResult DownloadFile(string fileId, CancellationToken cancellationToken = default); public virtual Task> DownloadFileAsync(OpenAIFileInfo file); + [Diagnostics.DebuggerStepThrough] + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task DownloadFileAsync(string fileId, RequestOptions options); + [Diagnostics.DebuggerStepThrough] public virtual Task> DownloadFileAsync(string fileId, CancellationToken cancellationToken = default); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult GetFile(string fileId, RequestOptions options); public virtual ClientResult GetFile(string fileId, CancellationToken cancellationToken = default); + [Diagnostics.DebuggerStepThrough] + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task GetFileAsync(string fileId, RequestOptions options); + [Diagnostics.DebuggerStepThrough] public virtual Task> GetFileAsync(string fileId, CancellationToken cancellationToken = default); public virtual ClientResult GetFiles(OpenAIFilePurpose? purpose = null, CancellationToken cancellationToken = default); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult GetFiles(string purpose, RequestOptions options); + [Diagnostics.DebuggerStepThrough] public virtual Task> GetFilesAsync(OpenAIFilePurpose? purpose = null, CancellationToken cancellationToken = default); + [Diagnostics.DebuggerStepThrough] + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task GetFilesAsync(string purpose, RequestOptions options); public virtual ClientResult UploadFile(BinaryData file, string filename, FileUploadPurpose purpose); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult UploadFile(BinaryContent content, string contentType, RequestOptions options = null); public virtual ClientResult UploadFile(Stream file, string filename, FileUploadPurpose purpose, CancellationToken cancellationToken = default); public virtual ClientResult UploadFile(string filePath, FileUploadPurpose purpose); public virtual Task> UploadFileAsync(BinaryData file, string filename, FileUploadPurpose purpose); + [Diagnostics.DebuggerStepThrough] + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task UploadFileAsync(BinaryContent content, string contentType, RequestOptions options = null); + [Diagnostics.DebuggerStepThrough] public virtual Task> UploadFileAsync(Stream file, string filename, FileUploadPurpose purpose, CancellationToken cancellationToken = default); + [Diagnostics.DebuggerStepThrough] public virtual Task> UploadFileAsync(string filePath, FileUploadPurpose purpose); } - public sealed class FileUploadPurpose { + public readonly partial struct FileUploadPurpose : IEquatable { + private readonly object _dummy; + private readonly int _dummyPrimitive; public FileUploadPurpose(string value); public static FileUploadPurpose Assistants { get; } public static FileUploadPurpose Batch { get; } public static FileUploadPurpose FineTune { get; } public static FileUploadPurpose Vision { get; } - public bool Equals(FileUploadPurpose other); - public override bool Equals(object obj); - public override int GetHashCode(); + public readonly bool Equals(FileUploadPurpose other); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly bool Equals(object obj); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly int GetHashCode(); public static bool operator ==(FileUploadPurpose left, FileUploadPurpose right); public static implicit operator FileUploadPurpose(string value); public static bool operator !=(FileUploadPurpose left, FileUploadPurpose right); - public override string ToString(); + public override readonly string ToString(); } - public class IncrementalUploadJob { - public DateTimeOffset CreatedAt { get; } - public DateTimeOffset ExpiresAt { get; } - public string Id { get; } - public ContinuationToken RehydrationToken { get; } - public virtual ClientResult AddDataPart(string jobId, BinaryContent content, string contentType, RequestOptions options); - public virtual Task AddDataPartAsync(string jobId, BinaryContent content, string contentType, RequestOptions options); - public virtual ClientResult Cancel(string jobId, RequestOptions options); - public virtual Task CancelAsync(string jobId, RequestOptions options); - public virtual ClientResult Complete(string jobId, BinaryContent content, RequestOptions options); - public virtual Task CompleteAsync(string jobId, BinaryContent content, RequestOptions options); - public static IncrementalUploadJob Rehydrate(FileClient client, ContinuationToken rehydrationToken); - } - public class OpenAIFileInfo { + public class OpenAIFileInfo : IJsonModel, IPersistableModel { public DateTimeOffset CreatedAt { get; } public string Filename { get; } public string Id { get; } @@ -1222,10 +1687,22 @@ public class OpenAIFileInfo { public long? SizeInBytes { get; } public OpenAIFileStatus Status { get; } public string StatusDetails { get; } - } - public class OpenAIFileInfoCollection { - } - public sealed class OpenAIFilePurpose { + OpenAIFileInfo IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + OpenAIFileInfo IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); + } + public class OpenAIFileInfoCollection : ObjectModel.ReadOnlyCollection, IJsonModel, IPersistableModel { + OpenAIFileInfoCollection IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + OpenAIFileInfoCollection IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); + } + public readonly partial struct OpenAIFilePurpose : IEquatable { + private readonly object _dummy; + private readonly int _dummyPrimitive; public OpenAIFilePurpose(string value); public static OpenAIFilePurpose Assistants { get; } public static OpenAIFilePurpose AssistantsOutput { get; } @@ -1234,26 +1711,32 @@ public sealed class OpenAIFilePurpose { public static OpenAIFilePurpose FineTune { get; } public static OpenAIFilePurpose FineTuneResults { get; } public static OpenAIFilePurpose Vision { get; } - public bool Equals(OpenAIFilePurpose other); - public override bool Equals(object obj); - public override int GetHashCode(); + public readonly bool Equals(OpenAIFilePurpose other); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly bool Equals(object obj); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly int GetHashCode(); public static bool operator ==(OpenAIFilePurpose left, OpenAIFilePurpose right); public static implicit operator OpenAIFilePurpose(string value); public static bool operator !=(OpenAIFilePurpose left, OpenAIFilePurpose right); - public override string ToString(); + public override readonly string ToString(); } - public sealed class OpenAIFileStatus { + public readonly partial struct OpenAIFileStatus : IEquatable { + private readonly object _dummy; + private readonly int _dummyPrimitive; public OpenAIFileStatus(string value); public static OpenAIFileStatus Error { get; } public static OpenAIFileStatus Processed { get; } public static OpenAIFileStatus Uploaded { get; } - public bool Equals(OpenAIFileStatus other); - public override bool Equals(object obj); - public override int GetHashCode(); + public readonly bool Equals(OpenAIFileStatus other); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly bool Equals(object obj); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly int GetHashCode(); public static bool operator ==(OpenAIFileStatus left, OpenAIFileStatus right); public static implicit operator OpenAIFileStatus(string value); public static bool operator !=(OpenAIFileStatus left, OpenAIFileStatus right); - public override string ToString(); + public override readonly string ToString(); } } namespace OpenAI.FineTuning { @@ -1264,54 +1747,74 @@ public class FineTuningClient { protected internal FineTuningClient(ClientPipeline pipeline, Uri endpoint, OpenAIClientOptions options); public virtual ClientPipeline Pipeline { get; } public virtual ClientResult CancelJob(string jobId, RequestOptions options); + [Diagnostics.DebuggerStepThrough] public virtual Task CancelJobAsync(string jobId, RequestOptions options); public virtual ClientResult CreateJob(BinaryContent content, RequestOptions options = null); + [Diagnostics.DebuggerStepThrough] public virtual Task CreateJobAsync(BinaryContent content, RequestOptions options = null); public virtual ClientResult GetJob(string jobId, RequestOptions options); + [Diagnostics.DebuggerStepThrough] public virtual Task GetJobAsync(string jobId, RequestOptions options); public virtual ClientResult GetJobCheckpoints(string fineTuningJobId, string after, int? limit, RequestOptions options); + [Diagnostics.DebuggerStepThrough] public virtual Task GetJobCheckpointsAsync(string fineTuningJobId, string after, int? limit, RequestOptions options); public virtual ClientResult GetJobEvents(string jobId, string after, int? limit, RequestOptions options); + [Diagnostics.DebuggerStepThrough] public virtual Task GetJobEventsAsync(string jobId, string after, int? limit, RequestOptions options); public virtual ClientResult GetJobs(string after, int? limit, RequestOptions options); + [Diagnostics.DebuggerStepThrough] public virtual Task GetJobsAsync(string after, int? limit, RequestOptions options); } } namespace OpenAI.Images { - public class GeneratedImage { + public class GeneratedImage : IJsonModel, IPersistableModel { public BinaryData ImageBytes { get; } public Uri ImageUri { get; } public string RevisedPrompt { get; } + GeneratedImage IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + GeneratedImage IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public class GeneratedImageCollection { + public class GeneratedImageCollection : ObjectModel.ReadOnlyCollection, IJsonModel, IPersistableModel { public DateTimeOffset Created { get; } public DateTimeOffset CreatedAt { get; } - } - public sealed class GeneratedImageFormat { - public const GeneratedImageFormat Bytes = 0; - public const GeneratedImageFormat Uri = 1; - } - public sealed class GeneratedImageQuality { - public const GeneratedImageQuality High = 0; - public const GeneratedImageQuality Standard = 1; - } - public sealed class GeneratedImageSize { + GeneratedImageCollection IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + GeneratedImageCollection IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); + } + public enum GeneratedImageFormat { + Bytes = 0, + Uri = 1 + } + public enum GeneratedImageQuality { + High = 0, + Standard = 1 + } + public readonly partial struct GeneratedImageSize : IEquatable { + private readonly object _dummy; + private readonly int _dummyPrimitive; public static readonly GeneratedImageSize W1024xH1024; public static readonly GeneratedImageSize W1024xH1792; public static readonly GeneratedImageSize W1792xH1024; public static readonly GeneratedImageSize W256xH256; public static readonly GeneratedImageSize W512xH512; public GeneratedImageSize(int width, int height); - public bool Equals(GeneratedImageSize other); - public override bool Equals(object obj); - public override int GetHashCode(); + public readonly bool Equals(GeneratedImageSize other); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly bool Equals(object obj); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly int GetHashCode(); public static bool operator ==(GeneratedImageSize left, GeneratedImageSize right); public static bool operator !=(GeneratedImageSize left, GeneratedImageSize right); - public override string ToString(); + public override readonly string ToString(); } - public sealed class GeneratedImageStyle { - public const GeneratedImageStyle Natural = 1; - public const GeneratedImageStyle Vivid = 0; + public enum GeneratedImageStyle { + Vivid = 0, + Natural = 1 } public class ImageClient { protected ImageClient(); @@ -1320,59 +1823,94 @@ public class ImageClient { public ImageClient(string model, ApiKeyCredential credential, OpenAIClientOptions options = null); public virtual ClientPipeline Pipeline { get; } public virtual ClientResult GenerateImage(string prompt, ImageGenerationOptions options = null, CancellationToken cancellationToken = default); + [Diagnostics.DebuggerStepThrough] public virtual Task> GenerateImageAsync(string prompt, ImageGenerationOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult GenerateImageEdit(Stream image, string imageFilename, string prompt, ImageEditOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult GenerateImageEdit(Stream image, string imageFilename, string prompt, Stream mask, string maskFilename, ImageEditOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult GenerateImageEdit(string imageFilePath, string prompt, ImageEditOptions options = null); public virtual ClientResult GenerateImageEdit(string imageFilePath, string prompt, string maskFilePath, ImageEditOptions options = null); + [Diagnostics.DebuggerStepThrough] public virtual Task> GenerateImageEditAsync(Stream image, string imageFilename, string prompt, ImageEditOptions options = null, CancellationToken cancellationToken = default); + [Diagnostics.DebuggerStepThrough] public virtual Task> GenerateImageEditAsync(Stream image, string imageFilename, string prompt, Stream mask, string maskFilename, ImageEditOptions options = null, CancellationToken cancellationToken = default); + [Diagnostics.DebuggerStepThrough] public virtual Task> GenerateImageEditAsync(string imageFilePath, string prompt, ImageEditOptions options = null); + [Diagnostics.DebuggerStepThrough] public virtual Task> GenerateImageEditAsync(string imageFilePath, string prompt, string maskFilePath, ImageEditOptions options = null); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult GenerateImageEdits(BinaryContent content, string contentType, RequestOptions options = null); public virtual ClientResult GenerateImageEdits(Stream image, string imageFilename, string prompt, int imageCount, ImageEditOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult GenerateImageEdits(Stream image, string imageFilename, string prompt, Stream mask, string maskFilename, int imageCount, ImageEditOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult GenerateImageEdits(string imageFilePath, string prompt, int imageCount, ImageEditOptions options = null); public virtual ClientResult GenerateImageEdits(string imageFilePath, string prompt, string maskFilePath, int imageCount, ImageEditOptions options = null); + [Diagnostics.DebuggerStepThrough] + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task GenerateImageEditsAsync(BinaryContent content, string contentType, RequestOptions options = null); + [Diagnostics.DebuggerStepThrough] public virtual Task> GenerateImageEditsAsync(Stream image, string imageFilename, string prompt, int imageCount, ImageEditOptions options = null, CancellationToken cancellationToken = default); + [Diagnostics.DebuggerStepThrough] public virtual Task> GenerateImageEditsAsync(Stream image, string imageFilename, string prompt, Stream mask, string maskFilename, int imageCount, ImageEditOptions options = null, CancellationToken cancellationToken = default); + [Diagnostics.DebuggerStepThrough] public virtual Task> GenerateImageEditsAsync(string imageFilePath, string prompt, int imageCount, ImageEditOptions options = null); + [Diagnostics.DebuggerStepThrough] public virtual Task> GenerateImageEditsAsync(string imageFilePath, string prompt, string maskFilePath, int imageCount, ImageEditOptions options = null); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult GenerateImages(BinaryContent content, RequestOptions options = null); public virtual ClientResult GenerateImages(string prompt, int imageCount, ImageGenerationOptions options = null, CancellationToken cancellationToken = default); + [Diagnostics.DebuggerStepThrough] + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task GenerateImagesAsync(BinaryContent content, RequestOptions options = null); + [Diagnostics.DebuggerStepThrough] public virtual Task> GenerateImagesAsync(string prompt, int imageCount, ImageGenerationOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult GenerateImageVariation(Stream image, string imageFilename, ImageVariationOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult GenerateImageVariation(string imageFilePath, ImageVariationOptions options = null); + [Diagnostics.DebuggerStepThrough] public virtual Task> GenerateImageVariationAsync(Stream image, string imageFilename, ImageVariationOptions options = null, CancellationToken cancellationToken = default); + [Diagnostics.DebuggerStepThrough] public virtual Task> GenerateImageVariationAsync(string imageFilePath, ImageVariationOptions options = null); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult GenerateImageVariations(BinaryContent content, string contentType, RequestOptions options = null); public virtual ClientResult GenerateImageVariations(Stream image, string imageFilename, int imageCount, ImageVariationOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult GenerateImageVariations(string imageFilePath, int imageCount, ImageVariationOptions options = null); + [Diagnostics.DebuggerStepThrough] + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task GenerateImageVariationsAsync(BinaryContent content, string contentType, RequestOptions options = null); + [Diagnostics.DebuggerStepThrough] public virtual Task> GenerateImageVariationsAsync(Stream image, string imageFilename, int imageCount, ImageVariationOptions options = null, CancellationToken cancellationToken = default); + [Diagnostics.DebuggerStepThrough] public virtual Task> GenerateImageVariationsAsync(string imageFilePath, int imageCount, ImageVariationOptions options = null); } - public class ImageEditOptions { - public ImageEditOptions(); + public class ImageEditOptions : IJsonModel, IPersistableModel { public GeneratedImageFormat? ResponseFormat { get; init; } public GeneratedImageSize? Size { get; init; } public string User { get; init; } + ImageEditOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + ImageEditOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public class ImageGenerationOptions { - public ImageGenerationOptions(); + public class ImageGenerationOptions : IJsonModel, IPersistableModel { public GeneratedImageQuality? Quality { get; init; } public GeneratedImageFormat? ResponseFormat { get; init; } public GeneratedImageSize? Size { get; init; } public GeneratedImageStyle? Style { get; init; } public string User { get; init; } + ImageGenerationOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + ImageGenerationOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public class ImageVariationOptions { - public ImageVariationOptions(); + public class ImageVariationOptions : IJsonModel, IPersistableModel { public GeneratedImageFormat? ResponseFormat { get; init; } public GeneratedImageSize? Size { get; init; } public string User { get; init; } + ImageVariationOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + ImageVariationOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } } namespace OpenAI.Models { @@ -1382,29 +1920,51 @@ public class ModelClient { public ModelClient(ApiKeyCredential credential, OpenAIClientOptions options = null); protected internal ModelClient(ClientPipeline pipeline, Uri endpoint, OpenAIClientOptions options); public virtual ClientPipeline Pipeline { get; } + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult DeleteModel(string model, RequestOptions options); public virtual ClientResult DeleteModel(string model); + [Diagnostics.DebuggerStepThrough] + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task DeleteModelAsync(string model, RequestOptions options); + [Diagnostics.DebuggerStepThrough] public virtual Task> DeleteModelAsync(string model); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult GetModel(string model, RequestOptions options); public virtual ClientResult GetModel(string model); + [Diagnostics.DebuggerStepThrough] + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task GetModelAsync(string model, RequestOptions options); + [Diagnostics.DebuggerStepThrough] public virtual Task> GetModelAsync(string model); public virtual ClientResult GetModels(); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult GetModels(RequestOptions options); + [Diagnostics.DebuggerStepThrough] public virtual Task> GetModelsAsync(); + [Diagnostics.DebuggerStepThrough] + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task GetModelsAsync(RequestOptions options); } - public class OpenAIModelInfo { + public class OpenAIModelInfo : IJsonModel, IPersistableModel { public DateTimeOffset CreatedAt { get; } public string Id { get; } public string OwnedBy { get; } - } - public class OpenAIModelInfoCollection { + OpenAIModelInfo IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + OpenAIModelInfo IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); + } + public class OpenAIModelInfoCollection : ObjectModel.ReadOnlyCollection, IJsonModel, IPersistableModel { + OpenAIModelInfoCollection IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + OpenAIModelInfoCollection IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } } namespace OpenAI.Moderations { - public class ModerationCategories { + public class ModerationCategories : IJsonModel, IPersistableModel { public bool Harassment { get; } public bool HarassmentThreatening { get; } public bool Hate { get; } @@ -1416,8 +1976,13 @@ public class ModerationCategories { public bool SexualMinors { get; } public bool Violence { get; } public bool ViolenceGraphic { get; } + ModerationCategories IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + ModerationCategories IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public class ModerationCategoryScores { + public class ModerationCategoryScores : IJsonModel, IPersistableModel { public float Harassment { get; } public float HarassmentThreatening { get; } public float Hate { get; } @@ -1429,6 +1994,11 @@ public class ModerationCategoryScores { public float SexualMinors { get; } public float Violence { get; } public float ViolenceGraphic { get; } + ModerationCategoryScores IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + ModerationCategoryScores IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } public class ModerationClient { protected ModerationClient(); @@ -1437,35 +2007,59 @@ public class ModerationClient { public ModerationClient(string model, ApiKeyCredential credential, OpenAIClientOptions options = null); public virtual ClientPipeline Pipeline { get; } public virtual ClientResult ClassifyTextInput(string input, CancellationToken cancellationToken = default); + [Diagnostics.DebuggerStepThrough] public virtual Task> ClassifyTextInputAsync(string input, CancellationToken cancellationToken = default); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult ClassifyTextInputs(BinaryContent content, RequestOptions options = null); public virtual ClientResult ClassifyTextInputs(IEnumerable inputs, CancellationToken cancellationToken = default); + [Diagnostics.DebuggerStepThrough] + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task ClassifyTextInputsAsync(BinaryContent content, RequestOptions options = null); + [Diagnostics.DebuggerStepThrough] public virtual Task> ClassifyTextInputsAsync(IEnumerable inputs, CancellationToken cancellationToken = default); } - public class ModerationCollection { + public class ModerationCollection : ObjectModel.ReadOnlyCollection, IJsonModel, IPersistableModel { public string Id { get; } public string Model { get; } + ModerationCollection IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + ModerationCollection IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public class ModerationResult { + public class ModerationResult : IJsonModel, IPersistableModel { public ModerationCategories Categories { get; } public ModerationCategoryScores CategoryScores { get; } public bool Flagged { get; } + ModerationResult IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + ModerationResult IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } } namespace OpenAI.VectorStores { - public abstract class FileChunkingStrategy { - protected FileChunkingStrategy(); + public abstract class FileChunkingStrategy : IJsonModel, IPersistableModel { public static FileChunkingStrategy Auto { get; } public static FileChunkingStrategy Unknown { get; } public static FileChunkingStrategy CreateStaticStrategy(int maxTokensPerChunk, int overlappingTokenCount); + FileChunkingStrategy IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + FileChunkingStrategy IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public class StaticFileChunkingStrategy : FileChunkingStrategy { + public class StaticFileChunkingStrategy : FileChunkingStrategy, IJsonModel, IPersistableModel { public StaticFileChunkingStrategy(int maxTokensPerChunk, int overlappingTokenCount); public int MaxTokensPerChunk { get; } public int OverlappingTokenCount { get; } + StaticFileChunkingStrategy IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + StaticFileChunkingStrategy IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public class VectorStore { + public class VectorStore : IJsonModel, IPersistableModel { public DateTimeOffset CreatedAt { get; } public VectorStoreExpirationPolicy ExpirationPolicy { get; } public DateTimeOffset? ExpiresAt { get; } @@ -1476,27 +2070,41 @@ public class VectorStore { public string Name { get; } public VectorStoreStatus Status { get; } public int UsageBytes { get; } + VectorStore IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + VectorStore IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public class VectorStoreBatchFileJob { + public class VectorStoreBatchFileJob : IJsonModel, IPersistableModel { public string BatchId { get; } public DateTimeOffset CreatedAt { get; } public VectorStoreFileCounts FileCounts { get; } public VectorStoreBatchFileJobStatus Status { get; } public string VectorStoreId { get; } - } - public sealed class VectorStoreBatchFileJobStatus { + VectorStoreBatchFileJob IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + VectorStoreBatchFileJob IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); + } + public readonly partial struct VectorStoreBatchFileJobStatus : IEquatable { + private readonly object _dummy; + private readonly int _dummyPrimitive; public VectorStoreBatchFileJobStatus(string value); public static VectorStoreBatchFileJobStatus Cancelled { get; } public static VectorStoreBatchFileJobStatus Completed { get; } public static VectorStoreBatchFileJobStatus Failed { get; } public static VectorStoreBatchFileJobStatus InProgress { get; } - public bool Equals(VectorStoreBatchFileJobStatus other); - public override bool Equals(object obj); - public override int GetHashCode(); + public readonly bool Equals(VectorStoreBatchFileJobStatus other); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly bool Equals(object obj); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly int GetHashCode(); public static bool operator ==(VectorStoreBatchFileJobStatus left, VectorStoreBatchFileJobStatus right); public static implicit operator VectorStoreBatchFileJobStatus(string value); public static bool operator !=(VectorStoreBatchFileJobStatus left, VectorStoreBatchFileJobStatus right); - public override string ToString(); + public override readonly string ToString(); } public class VectorStoreClient { protected VectorStoreClient(); @@ -1505,112 +2113,156 @@ public class VectorStoreClient { protected internal VectorStoreClient(ClientPipeline pipeline, Uri endpoint, OpenAIClientOptions options); public virtual ClientPipeline Pipeline { get; } public virtual ClientResult AddFileToVectorStore(VectorStore vectorStore, Files.OpenAIFileInfo file); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult AddFileToVectorStore(string vectorStoreId, BinaryContent content, RequestOptions options = null); public virtual ClientResult AddFileToVectorStore(string vectorStoreId, string fileId, CancellationToken cancellationToken = default); public virtual Task> AddFileToVectorStoreAsync(VectorStore vectorStore, Files.OpenAIFileInfo file); + [Diagnostics.DebuggerStepThrough] + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task AddFileToVectorStoreAsync(string vectorStoreId, BinaryContent content, RequestOptions options = null); + [Diagnostics.DebuggerStepThrough] public virtual Task> AddFileToVectorStoreAsync(string vectorStoreId, string fileId, CancellationToken cancellationToken = default); public virtual ClientResult CancelBatchFileJob(VectorStoreBatchFileJob batchJob); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult CancelBatchFileJob(string vectorStoreId, string batchId, RequestOptions options); public virtual ClientResult CancelBatchFileJob(string vectorStoreId, string batchJobId, CancellationToken cancellationToken = default); public virtual Task> CancelBatchFileJobAsync(VectorStoreBatchFileJob batchJob); + [Diagnostics.DebuggerStepThrough] + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task CancelBatchFileJobAsync(string vectorStoreId, string batchId, RequestOptions options); + [Diagnostics.DebuggerStepThrough] public virtual Task> CancelBatchFileJobAsync(string vectorStoreId, string batchJobId, CancellationToken cancellationToken = default); public virtual ClientResult CreateBatchFileJob(VectorStore vectorStore, IEnumerable files); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult CreateBatchFileJob(string vectorStoreId, BinaryContent content, RequestOptions options = null); public virtual ClientResult CreateBatchFileJob(string vectorStoreId, IEnumerable fileIds, CancellationToken cancellationToken = default); public virtual Task> CreateBatchFileJobAsync(VectorStore vectorStore, IEnumerable files); + [Diagnostics.DebuggerStepThrough] + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task CreateBatchFileJobAsync(string vectorStoreId, BinaryContent content, RequestOptions options = null); + [Diagnostics.DebuggerStepThrough] public virtual Task> CreateBatchFileJobAsync(string vectorStoreId, IEnumerable fileIds, CancellationToken cancellationToken = default); public virtual ClientResult CreateVectorStore(VectorStoreCreationOptions vectorStore = null, CancellationToken cancellationToken = default); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult CreateVectorStore(BinaryContent content, RequestOptions options = null); + [Diagnostics.DebuggerStepThrough] public virtual Task> CreateVectorStoreAsync(VectorStoreCreationOptions vectorStore = null, CancellationToken cancellationToken = default); + [Diagnostics.DebuggerStepThrough] public virtual Task CreateVectorStoreAsync(BinaryContent content, RequestOptions options = null); public virtual ClientResult DeleteVectorStore(VectorStore vectorStore); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult DeleteVectorStore(string vectorStoreId, RequestOptions options); public virtual ClientResult DeleteVectorStore(string vectorStoreId, CancellationToken cancellationToken = default); public virtual Task> DeleteVectorStoreAsync(VectorStore vectorStore); + [Diagnostics.DebuggerStepThrough] + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task DeleteVectorStoreAsync(string vectorStoreId, RequestOptions options); + [Diagnostics.DebuggerStepThrough] public virtual Task> DeleteVectorStoreAsync(string vectorStoreId, CancellationToken cancellationToken = default); public virtual ClientResult GetBatchFileJob(VectorStoreBatchFileJob batchJob); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult GetBatchFileJob(string vectorStoreId, string batchId, RequestOptions options); public virtual ClientResult GetBatchFileJob(string vectorStoreId, string batchJobId, CancellationToken cancellationToken = default); public virtual Task> GetBatchFileJobAsync(VectorStoreBatchFileJob batchJob); + [Diagnostics.DebuggerStepThrough] + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task GetBatchFileJobAsync(string vectorStoreId, string batchId, RequestOptions options); + [Diagnostics.DebuggerStepThrough] public virtual Task> GetBatchFileJobAsync(string vectorStoreId, string batchJobId, CancellationToken cancellationToken = default); public virtual ClientResult GetFileAssociation(VectorStore vectorStore, Files.OpenAIFileInfo file); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult GetFileAssociation(string vectorStoreId, string fileId, RequestOptions options); public virtual ClientResult GetFileAssociation(string vectorStoreId, string fileId, CancellationToken cancellationToken = default); public virtual Task> GetFileAssociationAsync(VectorStore vectorStore, Files.OpenAIFileInfo file); + [Diagnostics.DebuggerStepThrough] + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task GetFileAssociationAsync(string vectorStoreId, string fileId, RequestOptions options); + [Diagnostics.DebuggerStepThrough] public virtual Task> GetFileAssociationAsync(string vectorStoreId, string fileId, CancellationToken cancellationToken = default); - public virtual PageCollection GetFileAssociations(VectorStore vectorStore, VectorStoreFileAssociationCollectionOptions options = null); - public virtual PageCollection GetFileAssociations(VectorStoreBatchFileJob batchJob, VectorStoreFileAssociationCollectionOptions options = null); - public virtual PageCollection GetFileAssociations(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); - public virtual PageCollection GetFileAssociations(string vectorStoreId, VectorStoreFileAssociationCollectionOptions options = null, CancellationToken cancellationToken = default); - public virtual IEnumerable GetFileAssociations(string vectorStoreId, int? limit, string order, string after, string before, string filter, RequestOptions options); - public virtual PageCollection GetFileAssociations(string vectorStoreId, string batchJobId, VectorStoreFileAssociationCollectionOptions options = null, CancellationToken cancellationToken = default); - public virtual PageCollection GetFileAssociations(string vectorStoreId, string batchJobId, ContinuationToken firstPageToken, CancellationToken cancellationToken = default); - public virtual IEnumerable GetFileAssociations(string vectorStoreId, string batchId, int? limit, string order, string after, string before, string filter, RequestOptions options); - public virtual AsyncPageCollection GetFileAssociationsAsync(VectorStore vectorStore, VectorStoreFileAssociationCollectionOptions options = null); - public virtual AsyncPageCollection GetFileAssociationsAsync(VectorStoreBatchFileJob batchJob, VectorStoreFileAssociationCollectionOptions options = null); - public virtual AsyncPageCollection GetFileAssociationsAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); - public virtual AsyncPageCollection GetFileAssociationsAsync(string vectorStoreId, VectorStoreFileAssociationCollectionOptions options = null, CancellationToken cancellationToken = default); - public virtual IAsyncEnumerable GetFileAssociationsAsync(string vectorStoreId, int? limit, string order, string after, string before, string filter, RequestOptions options); - public virtual AsyncPageCollection GetFileAssociationsAsync(string vectorStoreId, string batchJobId, VectorStoreFileAssociationCollectionOptions options = null, CancellationToken cancellationToken = default); - public virtual AsyncPageCollection GetFileAssociationsAsync(string vectorStoreId, string batchJobId, ContinuationToken firstPageToken, CancellationToken cancellationToken = default); - public virtual IAsyncEnumerable GetFileAssociationsAsync(string vectorStoreId, string batchId, int? limit, string order, string after, string before, string filter, RequestOptions options); + public virtual PageableCollection GetFileAssociations(VectorStore vectorStore, ListOrder? resultOrder = null, VectorStoreFileStatusFilter? filter = null); + public virtual PageableCollection GetFileAssociations(VectorStoreBatchFileJob batchJob, ListOrder? resultOrder = null, VectorStoreFileStatusFilter? filter = null); + public virtual PageableCollection GetFileAssociations(string vectorStoreId, ListOrder? resultOrder = null, VectorStoreFileStatusFilter? filter = null, CancellationToken cancellationToken = default); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public virtual ClientResult GetFileAssociations(string vectorStoreId, int? limit, string order, string after, string before, string filter, RequestOptions options); + public virtual PageableCollection GetFileAssociations(string vectorStoreId, string batchJobId, ListOrder? resultOrder = null, VectorStoreFileStatusFilter? filter = null, CancellationToken cancellationToken = default); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public virtual ClientResult GetFileAssociations(string vectorStoreId, string batchId, int? limit, string order, string after, string before, string filter, RequestOptions options); + public virtual AsyncPageableCollection GetFileAssociationsAsync(VectorStore vectorStore, ListOrder? resultOrder = null, VectorStoreFileStatusFilter? filter = null); + public virtual AsyncPageableCollection GetFileAssociationsAsync(VectorStoreBatchFileJob batchJob, ListOrder? resultOrder = null, VectorStoreFileStatusFilter? filter = null); + public virtual AsyncPageableCollection GetFileAssociationsAsync(string vectorStoreId, ListOrder? resultOrder = null, VectorStoreFileStatusFilter? filter = null, CancellationToken cancellationToken = default); + [Diagnostics.DebuggerStepThrough] + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public virtual Task GetFileAssociationsAsync(string vectorStoreId, int? limit, string order, string after, string before, string filter, RequestOptions options); + public virtual AsyncPageableCollection GetFileAssociationsAsync(string vectorStoreId, string batchJobId, ListOrder? resultOrder = null, VectorStoreFileStatusFilter? filter = null, CancellationToken cancellationToken = default); + [Diagnostics.DebuggerStepThrough] + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public virtual Task GetFileAssociationsAsync(string vectorStoreId, string batchId, int? limit, string order, string after, string before, string filter, RequestOptions options); public virtual ClientResult GetVectorStore(VectorStore vectorStore); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult GetVectorStore(string vectorStoreId, RequestOptions options); public virtual ClientResult GetVectorStore(string vectorStoreId, CancellationToken cancellationToken = default); public virtual Task> GetVectorStoreAsync(VectorStore vectorStore); + [Diagnostics.DebuggerStepThrough] + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task GetVectorStoreAsync(string vectorStoreId, RequestOptions options); + [Diagnostics.DebuggerStepThrough] public virtual Task> GetVectorStoreAsync(string vectorStoreId, CancellationToken cancellationToken = default); - public virtual PageCollection GetVectorStores(VectorStoreCollectionOptions options = null, CancellationToken cancellationToken = default); - public virtual PageCollection GetVectorStores(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); - public virtual IEnumerable GetVectorStores(int? limit, string order, string after, string before, RequestOptions options); - public virtual AsyncPageCollection GetVectorStoresAsync(VectorStoreCollectionOptions options = null, CancellationToken cancellationToken = default); - public virtual AsyncPageCollection GetVectorStoresAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); - public virtual IAsyncEnumerable GetVectorStoresAsync(int? limit, string order, string after, string before, RequestOptions options); + public virtual PageableCollection GetVectorStores(ListOrder? resultOrder = null, CancellationToken cancellationToken = default); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public virtual ClientResult GetVectorStores(int? limit, string order, string after, string before, RequestOptions options); + public virtual AsyncPageableCollection GetVectorStoresAsync(ListOrder? resultOrder = null, CancellationToken cancellationToken = default); + [Diagnostics.DebuggerStepThrough] + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public virtual Task GetVectorStoresAsync(int? limit, string order, string after, string before, RequestOptions options); public virtual ClientResult ModifyVectorStore(VectorStore vectorStore, VectorStoreModificationOptions options); public virtual ClientResult ModifyVectorStore(string vectorStoreId, VectorStoreModificationOptions vectorStore, CancellationToken cancellationToken = default); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult ModifyVectorStore(string vectorStoreId, BinaryContent content, RequestOptions options = null); public virtual Task> ModifyVectorStoreAsync(VectorStore vectorStore, VectorStoreModificationOptions options); + [Diagnostics.DebuggerStepThrough] public virtual Task> ModifyVectorStoreAsync(string vectorStoreId, VectorStoreModificationOptions vectorStore, CancellationToken cancellationToken = default); + [Diagnostics.DebuggerStepThrough] + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task ModifyVectorStoreAsync(string vectorStoreId, BinaryContent content, RequestOptions options = null); public virtual ClientResult RemoveFileFromStore(VectorStore vectorStore, Files.OpenAIFileInfo file); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult RemoveFileFromStore(string vectorStoreId, string fileId, RequestOptions options); public virtual ClientResult RemoveFileFromStore(string vectorStoreId, string fileId, CancellationToken cancellationToken = default); public virtual Task> RemoveFileFromStoreAsync(VectorStore vectorStore, Files.OpenAIFileInfo file); + [Diagnostics.DebuggerStepThrough] + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task RemoveFileFromStoreAsync(string vectorStoreId, string fileId, RequestOptions options); + [Diagnostics.DebuggerStepThrough] public virtual Task> RemoveFileFromStoreAsync(string vectorStoreId, string fileId, CancellationToken cancellationToken = default); } - public class VectorStoreCollectionOptions { - public VectorStoreCollectionOptions(); - public string AfterId { get; init; } - public string BeforeId { get; init; } - public ListOrder? Order { get; init; } - public int? PageSize { get; init; } - } - public class VectorStoreCreationOptions { - public VectorStoreCreationOptions(); + public class VectorStoreCreationOptions : IJsonModel, IPersistableModel { public FileChunkingStrategy ChunkingStrategy { get; init; } public VectorStoreExpirationPolicy ExpirationPolicy { get; init; } public IList FileIds { get; init; } public IDictionary Metadata { get; } public string Name { get; init; } + VectorStoreCreationOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + VectorStoreCreationOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public sealed class VectorStoreExpirationAnchor { - public const VectorStoreExpirationAnchor LastActiveAt = 1; - public const VectorStoreExpirationAnchor Unknown = 0; + public enum VectorStoreExpirationAnchor { + Unknown = 0, + LastActiveAt = 1 } - public class VectorStoreExpirationPolicy { + public class VectorStoreExpirationPolicy : IJsonModel, IPersistableModel { public VectorStoreExpirationPolicy(); public VectorStoreExpirationPolicy(VectorStoreExpirationAnchor anchor, int days); public required VectorStoreExpirationAnchor Anchor { get; init; } public required int Days { get; init; } + VectorStoreExpirationPolicy IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + VectorStoreExpirationPolicy IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public class VectorStoreFileAssociation { + public class VectorStoreFileAssociation : IJsonModel, IPersistableModel { public FileChunkingStrategy ChunkingStrategy { get; } public DateTimeOffset CreatedAt { get; } public string FileId { get; } @@ -1618,73 +2270,104 @@ public class VectorStoreFileAssociation { public int Size { get; } public VectorStoreFileAssociationStatus Status { get; } public string VectorStoreId { get; } - } - public class VectorStoreFileAssociationCollectionOptions { - public VectorStoreFileAssociationCollectionOptions(); - public string AfterId { get; init; } - public string BeforeId { get; init; } - public VectorStoreFileStatusFilter? Filter { get; init; } - public ListOrder? Order { get; init; } - public int? PageSize { get; init; } - } - public sealed class VectorStoreFileAssociationError { - public VectorStoreFileAssociationError(); + VectorStoreFileAssociation IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + VectorStoreFileAssociation IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); + } + public readonly partial struct VectorStoreFileAssociationError : IJsonModel, IPersistableModel, IJsonModel, IPersistableModel { + private readonly object _dummy; + private readonly int _dummyPrimitive; public VectorStoreFileAssociationErrorCode Code { get; } public string Message { get; } - } - public sealed class VectorStoreFileAssociationErrorCode { + readonly VectorStoreFileAssociationError IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + readonly void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + readonly object IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + readonly void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + readonly VectorStoreFileAssociationError IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + readonly string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + readonly BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); + readonly object IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + readonly string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + readonly BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); + } + public readonly partial struct VectorStoreFileAssociationErrorCode : IEquatable { + private readonly object _dummy; + private readonly int _dummyPrimitive; public VectorStoreFileAssociationErrorCode(string value); public static VectorStoreFileAssociationErrorCode FileNotFound { get; } public static VectorStoreFileAssociationErrorCode InternalError { get; } public static VectorStoreFileAssociationErrorCode ParsingError { get; } public static VectorStoreFileAssociationErrorCode UnhandledMimeType { get; } - public bool Equals(VectorStoreFileAssociationErrorCode other); - public override bool Equals(object obj); - public override int GetHashCode(); + public readonly bool Equals(VectorStoreFileAssociationErrorCode other); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly bool Equals(object obj); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly int GetHashCode(); public static bool operator ==(VectorStoreFileAssociationErrorCode left, VectorStoreFileAssociationErrorCode right); public static implicit operator VectorStoreFileAssociationErrorCode(string value); public static bool operator !=(VectorStoreFileAssociationErrorCode left, VectorStoreFileAssociationErrorCode right); - public override string ToString(); - } - public sealed class VectorStoreFileAssociationStatus { - public const VectorStoreFileAssociationStatus Cancelled = 3; - public const VectorStoreFileAssociationStatus Completed = 2; - public const VectorStoreFileAssociationStatus Failed = 4; - public const VectorStoreFileAssociationStatus InProgress = 1; - public const VectorStoreFileAssociationStatus Unknown = 0; - } - public sealed class VectorStoreFileCounts { - public VectorStoreFileCounts(); + public override readonly string ToString(); + } + public enum VectorStoreFileAssociationStatus { + Unknown = 0, + InProgress = 1, + Completed = 2, + Cancelled = 3, + Failed = 4 + } + public readonly partial struct VectorStoreFileCounts : IJsonModel, IPersistableModel, IJsonModel, IPersistableModel { + private readonly object _dummy; + private readonly int _dummyPrimitive; public int Cancelled { get; } public int Completed { get; } public int Failed { get; } public int InProgress { get; } public int Total { get; } - } - public sealed class VectorStoreFileStatusFilter { + readonly VectorStoreFileCounts IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + readonly void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + readonly object IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + readonly void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + readonly VectorStoreFileCounts IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + readonly string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + readonly BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); + readonly object IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + readonly string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + readonly BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); + } + public readonly partial struct VectorStoreFileStatusFilter : IEquatable { + private readonly object _dummy; + private readonly int _dummyPrimitive; public VectorStoreFileStatusFilter(string value); public static VectorStoreFileStatusFilter Cancelled { get; } public static VectorStoreFileStatusFilter Completed { get; } public static VectorStoreFileStatusFilter Failed { get; } public static VectorStoreFileStatusFilter InProgress { get; } - public bool Equals(VectorStoreFileStatusFilter other); - public override bool Equals(object obj); - public override int GetHashCode(); + public readonly bool Equals(VectorStoreFileStatusFilter other); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly bool Equals(object obj); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly int GetHashCode(); public static bool operator ==(VectorStoreFileStatusFilter left, VectorStoreFileStatusFilter right); public static implicit operator VectorStoreFileStatusFilter(string value); public static bool operator !=(VectorStoreFileStatusFilter left, VectorStoreFileStatusFilter right); - public override string ToString(); + public override readonly string ToString(); } - public class VectorStoreModificationOptions { - public VectorStoreModificationOptions(); + public class VectorStoreModificationOptions : IJsonModel, IPersistableModel { public VectorStoreExpirationPolicy ExpirationPolicy { get; init; } public IDictionary Metadata { get; } public string Name { get; init; } - } - public sealed class VectorStoreStatus { - public const VectorStoreStatus Completed = 2; - public const VectorStoreStatus Expired = 3; - public const VectorStoreStatus InProgress = 1; - public const VectorStoreStatus Unknown = 0; + VectorStoreModificationOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + VectorStoreModificationOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); + } + public enum VectorStoreStatus { + Unknown = 0, + InProgress = 1, + Completed = 2, + Expired = 3 } } \ No newline at end of file diff --git a/.dotnet/api/api.md b/.dotnet/api/api.md index fa4af620d..f1293eecc 100644 --- a/.dotnet/api/api.md +++ b/.dotnet/api/api.md @@ -1,16 +1,20 @@ ```csharp namespace OpenAI { - public sealed class ListOrder { + public readonly partial struct ListOrder : IEquatable { + private readonly object _dummy; + private readonly int _dummyPrimitive; public ListOrder(string value); public static ListOrder NewestFirst { get; } public static ListOrder OldestFirst { get; } - public bool Equals(ListOrder other); - public override bool Equals(object obj); - public override int GetHashCode(); + public readonly bool Equals(ListOrder other); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly bool Equals(object obj); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly int GetHashCode(); public static bool operator ==(ListOrder left, ListOrder right); public static implicit operator ListOrder(string value); public static bool operator !=(ListOrder left, ListOrder right); - public override string ToString(); + public override readonly string ToString(); } public class OpenAIClient { protected OpenAIClient(); @@ -31,8 +35,7 @@ namespace OpenAI { public virtual ModerationClient GetModerationClient(string model); public virtual VectorStoreClient GetVectorStoreClient(); } - public class OpenAIClientOptions { - public OpenAIClientOptions(); + public class OpenAIClientOptions : ClientPipelineOptions { public string ApplicationId { get; init; } public Uri Endpoint { get; init; } public string OrganizationId { get; init; } @@ -40,7 +43,7 @@ namespace OpenAI { } } namespace OpenAI.Assistants { - public class Assistant { + public class Assistant : IJsonModel, IPersistableModel { public DateTimeOffset CreatedAt { get; } public string Description { get; } public string Id { get; } @@ -53,6 +56,11 @@ namespace OpenAI.Assistants { public float? Temperature { get; } public ToolResources ToolResources { get; } public IReadOnlyList Tools { get; } + Assistant IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + Assistant IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } public class AssistantClient { protected AssistantClient(); @@ -61,159 +69,212 @@ namespace OpenAI.Assistants { protected internal AssistantClient(ClientPipeline pipeline, Uri endpoint, OpenAIClientOptions options); public virtual ClientPipeline Pipeline { get; } public virtual ClientResult CancelRun(ThreadRun run); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult CancelRun(string threadId, string runId, RequestOptions options); public virtual ClientResult CancelRun(string threadId, string runId, CancellationToken cancellationToken = default); public virtual Task> CancelRunAsync(ThreadRun run); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task CancelRunAsync(string threadId, string runId, RequestOptions options); + [Diagnostics.DebuggerStepThrough] public virtual Task> CancelRunAsync(string threadId, string runId, CancellationToken cancellationToken = default); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult CreateAssistant(BinaryContent content, RequestOptions options = null); public virtual ClientResult CreateAssistant(string model, AssistantCreationOptions options = null, CancellationToken cancellationToken = default); + [Diagnostics.DebuggerStepThrough] + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task CreateAssistantAsync(BinaryContent content, RequestOptions options = null); + [Diagnostics.DebuggerStepThrough] public virtual Task> CreateAssistantAsync(string model, AssistantCreationOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult CreateMessage(AssistantThread thread, MessageRole role, IEnumerable content, MessageCreationOptions options = null); public virtual ClientResult CreateMessage(string threadId, MessageRole role, IEnumerable content, MessageCreationOptions options = null, CancellationToken cancellationToken = default); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult CreateMessage(string threadId, BinaryContent content, RequestOptions options = null); public virtual Task> CreateMessageAsync(AssistantThread thread, MessageRole role, IEnumerable content, MessageCreationOptions options = null); + [Diagnostics.DebuggerStepThrough] public virtual Task> CreateMessageAsync(string threadId, MessageRole role, IEnumerable content, MessageCreationOptions options = null, CancellationToken cancellationToken = default); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task CreateMessageAsync(string threadId, BinaryContent content, RequestOptions options = null); public virtual ClientResult CreateRun(AssistantThread thread, Assistant assistant, RunCreationOptions options = null); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult CreateRun(string threadId, BinaryContent content, RequestOptions options = null); public virtual ClientResult CreateRun(string threadId, string assistantId, RunCreationOptions options = null, CancellationToken cancellationToken = default); public virtual Task> CreateRunAsync(AssistantThread thread, Assistant assistant, RunCreationOptions options = null); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task CreateRunAsync(string threadId, BinaryContent content, RequestOptions options = null); + [Diagnostics.DebuggerStepThrough] public virtual Task> CreateRunAsync(string threadId, string assistantId, RunCreationOptions options = null, CancellationToken cancellationToken = default); - public virtual CollectionResult CreateRunStreaming(AssistantThread thread, Assistant assistant, RunCreationOptions options = null); - public virtual CollectionResult CreateRunStreaming(string threadId, string assistantId, RunCreationOptions options = null, CancellationToken cancellationToken = default); - public virtual AsyncCollectionResult CreateRunStreamingAsync(AssistantThread thread, Assistant assistant, RunCreationOptions options = null); - public virtual AsyncCollectionResult CreateRunStreamingAsync(string threadId, string assistantId, RunCreationOptions options = null, CancellationToken cancellationToken = default); + public virtual ResultCollection CreateRunStreaming(AssistantThread thread, Assistant assistant, RunCreationOptions options = null); + public virtual ResultCollection CreateRunStreaming(string threadId, string assistantId, RunCreationOptions options = null, CancellationToken cancellationToken = default); + public virtual AsyncResultCollection CreateRunStreamingAsync(AssistantThread thread, Assistant assistant, RunCreationOptions options = null); + public virtual AsyncResultCollection CreateRunStreamingAsync(string threadId, string assistantId, RunCreationOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult CreateThread(ThreadCreationOptions options = null, CancellationToken cancellationToken = default); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult CreateThread(BinaryContent content, RequestOptions options = null); public virtual ClientResult CreateThreadAndRun(Assistant assistant, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult CreateThreadAndRun(BinaryContent content, RequestOptions options = null); public virtual ClientResult CreateThreadAndRun(string assistantId, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null, CancellationToken cancellationToken = default); public virtual Task> CreateThreadAndRunAsync(Assistant assistant, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task CreateThreadAndRunAsync(BinaryContent content, RequestOptions options = null); + [Diagnostics.DebuggerStepThrough] public virtual Task> CreateThreadAndRunAsync(string assistantId, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null, CancellationToken cancellationToken = default); - public virtual CollectionResult CreateThreadAndRunStreaming(Assistant assistant, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null); - public virtual CollectionResult CreateThreadAndRunStreaming(string assistantId, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null, CancellationToken cancellationToken = default); - public virtual AsyncCollectionResult CreateThreadAndRunStreamingAsync(Assistant assistant, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null); - public virtual AsyncCollectionResult CreateThreadAndRunStreamingAsync(string assistantId, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null, CancellationToken cancellationToken = default); + public virtual ResultCollection CreateThreadAndRunStreaming(Assistant assistant, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null); + public virtual ResultCollection CreateThreadAndRunStreaming(string assistantId, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null, CancellationToken cancellationToken = default); + public virtual AsyncResultCollection CreateThreadAndRunStreamingAsync(Assistant assistant, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null); + public virtual AsyncResultCollection CreateThreadAndRunStreamingAsync(string assistantId, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null, CancellationToken cancellationToken = default); + [Diagnostics.DebuggerStepThrough] public virtual Task> CreateThreadAsync(ThreadCreationOptions options = null, CancellationToken cancellationToken = default); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task CreateThreadAsync(BinaryContent content, RequestOptions options = null); public virtual ClientResult DeleteAssistant(Assistant assistant); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult DeleteAssistant(string assistantId, RequestOptions options); public virtual ClientResult DeleteAssistant(string assistantId, CancellationToken cancellationToken = default); public virtual Task> DeleteAssistantAsync(Assistant assistant); + [Diagnostics.DebuggerStepThrough] + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task DeleteAssistantAsync(string assistantId, RequestOptions options); + [Diagnostics.DebuggerStepThrough] public virtual Task> DeleteAssistantAsync(string assistantId, CancellationToken cancellationToken = default); public virtual ClientResult DeleteMessage(ThreadMessage message); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult DeleteMessage(string threadId, string messageId, RequestOptions options); public virtual ClientResult DeleteMessage(string threadId, string messageId, CancellationToken cancellationToken = default); public virtual Task> DeleteMessageAsync(ThreadMessage message); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task DeleteMessageAsync(string threadId, string messageId, RequestOptions options); + [Diagnostics.DebuggerStepThrough] public virtual Task> DeleteMessageAsync(string threadId, string messageId, CancellationToken cancellationToken = default); public virtual ClientResult DeleteThread(AssistantThread thread); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult DeleteThread(string threadId, RequestOptions options); public virtual ClientResult DeleteThread(string threadId, CancellationToken cancellationToken = default); public virtual Task> DeleteThreadAsync(AssistantThread thread); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task DeleteThreadAsync(string threadId, RequestOptions options); + [Diagnostics.DebuggerStepThrough] public virtual Task> DeleteThreadAsync(string threadId, CancellationToken cancellationToken = default); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult GetAssistant(string assistantId, RequestOptions options); public virtual ClientResult GetAssistant(string assistantId, CancellationToken cancellationToken = default); + [Diagnostics.DebuggerStepThrough] + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task GetAssistantAsync(string assistantId, RequestOptions options); + [Diagnostics.DebuggerStepThrough] public virtual Task> GetAssistantAsync(string assistantId, CancellationToken cancellationToken = default); - public virtual PageCollection GetAssistants(AssistantCollectionOptions options = null, CancellationToken cancellationToken = default); - public virtual PageCollection GetAssistants(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); - public virtual IEnumerable GetAssistants(int? limit, string order, string after, string before, RequestOptions options); - public virtual AsyncPageCollection GetAssistantsAsync(AssistantCollectionOptions options = null, CancellationToken cancellationToken = default); - public virtual AsyncPageCollection GetAssistantsAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); - public virtual IAsyncEnumerable GetAssistantsAsync(int? limit, string order, string after, string before, RequestOptions options); + public virtual PageableCollection GetAssistants(ListOrder? resultOrder = null, CancellationToken cancellationToken = default); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public virtual ClientResult GetAssistants(int? limit, string order, string after, string before, RequestOptions options); + public virtual AsyncPageableCollection GetAssistantsAsync(ListOrder? resultOrder = null, CancellationToken cancellationToken = default); + [Diagnostics.DebuggerStepThrough] + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public virtual Task GetAssistantsAsync(int? limit, string order, string after, string before, RequestOptions options); public virtual ClientResult GetMessage(ThreadMessage message); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult GetMessage(string threadId, string messageId, RequestOptions options); public virtual ClientResult GetMessage(string threadId, string messageId, CancellationToken cancellationToken = default); public virtual Task> GetMessageAsync(ThreadMessage message); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task GetMessageAsync(string threadId, string messageId, RequestOptions options); + [Diagnostics.DebuggerStepThrough] public virtual Task> GetMessageAsync(string threadId, string messageId, CancellationToken cancellationToken = default); - public virtual PageCollection GetMessages(AssistantThread thread, MessageCollectionOptions options = null); - public virtual PageCollection GetMessages(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); - public virtual PageCollection GetMessages(string threadId, MessageCollectionOptions options = null, CancellationToken cancellationToken = default); - public virtual IEnumerable GetMessages(string threadId, int? limit, string order, string after, string before, RequestOptions options); - public virtual AsyncPageCollection GetMessagesAsync(AssistantThread thread, MessageCollectionOptions options = null); - public virtual AsyncPageCollection GetMessagesAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); - public virtual AsyncPageCollection GetMessagesAsync(string threadId, MessageCollectionOptions options = null, CancellationToken cancellationToken = default); - public virtual IAsyncEnumerable GetMessagesAsync(string threadId, int? limit, string order, string after, string before, RequestOptions options); + public virtual PageableCollection GetMessages(AssistantThread thread, ListOrder? resultOrder = null); + public virtual PageableCollection GetMessages(string threadId, ListOrder? resultOrder = null, CancellationToken cancellationToken = default); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public virtual ClientResult GetMessages(string threadId, int? limit, string order, string after, string before, RequestOptions options); + public virtual AsyncPageableCollection GetMessagesAsync(AssistantThread thread, ListOrder? resultOrder = null); + public virtual AsyncPageableCollection GetMessagesAsync(string threadId, ListOrder? resultOrder = null, CancellationToken cancellationToken = default); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public virtual Task GetMessagesAsync(string threadId, int? limit, string order, string after, string before, RequestOptions options); public virtual ClientResult GetRun(ThreadRun run); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult GetRun(string threadId, string runId, RequestOptions options); public virtual ClientResult GetRun(string threadId, string runId, CancellationToken cancellationToken = default); public virtual Task> GetRunAsync(ThreadRun run); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task GetRunAsync(string threadId, string runId, RequestOptions options); + [Diagnostics.DebuggerStepThrough] public virtual Task> GetRunAsync(string threadId, string runId, CancellationToken cancellationToken = default); - public virtual PageCollection GetRuns(AssistantThread thread, RunCollectionOptions options = null); - public virtual PageCollection GetRuns(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); - public virtual PageCollection GetRuns(string threadId, RunCollectionOptions options = null, CancellationToken cancellationToken = default); - public virtual IEnumerable GetRuns(string threadId, int? limit, string order, string after, string before, RequestOptions options); - public virtual AsyncPageCollection GetRunsAsync(AssistantThread thread, RunCollectionOptions options = null); - public virtual AsyncPageCollection GetRunsAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); - public virtual AsyncPageCollection GetRunsAsync(string threadId, RunCollectionOptions options = null, CancellationToken cancellationToken = default); - public virtual IAsyncEnumerable GetRunsAsync(string threadId, int? limit, string order, string after, string before, RequestOptions options); + public virtual PageableCollection GetRuns(AssistantThread thread, ListOrder? resultOrder = null); + public virtual PageableCollection GetRuns(string threadId, ListOrder? resultOrder = null, CancellationToken cancellationToken = default); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public virtual ClientResult GetRuns(string threadId, int? limit, string order, string after, string before, RequestOptions options); + public virtual AsyncPageableCollection GetRunsAsync(AssistantThread thread, ListOrder? resultOrder = null); + public virtual AsyncPageableCollection GetRunsAsync(string threadId, ListOrder? resultOrder = null, CancellationToken cancellationToken = default); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public virtual Task GetRunsAsync(string threadId, int? limit, string order, string after, string before, RequestOptions options); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult GetRunStep(string threadId, string runId, string stepId, RequestOptions options); public virtual ClientResult GetRunStep(string threadId, string runId, string stepId, CancellationToken cancellationToken = default); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task GetRunStepAsync(string threadId, string runId, string stepId, RequestOptions options); + [Diagnostics.DebuggerStepThrough] public virtual Task> GetRunStepAsync(string threadId, string runId, string stepId, CancellationToken cancellationToken = default); - public virtual PageCollection GetRunSteps(ThreadRun run, RunStepCollectionOptions options = null); - public virtual PageCollection GetRunSteps(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); - public virtual PageCollection GetRunSteps(string threadId, string runId, RunStepCollectionOptions options = null, CancellationToken cancellationToken = default); - public virtual IEnumerable GetRunSteps(string threadId, string runId, int? limit, string order, string after, string before, RequestOptions options); - public virtual AsyncPageCollection GetRunStepsAsync(ThreadRun run, RunStepCollectionOptions options = null); - public virtual AsyncPageCollection GetRunStepsAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); - public virtual AsyncPageCollection GetRunStepsAsync(string threadId, string runId, RunStepCollectionOptions options = null, CancellationToken cancellationToken = default); - public virtual IAsyncEnumerable GetRunStepsAsync(string threadId, string runId, int? limit, string order, string after, string before, RequestOptions options); + public virtual PageableCollection GetRunSteps(ThreadRun run, ListOrder? resultOrder = null); + public virtual PageableCollection GetRunSteps(string threadId, string runId, ListOrder? resultOrder = null, CancellationToken cancellationToken = default); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public virtual ClientResult GetRunSteps(string threadId, string runId, int? limit, string order, string after, string before, RequestOptions options); + public virtual AsyncPageableCollection GetRunStepsAsync(ThreadRun run, ListOrder? resultOrder = null); + public virtual AsyncPageableCollection GetRunStepsAsync(string threadId, string runId, ListOrder? resultOrder = null, CancellationToken cancellationToken = default); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public virtual Task GetRunStepsAsync(string threadId, string runId, int? limit, string order, string after, string before, RequestOptions options); public virtual ClientResult GetThread(AssistantThread thread); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult GetThread(string threadId, RequestOptions options); public virtual ClientResult GetThread(string threadId, CancellationToken cancellationToken = default); public virtual Task> GetThreadAsync(AssistantThread thread); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task GetThreadAsync(string threadId, RequestOptions options); + [Diagnostics.DebuggerStepThrough] public virtual Task> GetThreadAsync(string threadId, CancellationToken cancellationToken = default); public virtual ClientResult ModifyAssistant(Assistant assistant, AssistantModificationOptions options); public virtual ClientResult ModifyAssistant(string assistantId, AssistantModificationOptions options, CancellationToken cancellationToken = default); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult ModifyAssistant(string assistantId, BinaryContent content, RequestOptions options = null); public virtual Task> ModifyAssistantAsync(Assistant assistant, AssistantModificationOptions options); + [Diagnostics.DebuggerStepThrough] public virtual Task> ModifyAssistantAsync(string assistantId, AssistantModificationOptions options, CancellationToken cancellationToken = default); + [Diagnostics.DebuggerStepThrough] + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task ModifyAssistantAsync(string assistantId, BinaryContent content, RequestOptions options = null); public virtual ClientResult ModifyMessage(ThreadMessage message, MessageModificationOptions options); public virtual ClientResult ModifyMessage(string threadId, string messageId, MessageModificationOptions options, CancellationToken cancellationToken = default); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult ModifyMessage(string threadId, string messageId, BinaryContent content, RequestOptions options = null); public virtual Task> ModifyMessageAsync(ThreadMessage message, MessageModificationOptions options); + [Diagnostics.DebuggerStepThrough] public virtual Task> ModifyMessageAsync(string threadId, string messageId, MessageModificationOptions options, CancellationToken cancellationToken = default); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task ModifyMessageAsync(string threadId, string messageId, BinaryContent content, RequestOptions options = null); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult ModifyRun(string threadId, string runId, BinaryContent content, RequestOptions options = null); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task ModifyRunAsync(string threadId, string runId, BinaryContent content, RequestOptions options = null); public virtual ClientResult ModifyThread(AssistantThread thread, ThreadModificationOptions options); public virtual ClientResult ModifyThread(string threadId, ThreadModificationOptions options, CancellationToken cancellationToken = default); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult ModifyThread(string threadId, BinaryContent content, RequestOptions options = null); public virtual Task> ModifyThreadAsync(AssistantThread thread, ThreadModificationOptions options); + [Diagnostics.DebuggerStepThrough] public virtual Task> ModifyThreadAsync(string threadId, ThreadModificationOptions options, CancellationToken cancellationToken = default); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task ModifyThreadAsync(string threadId, BinaryContent content, RequestOptions options = null); public virtual ClientResult SubmitToolOutputsToRun(ThreadRun run, IEnumerable toolOutputs); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult SubmitToolOutputsToRun(string threadId, string runId, BinaryContent content, RequestOptions options = null); public virtual ClientResult SubmitToolOutputsToRun(string threadId, string runId, IEnumerable toolOutputs, CancellationToken cancellationToken = default); public virtual Task> SubmitToolOutputsToRunAsync(ThreadRun run, IEnumerable toolOutputs); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task SubmitToolOutputsToRunAsync(string threadId, string runId, BinaryContent content, RequestOptions options = null); + [Diagnostics.DebuggerStepThrough] public virtual Task> SubmitToolOutputsToRunAsync(string threadId, string runId, IEnumerable toolOutputs, CancellationToken cancellationToken = default); - public virtual CollectionResult SubmitToolOutputsToRunStreaming(ThreadRun run, IEnumerable toolOutputs); - public virtual CollectionResult SubmitToolOutputsToRunStreaming(string threadId, string runId, IEnumerable toolOutputs, CancellationToken cancellationToken = default); - public virtual AsyncCollectionResult SubmitToolOutputsToRunStreamingAsync(ThreadRun run, IEnumerable toolOutputs); - public virtual AsyncCollectionResult SubmitToolOutputsToRunStreamingAsync(string threadId, string runId, IEnumerable toolOutputs, CancellationToken cancellationToken = default); - } - public class AssistantCollectionOptions { - public AssistantCollectionOptions(); - public string AfterId { get; init; } - public string BeforeId { get; init; } - public ListOrder? Order { get; init; } - public int? PageSize { get; init; } - } - public class AssistantCreationOptions { - public AssistantCreationOptions(); + public virtual ResultCollection SubmitToolOutputsToRunStreaming(ThreadRun run, IEnumerable toolOutputs); + public virtual ResultCollection SubmitToolOutputsToRunStreaming(string threadId, string runId, IEnumerable toolOutputs, CancellationToken cancellationToken = default); + public virtual AsyncResultCollection SubmitToolOutputsToRunStreamingAsync(ThreadRun run, IEnumerable toolOutputs); + public virtual AsyncResultCollection SubmitToolOutputsToRunStreamingAsync(string threadId, string runId, IEnumerable toolOutputs, CancellationToken cancellationToken = default); + } + public class AssistantCreationOptions : IJsonModel, IPersistableModel { public string Description { get; init; } public string Instructions { get; init; } public IDictionary Metadata { get; } @@ -223,9 +284,13 @@ namespace OpenAI.Assistants { public float? Temperature { get; init; } public ToolResources ToolResources { get; init; } public IList Tools { get; } + AssistantCreationOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + AssistantCreationOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public class AssistantModificationOptions { - public AssistantModificationOptions(); + public class AssistantModificationOptions : IJsonModel, IPersistableModel { public IList DefaultTools { get; init; } public string Description { get; init; } public string Instructions { get; init; } @@ -236,59 +301,91 @@ namespace OpenAI.Assistants { public AssistantResponseFormat ResponseFormat { get; init; } public float? Temperature { get; init; } public ToolResources ToolResources { get; init; } + AssistantModificationOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + AssistantModificationOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public class AssistantResponseFormat { + public class AssistantResponseFormat : IJsonModel, IPersistableModel { protected AssistantResponseFormat(); public static AssistantResponseFormat Auto { get; } public static AssistantResponseFormat JsonObject { get; } public static AssistantResponseFormat Text { get; } public bool Equals(AssistantResponseFormat other); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public override bool Equals(object obj); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public override int GetHashCode(); public static bool operator ==(AssistantResponseFormat left, AssistantResponseFormat right); public static implicit operator AssistantResponseFormat(string value); public static bool operator !=(AssistantResponseFormat left, AssistantResponseFormat right); + AssistantResponseFormat IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + AssistantResponseFormat IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); public override string ToString(); } - public class AssistantThread { + public class AssistantThread : IJsonModel, IPersistableModel { public DateTimeOffset CreatedAt { get; } public string Id { get; } public IReadOnlyDictionary Metadata { get; } public ToolResources ToolResources { get; } - } - public class CodeInterpreterToolDefinition : ToolDefinition { + AssistantThread IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + AssistantThread IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); + } + public class CodeInterpreterToolDefinition : ToolDefinition, IJsonModel, IPersistableModel { + CodeInterpreterToolDefinition IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + CodeInterpreterToolDefinition IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); protected override void WriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options); } - public class CodeInterpreterToolResources { - public CodeInterpreterToolResources(); + public class CodeInterpreterToolResources : IJsonModel, IPersistableModel { public IList FileIds { get; init; } + CodeInterpreterToolResources IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + CodeInterpreterToolResources IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public class FileSearchToolDefinition : ToolDefinition { + public class FileSearchToolDefinition : ToolDefinition, IJsonModel, IPersistableModel { public int? MaxResults { get; init; } + FileSearchToolDefinition IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + FileSearchToolDefinition IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); protected override void WriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options); } - public class FileSearchToolResources { - public FileSearchToolResources(); + public class FileSearchToolResources : IJsonModel, IPersistableModel { public IList NewVectorStores { get; } public IList VectorStoreIds { get; init; } + FileSearchToolResources IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + FileSearchToolResources IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public class FunctionToolDefinition : ToolDefinition { + public class FunctionToolDefinition : ToolDefinition, IJsonModel, IPersistableModel { public FunctionToolDefinition(); public FunctionToolDefinition(string name, string description = null, BinaryData parameters = null); public string Description { get; init; } public required string FunctionName { get; init; } public BinaryData Parameters { get; init; } + FunctionToolDefinition IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + FunctionToolDefinition IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); protected override void WriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options); } - public class MessageCollectionOptions { - public MessageCollectionOptions(); - public string AfterId { get; init; } - public string BeforeId { get; init; } - public ListOrder? Order { get; init; } - public int? PageSize { get; init; } - } - public abstract class MessageContent { - protected MessageContent(); + public abstract class MessageContent : IJsonModel, IPersistableModel { public MessageImageDetail? ImageDetail { get; } public string ImageFileId { get; } public Uri ImageUrl { get; } @@ -298,6 +395,11 @@ namespace OpenAI.Assistants { public static MessageContent FromImageUrl(Uri imageUri, MessageImageDetail? detail = null); public static MessageContent FromText(string text); public static implicit operator MessageContent(string value); + MessageContent IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + MessageContent IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); protected abstract void WriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options); } public class MessageContentUpdate : StreamingUpdate { @@ -309,83 +411,100 @@ namespace OpenAI.Assistants { public string Text { get; } public TextAnnotationUpdate TextAnnotation { get; } } - public class MessageCreationAttachment { + public class MessageCreationAttachment : IJsonModel, IPersistableModel { public MessageCreationAttachment(string fileId, IEnumerable tools); public string FileId { get; } public IReadOnlyList Tools { get; } + MessageCreationAttachment IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + MessageCreationAttachment IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public class MessageCreationOptions { - public MessageCreationOptions(); + public class MessageCreationOptions : IJsonModel, IPersistableModel { public IList Attachments { get; } public IDictionary Metadata { get; } + MessageCreationOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + MessageCreationOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public class MessageFailureDetails { + public class MessageFailureDetails : IJsonModel, IPersistableModel { public MessageFailureReason Reason { get; } - } - public sealed class MessageFailureReason { + MessageFailureDetails IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + MessageFailureDetails IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); + } + public readonly partial struct MessageFailureReason : IEquatable { + private readonly object _dummy; + private readonly int _dummyPrimitive; public MessageFailureReason(string value); public static MessageFailureReason ContentFilter { get; } public static MessageFailureReason MaxTokens { get; } public static MessageFailureReason RunCancelled { get; } public static MessageFailureReason RunExpired { get; } public static MessageFailureReason RunFailed { get; } - public bool Equals(MessageFailureReason other); - public override bool Equals(object obj); - public override int GetHashCode(); + public readonly bool Equals(MessageFailureReason other); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly bool Equals(object obj); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly int GetHashCode(); public static bool operator ==(MessageFailureReason left, MessageFailureReason right); public static implicit operator MessageFailureReason(string value); public static bool operator !=(MessageFailureReason left, MessageFailureReason right); - public override string ToString(); + public override readonly string ToString(); } - public sealed class MessageImageDetail { - public const MessageImageDetail Auto = 0; - public const MessageImageDetail High = 2; - public const MessageImageDetail Low = 1; + public enum MessageImageDetail { + Auto = 0, + Low = 1, + High = 2 } - public class MessageModificationOptions { - public MessageModificationOptions(); + public class MessageModificationOptions : IJsonModel, IPersistableModel { public IDictionary Metadata { get; } - } - public sealed class MessageRole { - public const MessageRole Assistant = 1; - public const MessageRole User = 0; - } - public sealed class MessageStatus { + MessageModificationOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + MessageModificationOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); + } + public enum MessageRole { + User = 0, + Assistant = 1 + } + public readonly partial struct MessageStatus : IEquatable { + private readonly object _dummy; + private readonly int _dummyPrimitive; public MessageStatus(string value); public static MessageStatus Completed { get; } public static MessageStatus Incomplete { get; } public static MessageStatus InProgress { get; } - public bool Equals(MessageStatus other); - public override bool Equals(object obj); - public override int GetHashCode(); + public readonly bool Equals(MessageStatus other); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly bool Equals(object obj); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly int GetHashCode(); public static bool operator ==(MessageStatus left, MessageStatus right); public static implicit operator MessageStatus(string value); public static bool operator !=(MessageStatus left, MessageStatus right); - public override string ToString(); + public override readonly string ToString(); } public class MessageStatusUpdate : StreamingUpdate { } public abstract class RequiredAction { - protected RequiredAction(); public string FunctionArguments { get; } public string FunctionName { get; } public string ToolCallId { get; } } - public class RequiredActionUpdate : RunUpdate { + public class RequiredActionUpdate : StreamingUpdate { public string FunctionArguments { get; } public string FunctionName { get; } public string ToolCallId { get; } public ThreadRun GetThreadRun(); } - public class RunCollectionOptions { - public RunCollectionOptions(); - public string AfterId { get; init; } - public string BeforeId { get; init; } - public ListOrder? Order { get; init; } - public int? PageSize { get; init; } - } - public class RunCreationOptions { - public RunCreationOptions(); + public class RunCreationOptions : IJsonModel, IPersistableModel { public string AdditionalInstructions { get; init; } public IList AdditionalMessages { get; } public string InstructionsOverride { get; init; } @@ -400,44 +519,73 @@ namespace OpenAI.Assistants { public ToolConstraint ToolConstraint { get; init; } public IList ToolsOverride { get; } public RunTruncationStrategy TruncationStrategy { get; init; } + RunCreationOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + RunCreationOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public class RunError { + public class RunError : IJsonModel, IPersistableModel { public RunErrorCode Code { get; } public string Message { get; } - } - public sealed class RunErrorCode { + RunError IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + RunError IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); + } + public readonly partial struct RunErrorCode : IEquatable { + private readonly object _dummy; + private readonly int _dummyPrimitive; public RunErrorCode(string value); public static RunErrorCode InvalidPrompt { get; } public static RunErrorCode RateLimitExceeded { get; } public static RunErrorCode ServerError { get; } - public bool Equals(RunErrorCode other); - public override bool Equals(object obj); - public override int GetHashCode(); + public readonly bool Equals(RunErrorCode other); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly bool Equals(object obj); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly int GetHashCode(); public static bool operator ==(RunErrorCode left, RunErrorCode right); public static implicit operator RunErrorCode(string value); public static bool operator !=(RunErrorCode left, RunErrorCode right); - public override string ToString(); + public override readonly string ToString(); } - public class RunIncompleteDetails { + public class RunIncompleteDetails : IJsonModel, IPersistableModel { public RunIncompleteReason? Reason { get; } - } - public sealed class RunIncompleteReason { + RunIncompleteDetails IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + RunIncompleteDetails IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); + } + public readonly partial struct RunIncompleteReason : IEquatable { + private readonly object _dummy; + private readonly int _dummyPrimitive; public RunIncompleteReason(string value); public static RunIncompleteReason MaxCompletionTokens { get; } public static RunIncompleteReason MaxPromptTokens { get; } - public bool Equals(RunIncompleteReason other); - public override bool Equals(object obj); - public override int GetHashCode(); + public readonly bool Equals(RunIncompleteReason other); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly bool Equals(object obj); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly int GetHashCode(); public static bool operator ==(RunIncompleteReason left, RunIncompleteReason right); public static implicit operator RunIncompleteReason(string value); public static bool operator !=(RunIncompleteReason left, RunIncompleteReason right); - public override string ToString(); + public override readonly string ToString(); } - public class RunModificationOptions { - public RunModificationOptions(); + public class RunModificationOptions : IJsonModel, IPersistableModel { public IDictionary Metadata { get; } - } - public sealed class RunStatus { + RunModificationOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + RunModificationOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); + } + public readonly partial struct RunStatus : IEquatable { + private readonly object _dummy; + private readonly int _dummyPrimitive; public RunStatus(string value); public static RunStatus Cancelled { get; } public static RunStatus Cancelling { get; } @@ -449,15 +597,17 @@ namespace OpenAI.Assistants { public bool IsTerminal { get; } public static RunStatus Queued { get; } public static RunStatus RequiresAction { get; } - public bool Equals(RunStatus other); - public override bool Equals(object obj); - public override int GetHashCode(); + public readonly bool Equals(RunStatus other); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly bool Equals(object obj); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly int GetHashCode(); public static bool operator ==(RunStatus left, RunStatus right); public static implicit operator RunStatus(string value); public static bool operator !=(RunStatus left, RunStatus right); - public override string ToString(); + public override readonly string ToString(); } - public class RunStep { + public class RunStep : IJsonModel, IPersistableModel { public string AssistantId { get; } public DateTimeOffset? CancelledAt { get; } public DateTimeOffset? CompletedAt { get; } @@ -473,23 +623,29 @@ namespace OpenAI.Assistants { public string ThreadId { get; } public RunStepType Type { get; } public RunStepTokenUsage Usage { get; } + RunStep IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + RunStep IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public abstract class RunStepCodeInterpreterOutput { - protected RunStepCodeInterpreterOutput(); + public abstract class RunStepCodeInterpreterOutput : IJsonModel, IPersistableModel { public string ImageFileId { get; } public string Logs { get; } + RunStepCodeInterpreterOutput IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + RunStepCodeInterpreterOutput IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public class RunStepCollectionOptions { - public RunStepCollectionOptions(); - public string AfterId { get; init; } - public string BeforeId { get; init; } - public ListOrder? Order { get; init; } - public int? PageSize { get; init; } - } - public abstract class RunStepDetails { - protected RunStepDetails(); + public abstract class RunStepDetails : IJsonModel, IPersistableModel { public string CreatedMessageId { get; } public IReadOnlyList ToolCalls { get; } + RunStepDetails IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + RunStepDetails IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } public class RunStepDetailsUpdate : StreamingUpdate { public string CodeInterpreterInput { get; } @@ -502,44 +658,61 @@ namespace OpenAI.Assistants { public string ToolCallId { get; } public int? ToolCallIndex { get; } } - public class RunStepError { + public class RunStepError : IJsonModel, IPersistableModel { public RunStepErrorCode Code { get; } public string Message { get; } - } - public sealed class RunStepErrorCode { + RunStepError IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + RunStepError IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); + } + public readonly partial struct RunStepErrorCode : IEquatable { + private readonly object _dummy; + private readonly int _dummyPrimitive; public RunStepErrorCode(string value); public static RunStepErrorCode RateLimitExceeded { get; } public static RunStepErrorCode ServerError { get; } - public bool Equals(RunStepErrorCode other); - public override bool Equals(object obj); - public override int GetHashCode(); + public readonly bool Equals(RunStepErrorCode other); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly bool Equals(object obj); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly int GetHashCode(); public static bool operator ==(RunStepErrorCode left, RunStepErrorCode right); public static implicit operator RunStepErrorCode(string value); public static bool operator !=(RunStepErrorCode left, RunStepErrorCode right); - public override string ToString(); + public override readonly string ToString(); } - public sealed class RunStepStatus { + public readonly partial struct RunStepStatus : IEquatable { + private readonly object _dummy; + private readonly int _dummyPrimitive; public RunStepStatus(string value); public static RunStepStatus Cancelled { get; } public static RunStepStatus Completed { get; } public static RunStepStatus Expired { get; } public static RunStepStatus Failed { get; } public static RunStepStatus InProgress { get; } - public bool Equals(RunStepStatus other); - public override bool Equals(object obj); - public override int GetHashCode(); + public readonly bool Equals(RunStepStatus other); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly bool Equals(object obj); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly int GetHashCode(); public static bool operator ==(RunStepStatus left, RunStepStatus right); public static implicit operator RunStepStatus(string value); public static bool operator !=(RunStepStatus left, RunStepStatus right); - public override string ToString(); + public override readonly string ToString(); } - public class RunStepTokenUsage { + public class RunStepTokenUsage : IJsonModel, IPersistableModel { public int CompletionTokens { get; } public int PromptTokens { get; } public int TotalTokens { get; } + RunStepTokenUsage IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + RunStepTokenUsage IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public abstract class RunStepToolCall { - protected RunStepToolCall(); + public abstract class RunStepToolCall : IJsonModel, IPersistableModel { public string CodeInterpreterInput { get; } public IReadOnlyList CodeInterpreterOutputs { get; } public string FunctionArguments { get; } @@ -547,75 +720,98 @@ namespace OpenAI.Assistants { public string FunctionOutput { get; } public string ToolCallId { get; } public RunStepToolCallKind ToolKind { get; } - } - public sealed class RunStepToolCallKind { - public const RunStepToolCallKind CodeInterpreter = 1; - public const RunStepToolCallKind FileSearch = 2; - public const RunStepToolCallKind Function = 3; - public const RunStepToolCallKind Unknown = 0; - } - public sealed class RunStepType { + RunStepToolCall IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + RunStepToolCall IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); + } + public enum RunStepToolCallKind { + Unknown = 0, + CodeInterpreter = 1, + FileSearch = 2, + Function = 3 + } + public readonly partial struct RunStepType : IEquatable { + private readonly object _dummy; + private readonly int _dummyPrimitive; public RunStepType(string value); public static RunStepType MessageCreation { get; } public static RunStepType ToolCalls { get; } - public bool Equals(RunStepType other); - public override bool Equals(object obj); - public override int GetHashCode(); + public readonly bool Equals(RunStepType other); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly bool Equals(object obj); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly int GetHashCode(); public static bool operator ==(RunStepType left, RunStepType right); public static implicit operator RunStepType(string value); public static bool operator !=(RunStepType left, RunStepType right); - public override string ToString(); + public override readonly string ToString(); } public class RunStepUpdate : StreamingUpdate { } - public abstract class RunStepUpdateCodeInterpreterOutput { - protected RunStepUpdateCodeInterpreterOutput(); + public abstract class RunStepUpdateCodeInterpreterOutput : IJsonModel, IPersistableModel { public string ImageFileId { get; } public string Logs { get; } public int OutputIndex { get; } + RunStepUpdateCodeInterpreterOutput IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + RunStepUpdateCodeInterpreterOutput IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public class RunTokenUsage { + public class RunTokenUsage : IJsonModel, IPersistableModel { public int CompletionTokens { get; } public int PromptTokens { get; } public int TotalTokens { get; } + RunTokenUsage IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + RunTokenUsage IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public class RunTruncationStrategy { + public class RunTruncationStrategy : IJsonModel, IPersistableModel { public static RunTruncationStrategy Auto { get; } public int? LastMessages { get; } public static RunTruncationStrategy CreateLastMessagesStrategy(int lastMessageCount); + RunTruncationStrategy IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + RunTruncationStrategy IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } public class RunUpdate : StreamingUpdate { } public abstract class StreamingUpdate { public StreamingUpdateReason UpdateKind { get; } } - public sealed class StreamingUpdateReason { - public const StreamingUpdateReason Done = 25; - public const StreamingUpdateReason Error = 24; - public const StreamingUpdateReason MessageCompleted = 22; - public const StreamingUpdateReason MessageCreated = 19; - public const StreamingUpdateReason MessageFailed = 23; - public const StreamingUpdateReason MessageInProgress = 20; - public const StreamingUpdateReason MessageUpdated = 21; - public const StreamingUpdateReason RunCancelled = 10; - public const StreamingUpdateReason RunCancelling = 9; - public const StreamingUpdateReason RunCompleted = 6; - public const StreamingUpdateReason RunCreated = 2; - public const StreamingUpdateReason RunExpired = 11; - public const StreamingUpdateReason RunFailed = 8; - public const StreamingUpdateReason RunIncomplete = 7; - public const StreamingUpdateReason RunInProgress = 4; - public const StreamingUpdateReason RunQueued = 3; - public const StreamingUpdateReason RunRequiresAction = 5; - public const StreamingUpdateReason RunStepCancelled = 17; - public const StreamingUpdateReason RunStepCompleted = 15; - public const StreamingUpdateReason RunStepCreated = 12; - public const StreamingUpdateReason RunStepExpired = 18; - public const StreamingUpdateReason RunStepFailed = 16; - public const StreamingUpdateReason RunStepInProgress = 13; - public const StreamingUpdateReason RunStepUpdated = 14; - public const StreamingUpdateReason ThreadCreated = 1; - public const StreamingUpdateReason Unknown = 0; + public enum StreamingUpdateReason { + Unknown = 0, + ThreadCreated = 1, + RunCreated = 2, + RunQueued = 3, + RunInProgress = 4, + RunRequiresAction = 5, + RunCompleted = 6, + RunIncomplete = 7, + RunFailed = 8, + RunCancelling = 9, + RunCancelled = 10, + RunExpired = 11, + RunStepCreated = 12, + RunStepInProgress = 13, + RunStepUpdated = 14, + RunStepCompleted = 15, + RunStepFailed = 16, + RunStepCancelled = 17, + RunStepExpired = 18, + MessageCreated = 19, + MessageInProgress = 20, + MessageUpdated = 21, + MessageCompleted = 22, + MessageFailed = 23, + Error = 24, + Done = 25 } public class StreamingUpdate : StreamingUpdate where T : class { public T Value { get; } @@ -636,17 +832,21 @@ namespace OpenAI.Assistants { public int? StartIndex { get; } public string TextToReplace { get; } } - public class ThreadCreationOptions { - public ThreadCreationOptions(); + public class ThreadCreationOptions : IJsonModel, IPersistableModel { public IList InitialMessages { get; } public IDictionary Metadata { get; } public ToolResources ToolResources { get; init; } + ThreadCreationOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + ThreadCreationOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } public class ThreadInitializationMessage : MessageCreationOptions { public ThreadInitializationMessage(MessageRole role, IEnumerable content); public static implicit operator ThreadInitializationMessage(string initializationMessage); } - public class ThreadMessage { + public class ThreadMessage : IJsonModel, IPersistableModel { public string AssistantId { get; } public IReadOnlyList Attachments { get; } public DateTimeOffset? CompletedAt { get; } @@ -660,13 +860,22 @@ namespace OpenAI.Assistants { public string RunId { get; } public MessageStatus Status { get; } public string ThreadId { get; } + ThreadMessage IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + ThreadMessage IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public class ThreadModificationOptions { - public ThreadModificationOptions(); + public class ThreadModificationOptions : IJsonModel, IPersistableModel { public IDictionary Metadata { get; } public ToolResources ToolResources { get; init; } + ThreadModificationOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + ThreadModificationOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public class ThreadRun { + public class ThreadRun : IJsonModel, IPersistableModel { public string AssistantId { get; } public DateTimeOffset? CancelledAt { get; } public DateTimeOffset? CompletedAt { get; } @@ -693,6 +902,11 @@ namespace OpenAI.Assistants { public IReadOnlyList Tools { get; } public RunTruncationStrategy TruncationStrategy { get; } public RunTokenUsage Usage { get; } + ThreadRun IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + ThreadRun IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } public class ThreadUpdate : StreamingUpdate { public DateTimeOffset CreatedAt { get; } @@ -700,37 +914,61 @@ namespace OpenAI.Assistants { public IReadOnlyDictionary Metadata { get; } public ToolResources ToolResources { get; } } - public class ToolConstraint { + public class ToolConstraint : IJsonModel, IPersistableModel { public ToolConstraint(ToolDefinition toolDefinition); public static ToolConstraint Auto { get; } public static ToolConstraint None { get; } public static ToolConstraint Required { get; } + ToolConstraint IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + ToolConstraint IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public abstract class ToolDefinition { + public abstract class ToolDefinition : IJsonModel, IPersistableModel { protected ToolDefinition(); protected ToolDefinition(string type); public static CodeInterpreterToolDefinition CreateCodeInterpreter(); public static FileSearchToolDefinition CreateFileSearch(int? maxResults = null); public static FunctionToolDefinition CreateFunction(string name, string description = null, BinaryData parameters = null); + ToolDefinition IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + ToolDefinition IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); protected abstract void WriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options); } - public class ToolOutput { + public class ToolOutput : IJsonModel, IPersistableModel { public ToolOutput(); public ToolOutput(string toolCallId, string output); public string Output { get; init; } public string ToolCallId { get; init; } + ToolOutput IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + ToolOutput IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public class ToolResources { - public ToolResources(); + public class ToolResources : IJsonModel, IPersistableModel { public CodeInterpreterToolResources CodeInterpreter { get; init; } public FileSearchToolResources FileSearch { get; init; } + ToolResources IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + ToolResources IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public class VectorStoreCreationHelper { + public class VectorStoreCreationHelper : IJsonModel, IPersistableModel { public VectorStoreCreationHelper(); public VectorStoreCreationHelper(IEnumerable files, IDictionary metadata = null); public VectorStoreCreationHelper(IEnumerable fileIds, IDictionary metadata = null); public IList FileIds { get; } public IDictionary Metadata { get; } + VectorStoreCreationHelper IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + VectorStoreCreationHelper IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } } namespace OpenAI.Audio { @@ -740,108 +978,165 @@ namespace OpenAI.Audio { public AudioClient(string model, OpenAIClientOptions options = null); public AudioClient(string model, ApiKeyCredential credential, OpenAIClientOptions options = null); public virtual ClientPipeline Pipeline { get; } + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult GenerateSpeechFromText(BinaryContent content, RequestOptions options = null); public virtual ClientResult GenerateSpeechFromText(string text, GeneratedSpeechVoice voice, SpeechGenerationOptions options = null, CancellationToken cancellationToken = default); + [Diagnostics.DebuggerStepThrough] + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task GenerateSpeechFromTextAsync(BinaryContent content, RequestOptions options = null); + [Diagnostics.DebuggerStepThrough] public virtual Task> GenerateSpeechFromTextAsync(string text, GeneratedSpeechVoice voice, SpeechGenerationOptions options = null, CancellationToken cancellationToken = default); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult TranscribeAudio(BinaryContent content, string contentType, RequestOptions options = null); public virtual ClientResult TranscribeAudio(Stream audio, string audioFilename, AudioTranscriptionOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult TranscribeAudio(string audioFilePath, AudioTranscriptionOptions options = null); + [Diagnostics.DebuggerStepThrough] + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task TranscribeAudioAsync(BinaryContent content, string contentType, RequestOptions options = null); + [Diagnostics.DebuggerStepThrough] public virtual Task> TranscribeAudioAsync(Stream audio, string audioFilename, AudioTranscriptionOptions options = null, CancellationToken cancellationToken = default); + [Diagnostics.DebuggerStepThrough] public virtual Task> TranscribeAudioAsync(string audioFilePath, AudioTranscriptionOptions options = null); public virtual ClientResult TranslateAudio(BinaryContent content, string contentType, RequestOptions options = null); public virtual ClientResult TranslateAudio(Stream audio, string audioFilename, AudioTranslationOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult TranslateAudio(string audioFilePath, AudioTranslationOptions options = null); + [Diagnostics.DebuggerStepThrough] public virtual Task TranslateAudioAsync(BinaryContent content, string contentType, RequestOptions options = null); + [Diagnostics.DebuggerStepThrough] public virtual Task> TranslateAudioAsync(Stream audio, string audioFilename, AudioTranslationOptions options = null, CancellationToken cancellationToken = default); + [Diagnostics.DebuggerStepThrough] public virtual Task> TranslateAudioAsync(string audioFilePath, AudioTranslationOptions options = null); } - public sealed class AudioTimestampGranularities { - public const AudioTimestampGranularities Default = 0; - public const AudioTimestampGranularities Segment = 2; - public const AudioTimestampGranularities Word = 1; + [Flags] + public enum AudioTimestampGranularities { + Default = 0, + Word = 1, + Segment = 2 } - public class AudioTranscription { + public class AudioTranscription : IJsonModel, IPersistableModel { public TimeSpan? Duration { get; } public string Language { get; } public IReadOnlyList Segments { get; } public string Text { get; } public IReadOnlyList Words { get; } - } - public sealed class AudioTranscriptionFormat { - public const AudioTranscriptionFormat Simple = 1; - public const AudioTranscriptionFormat Srt = 3; - public const AudioTranscriptionFormat Text = 0; - public const AudioTranscriptionFormat Verbose = 2; - public const AudioTranscriptionFormat Vtt = 4; - } - public class AudioTranscriptionOptions { - public AudioTranscriptionOptions(); + AudioTranscription IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + AudioTranscription IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); + } + public enum AudioTranscriptionFormat { + Text = 0, + Simple = 1, + Verbose = 2, + Srt = 3, + Vtt = 4 + } + public class AudioTranscriptionOptions : IJsonModel, IPersistableModel { public AudioTimestampGranularities Granularities { get; init; } public string Language { get; init; } public string Prompt { get; init; } public AudioTranscriptionFormat? ResponseFormat { get; init; } public float? Temperature { get; init; } + AudioTranscriptionOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + AudioTranscriptionOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public class AudioTranslation { + public class AudioTranslation : IJsonModel, IPersistableModel { public TimeSpan? Duration { get; } public string Language { get; } public IReadOnlyList Segments { get; } public string Text { get; } - } - public sealed class AudioTranslationFormat { - public const AudioTranslationFormat Simple = 1; - public const AudioTranslationFormat Srt = 3; - public const AudioTranslationFormat Text = 0; - public const AudioTranslationFormat Verbose = 2; - public const AudioTranslationFormat Vtt = 4; - } - public class AudioTranslationOptions { - public AudioTranslationOptions(); + AudioTranslation IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + AudioTranslation IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); + } + public enum AudioTranslationFormat { + Text = 0, + Simple = 1, + Verbose = 2, + Srt = 3, + Vtt = 4 + } + public class AudioTranslationOptions : IJsonModel, IPersistableModel { public string Prompt { get; init; } public AudioTranslationFormat? ResponseFormat { get; init; } public float? Temperature { get; init; } - } - public sealed class GeneratedSpeechFormat { - public const GeneratedSpeechFormat Aac = 2; - public const GeneratedSpeechFormat Flac = 3; - public const GeneratedSpeechFormat Mp3 = 0; - public const GeneratedSpeechFormat Opus = 1; - public const GeneratedSpeechFormat Pcm = 5; - public const GeneratedSpeechFormat Wav = 4; - } - public sealed class GeneratedSpeechVoice { - public const GeneratedSpeechVoice Alloy = 0; - public const GeneratedSpeechVoice Echo = 1; - public const GeneratedSpeechVoice Fable = 2; - public const GeneratedSpeechVoice Nova = 4; - public const GeneratedSpeechVoice Onyx = 3; - public const GeneratedSpeechVoice Shimmer = 5; - } - public class SpeechGenerationOptions { - public SpeechGenerationOptions(); + AudioTranslationOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + AudioTranslationOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); + } + public enum GeneratedSpeechFormat { + Mp3 = 0, + Opus = 1, + Aac = 2, + Flac = 3, + Wav = 4, + Pcm = 5 + } + public enum GeneratedSpeechVoice { + Alloy = 0, + Echo = 1, + Fable = 2, + Onyx = 3, + Nova = 4, + Shimmer = 5 + } + public class SpeechGenerationOptions : IJsonModel, IPersistableModel { public GeneratedSpeechFormat? ResponseFormat { get; init; } public float? Speed { get; init; } - } - public sealed class TranscribedSegment { - public TranscribedSegment(); - public Double AverageLogProbability { get; } + SpeechGenerationOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + SpeechGenerationOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); + } + public readonly partial struct TranscribedSegment : IJsonModel, IPersistableModel, IJsonModel, IPersistableModel { + private readonly object _dummy; + private readonly int _dummyPrimitive; + public double AverageLogProbability { get; } public float CompressionRatio { get; } public TimeSpan End { get; } public int Id { get; } - public Double NoSpeechProbability { get; } + public double NoSpeechProbability { get; } public long SeekOffset { get; } public TimeSpan Start { get; } public float Temperature { get; } public string Text { get; } public IReadOnlyList TokenIds { get; } - } - public sealed class TranscribedWord { - public TranscribedWord(); + readonly TranscribedSegment IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + readonly void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + readonly object IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + readonly void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + readonly TranscribedSegment IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + readonly string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + readonly BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); + readonly object IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + readonly string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + readonly BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); + } + public readonly partial struct TranscribedWord : IJsonModel, IPersistableModel, IJsonModel, IPersistableModel { + private readonly object _dummy; + private readonly int _dummyPrimitive; public TimeSpan End { get; } public TimeSpan Start { get; } public string Word { get; } + readonly TranscribedWord IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + readonly void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + readonly object IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + readonly void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + readonly TranscribedWord IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + readonly string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + readonly BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); + readonly object IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + readonly string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + readonly BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } } namespace OpenAI.Batch { @@ -852,17 +1147,21 @@ namespace OpenAI.Batch { protected internal BatchClient(ClientPipeline pipeline, Uri endpoint, OpenAIClientOptions options); public virtual ClientPipeline Pipeline { get; } public virtual ClientResult CancelBatch(string batchId, RequestOptions options); + [Diagnostics.DebuggerStepThrough] public virtual Task CancelBatchAsync(string batchId, RequestOptions options); public virtual ClientResult CreateBatch(BinaryContent content, RequestOptions options = null); + [Diagnostics.DebuggerStepThrough] public virtual Task CreateBatchAsync(BinaryContent content, RequestOptions options = null); public virtual ClientResult GetBatch(string batchId, RequestOptions options); + [Diagnostics.DebuggerStepThrough] public virtual Task GetBatchAsync(string batchId, RequestOptions options); public virtual ClientResult GetBatches(string after, int? limit, RequestOptions options); + [Diagnostics.DebuggerStepThrough] public virtual Task GetBatchesAsync(string after, int? limit, RequestOptions options); } } namespace OpenAI.Chat { - public class AssistantChatMessage : ChatMessage { + public class AssistantChatMessage : ChatMessage, IJsonModel, IPersistableModel { public AssistantChatMessage(ChatCompletion chatCompletion); public AssistantChatMessage(ChatFunctionCall functionCall, string content = null); public AssistantChatMessage(IEnumerable toolCalls, string content = null); @@ -870,6 +1169,11 @@ namespace OpenAI.Chat { public ChatFunctionCall FunctionCall { get; init; } public string ParticipantName { get; init; } public IList ToolCalls { get; } + AssistantChatMessage IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + AssistantChatMessage IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); protected override void WriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options); } public class ChatClient { @@ -879,17 +1183,22 @@ namespace OpenAI.Chat { public ChatClient(string model, ApiKeyCredential credential, OpenAIClientOptions options = null); public virtual ClientPipeline Pipeline { get; } public virtual ClientResult CompleteChat(params ChatMessage[] messages); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult CompleteChat(BinaryContent content, RequestOptions options = null); public virtual ClientResult CompleteChat(IEnumerable messages, ChatCompletionOptions options = null, CancellationToken cancellationToken = default); + [Diagnostics.DebuggerStepThrough] public virtual Task> CompleteChatAsync(params ChatMessage[] messages); + [Diagnostics.DebuggerStepThrough] + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task CompleteChatAsync(BinaryContent content, RequestOptions options = null); + [Diagnostics.DebuggerStepThrough] public virtual Task> CompleteChatAsync(IEnumerable messages, ChatCompletionOptions options = null, CancellationToken cancellationToken = default); - public virtual CollectionResult CompleteChatStreaming(params ChatMessage[] messages); - public virtual CollectionResult CompleteChatStreaming(IEnumerable messages, ChatCompletionOptions options = null, CancellationToken cancellationToken = default); - public virtual AsyncCollectionResult CompleteChatStreamingAsync(params ChatMessage[] messages); - public virtual AsyncCollectionResult CompleteChatStreamingAsync(IEnumerable messages, ChatCompletionOptions options = null, CancellationToken cancellationToken = default); + public virtual ResultCollection CompleteChatStreaming(params ChatMessage[] messages); + public virtual ResultCollection CompleteChatStreaming(IEnumerable messages, ChatCompletionOptions options = null, CancellationToken cancellationToken = default); + public virtual AsyncResultCollection CompleteChatStreamingAsync(params ChatMessage[] messages); + public virtual AsyncResultCollection CompleteChatStreamingAsync(IEnumerable messages, ChatCompletionOptions options = null, CancellationToken cancellationToken = default); } - public class ChatCompletion { + public class ChatCompletion : IJsonModel, IPersistableModel { public IReadOnlyList Content { get; } public IReadOnlyList ContentTokenLogProbabilities { get; } public DateTimeOffset CreatedAt { get; } @@ -901,10 +1210,14 @@ namespace OpenAI.Chat { public string SystemFingerprint { get; } public IReadOnlyList ToolCalls { get; } public ChatTokenUsage Usage { get; } + ChatCompletion IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + ChatCompletion IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); public override string ToString(); } - public class ChatCompletionOptions { - public ChatCompletionOptions(); + public class ChatCompletionOptions : IJsonModel, IPersistableModel { public float? FrequencyPenalty { get; init; } public ChatFunctionChoice FunctionChoice { get; init; } public IList Functions { get; } @@ -922,32 +1235,52 @@ namespace OpenAI.Chat { public int? TopLogProbabilityCount { get; init; } public float? TopP { get; init; } public string User { get; init; } - } - public sealed class ChatFinishReason { - public const ChatFinishReason ContentFilter = 2; - public const ChatFinishReason FunctionCall = 4; - public const ChatFinishReason Length = 1; - public const ChatFinishReason Stop = 0; - public const ChatFinishReason ToolCalls = 3; - } - public class ChatFunction { + ChatCompletionOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + ChatCompletionOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); + } + public enum ChatFinishReason { + Stop = 0, + Length = 1, + ContentFilter = 2, + ToolCalls = 3, + FunctionCall = 4 + } + [Obsolete("This field is marked as deprecated.")] + public class ChatFunction : IJsonModel, IPersistableModel { public ChatFunction(string functionName, string functionDescription = null, BinaryData functionParameters = null); public string FunctionDescription { get; init; } public string FunctionName { get; } public BinaryData FunctionParameters { get; init; } + ChatFunction IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + ChatFunction IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public class ChatFunctionCall { + public class ChatFunctionCall : IJsonModel, IPersistableModel { public ChatFunctionCall(string functionName, string functionArguments); public string FunctionArguments { get; } public string FunctionName { get; } + ChatFunctionCall IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + ChatFunctionCall IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public class ChatFunctionChoice { + public class ChatFunctionChoice : IJsonModel, IPersistableModel { public ChatFunctionChoice(ChatFunction chatFunction); public static ChatFunctionChoice Auto { get; } public static ChatFunctionChoice None { get; } + ChatFunctionChoice IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + ChatFunctionChoice IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public abstract class ChatMessage { - protected ChatMessage(); + public abstract class ChatMessage : IJsonModel, IPersistableModel { public IList Content { get; protected init; } public static AssistantChatMessage CreateAssistantMessage(ChatCompletion chatCompletion); public static AssistantChatMessage CreateAssistantMessage(ChatFunctionCall functionCall, string content = null); @@ -960,9 +1293,14 @@ namespace OpenAI.Chat { public static UserChatMessage CreateUserMessage(IEnumerable contentParts); public static UserChatMessage CreateUserMessage(string content); public static implicit operator ChatMessage(string userMessage); + ChatMessage IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + ChatMessage IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); protected abstract void WriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options); } - public class ChatMessageContentPart { + public class ChatMessageContentPart : IJsonModel, IPersistableModel { public BinaryData ImageBytes { get; } public string ImageBytesMediaType { get; } public ImageChatMessageContentPartDetail? ImageDetail { get; } @@ -973,108 +1311,170 @@ namespace OpenAI.Chat { public static ChatMessageContentPart CreateImageMessageContentPart(Uri imageUri, ImageChatMessageContentPartDetail? imageDetail = null); public static ChatMessageContentPart CreateTextMessageContentPart(string text); public static implicit operator ChatMessageContentPart(string content); + ChatMessageContentPart IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + ChatMessageContentPart IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); public override string ToString(); } - public sealed class ChatMessageContentPartKind { + public readonly partial struct ChatMessageContentPartKind : IEquatable { + private readonly object _dummy; + private readonly int _dummyPrimitive; public ChatMessageContentPartKind(string value); public static ChatMessageContentPartKind Image { get; } public static ChatMessageContentPartKind Text { get; } - public bool Equals(ChatMessageContentPartKind other); - public override bool Equals(object obj); - public override int GetHashCode(); + public readonly bool Equals(ChatMessageContentPartKind other); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly bool Equals(object obj); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly int GetHashCode(); public static bool operator ==(ChatMessageContentPartKind left, ChatMessageContentPartKind right); public static implicit operator ChatMessageContentPartKind(string value); public static bool operator !=(ChatMessageContentPartKind left, ChatMessageContentPartKind right); - public override string ToString(); + public override readonly string ToString(); } - public sealed class ChatMessageRole { - public const ChatMessageRole Assistant = 2; - public const ChatMessageRole Function = 4; - public const ChatMessageRole System = 0; - public const ChatMessageRole Tool = 3; - public const ChatMessageRole User = 1; + public enum ChatMessageRole { + System = 0, + User = 1, + Assistant = 2, + Tool = 3, + Function = 4 } - public class ChatResponseFormat { + public class ChatResponseFormat : IJsonModel, IPersistableModel { public static ChatResponseFormat JsonObject { get; } public static ChatResponseFormat Text { get; } + ChatResponseFormat IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + ChatResponseFormat IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public class ChatTokenLogProbabilityInfo { + public class ChatTokenLogProbabilityInfo : IJsonModel, IPersistableModel { public float LogProbability { get; } public string Token { get; } public IReadOnlyList TopLogProbabilities { get; } public IReadOnlyList Utf8ByteValues { get; } + ChatTokenLogProbabilityInfo IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + ChatTokenLogProbabilityInfo IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public class ChatTokenTopLogProbabilityInfo { + public class ChatTokenTopLogProbabilityInfo : IJsonModel, IPersistableModel { public float LogProbability { get; } public string Token { get; } public IReadOnlyList Utf8ByteValues { get; } + ChatTokenTopLogProbabilityInfo IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + ChatTokenTopLogProbabilityInfo IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public class ChatTokenUsage { + public class ChatTokenUsage : IJsonModel, IPersistableModel { public int InputTokens { get; } public int OutputTokens { get; } public int TotalTokens { get; } + ChatTokenUsage IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + ChatTokenUsage IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public class ChatTool { + public class ChatTool : IJsonModel, IPersistableModel { public string FunctionDescription { get; } public string FunctionName { get; } public BinaryData FunctionParameters { get; } public ChatToolKind Kind { get; } public static ChatTool CreateFunctionTool(string functionName, string functionDescription = null, BinaryData functionParameters = null); + ChatTool IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + ChatTool IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public class ChatToolCall { + public class ChatToolCall : IJsonModel, IPersistableModel { public string FunctionArguments { get; } public string FunctionName { get; } public string Id { get; init; } public ChatToolCallKind Kind { get; } public static ChatToolCall CreateFunctionToolCall(string toolCallId, string functionName, string functionArguments); - } - public sealed class ChatToolCallKind { + ChatToolCall IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + ChatToolCall IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); + } + public readonly partial struct ChatToolCallKind : IEquatable { + private readonly object _dummy; + private readonly int _dummyPrimitive; public ChatToolCallKind(string value); public static ChatToolCallKind Function { get; } - public bool Equals(ChatToolCallKind other); - public override bool Equals(object obj); - public override int GetHashCode(); + public readonly bool Equals(ChatToolCallKind other); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly bool Equals(object obj); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly int GetHashCode(); public static bool operator ==(ChatToolCallKind left, ChatToolCallKind right); public static implicit operator ChatToolCallKind(string value); public static bool operator !=(ChatToolCallKind left, ChatToolCallKind right); - public override string ToString(); + public override readonly string ToString(); } - public class ChatToolChoice { + public class ChatToolChoice : IJsonModel, IPersistableModel { public ChatToolChoice(ChatTool tool); public static ChatToolChoice Auto { get; } public static ChatToolChoice None { get; } public static ChatToolChoice Required { get; } - } - public sealed class ChatToolKind { + ChatToolChoice IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + ChatToolChoice IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); + } + public readonly partial struct ChatToolKind : IEquatable { + private readonly object _dummy; + private readonly int _dummyPrimitive; public ChatToolKind(string value); public static ChatToolKind Function { get; } - public bool Equals(ChatToolKind other); - public override bool Equals(object obj); - public override int GetHashCode(); + public readonly bool Equals(ChatToolKind other); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly bool Equals(object obj); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly int GetHashCode(); public static bool operator ==(ChatToolKind left, ChatToolKind right); public static implicit operator ChatToolKind(string value); public static bool operator !=(ChatToolKind left, ChatToolKind right); - public override string ToString(); + public override readonly string ToString(); } - public class FunctionChatMessage : ChatMessage { + [Obsolete("This field is marked as deprecated.")] + public class FunctionChatMessage : ChatMessage, IJsonModel, IPersistableModel { public FunctionChatMessage(string functionName, string content = null); public string FunctionName { get; } + FunctionChatMessage IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + FunctionChatMessage IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); protected override void WriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options); } - public sealed class ImageChatMessageContentPartDetail { + public readonly partial struct ImageChatMessageContentPartDetail : IEquatable { + private readonly object _dummy; + private readonly int _dummyPrimitive; public ImageChatMessageContentPartDetail(string value); public static ImageChatMessageContentPartDetail Auto { get; } public static ImageChatMessageContentPartDetail High { get; } public static ImageChatMessageContentPartDetail Low { get; } - public bool Equals(ImageChatMessageContentPartDetail other); - public override bool Equals(object obj); - public override int GetHashCode(); + public readonly bool Equals(ImageChatMessageContentPartDetail other); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly bool Equals(object obj); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly int GetHashCode(); public static bool operator ==(ImageChatMessageContentPartDetail left, ImageChatMessageContentPartDetail right); public static implicit operator ImageChatMessageContentPartDetail(string value); public static bool operator !=(ImageChatMessageContentPartDetail left, ImageChatMessageContentPartDetail right); - public override string ToString(); + public override readonly string ToString(); } - public class StreamingChatCompletionUpdate { + public class StreamingChatCompletionUpdate : IJsonModel, IPersistableModel { public IReadOnlyList ContentTokenLogProbabilities { get; } public IReadOnlyList ContentUpdate { get; } public DateTimeOffset CreatedAt { get; } @@ -1086,40 +1486,75 @@ namespace OpenAI.Chat { public string SystemFingerprint { get; } public IReadOnlyList ToolCallUpdates { get; } public ChatTokenUsage Usage { get; } + StreamingChatCompletionUpdate IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + StreamingChatCompletionUpdate IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public class StreamingChatFunctionCallUpdate { + public class StreamingChatFunctionCallUpdate : IJsonModel, IPersistableModel { public string FunctionArgumentsUpdate { get; } public string FunctionName { get; } + StreamingChatFunctionCallUpdate IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + StreamingChatFunctionCallUpdate IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public class StreamingChatToolCallUpdate { + public class StreamingChatToolCallUpdate : IJsonModel, IPersistableModel { public string FunctionArgumentsUpdate { get; } public string FunctionName { get; } public string Id { get; } public int Index { get; } public ChatToolCallKind Kind { get; } + StreamingChatToolCallUpdate IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + StreamingChatToolCallUpdate IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public class SystemChatMessage : ChatMessage { + public class SystemChatMessage : ChatMessage, IJsonModel, IPersistableModel { public SystemChatMessage(string content); public string ParticipantName { get; init; } + SystemChatMessage IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + SystemChatMessage IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); protected override void WriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options); } - public class ToolChatMessage : ChatMessage { + public class ToolChatMessage : ChatMessage, IJsonModel, IPersistableModel { public ToolChatMessage(string toolCallId, string content); public string ToolCallId { get; } + ToolChatMessage IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + ToolChatMessage IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); protected override void WriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options); } - public class UserChatMessage : ChatMessage { + public class UserChatMessage : ChatMessage, IJsonModel, IPersistableModel { public UserChatMessage(params ChatMessageContentPart[] content); public UserChatMessage(IEnumerable content); public UserChatMessage(string content); public string ParticipantName { get; init; } + UserChatMessage IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + UserChatMessage IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); protected override void WriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options); } } namespace OpenAI.Embeddings { - public class Embedding { + public class Embedding : IJsonModel, IPersistableModel { public int Index { get; } public ReadOnlyMemory Vector { get; } + Embedding IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + Embedding IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } public class EmbeddingClient { protected EmbeddingClient(); @@ -1128,26 +1563,46 @@ namespace OpenAI.Embeddings { public EmbeddingClient(string model, ApiKeyCredential credential, OpenAIClientOptions options = null); public virtual ClientPipeline Pipeline { get; } public virtual ClientResult GenerateEmbedding(string input, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = default); + [Diagnostics.DebuggerStepThrough] public virtual Task> GenerateEmbeddingAsync(string input, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = default); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult GenerateEmbeddings(BinaryContent content, RequestOptions options = null); public virtual ClientResult GenerateEmbeddings(IEnumerable> inputs, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult GenerateEmbeddings(IEnumerable inputs, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = default); + [Diagnostics.DebuggerStepThrough] + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task GenerateEmbeddingsAsync(BinaryContent content, RequestOptions options = null); + [Diagnostics.DebuggerStepThrough] public virtual Task> GenerateEmbeddingsAsync(IEnumerable> inputs, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = default); + [Diagnostics.DebuggerStepThrough] public virtual Task> GenerateEmbeddingsAsync(IEnumerable inputs, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = default); } - public class EmbeddingCollection { + public class EmbeddingCollection : ObjectModel.ReadOnlyCollection, IJsonModel, IPersistableModel { public string Model { get; } public EmbeddingTokenUsage Usage { get; } + EmbeddingCollection IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + EmbeddingCollection IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public class EmbeddingGenerationOptions { - public EmbeddingGenerationOptions(); + public class EmbeddingGenerationOptions : IJsonModel, IPersistableModel { public int? Dimensions { get; init; } public string User { get; init; } + EmbeddingGenerationOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + EmbeddingGenerationOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public class EmbeddingTokenUsage { + public class EmbeddingTokenUsage : IJsonModel, IPersistableModel { public int InputTokens { get; } public int TotalTokens { get; } + EmbeddingTokenUsage IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + EmbeddingTokenUsage IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } } namespace OpenAI.Files { @@ -1157,65 +1612,75 @@ namespace OpenAI.Files { public FileClient(ApiKeyCredential credential, OpenAIClientOptions options = null); protected internal FileClient(ClientPipeline pipeline, Uri endpoint, OpenAIClientOptions options); public virtual ClientPipeline Pipeline { get; } - public virtual IncrementalUploadJob CreateIncrementalUploadJob(BinaryContent content, RequestOptions options); - public virtual Task CreateIncrementalUploadJobAsync(BinaryContent content, RequestOptions options); public virtual ClientResult DeleteFile(OpenAIFileInfo file); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult DeleteFile(string fileId, RequestOptions options); public virtual ClientResult DeleteFile(string fileId, CancellationToken cancellationToken = default); public virtual Task> DeleteFileAsync(OpenAIFileInfo file); + [Diagnostics.DebuggerStepThrough] + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task DeleteFileAsync(string fileId, RequestOptions options); + [Diagnostics.DebuggerStepThrough] public virtual Task> DeleteFileAsync(string fileId, CancellationToken cancellationToken = default); public virtual ClientResult DownloadFile(OpenAIFileInfo file); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult DownloadFile(string fileId, RequestOptions options); public virtual ClientResult DownloadFile(string fileId, CancellationToken cancellationToken = default); public virtual Task> DownloadFileAsync(OpenAIFileInfo file); + [Diagnostics.DebuggerStepThrough] + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task DownloadFileAsync(string fileId, RequestOptions options); + [Diagnostics.DebuggerStepThrough] public virtual Task> DownloadFileAsync(string fileId, CancellationToken cancellationToken = default); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult GetFile(string fileId, RequestOptions options); public virtual ClientResult GetFile(string fileId, CancellationToken cancellationToken = default); + [Diagnostics.DebuggerStepThrough] + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task GetFileAsync(string fileId, RequestOptions options); + [Diagnostics.DebuggerStepThrough] public virtual Task> GetFileAsync(string fileId, CancellationToken cancellationToken = default); public virtual ClientResult GetFiles(OpenAIFilePurpose? purpose = null, CancellationToken cancellationToken = default); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult GetFiles(string purpose, RequestOptions options); + [Diagnostics.DebuggerStepThrough] public virtual Task> GetFilesAsync(OpenAIFilePurpose? purpose = null, CancellationToken cancellationToken = default); + [Diagnostics.DebuggerStepThrough] + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task GetFilesAsync(string purpose, RequestOptions options); public virtual ClientResult UploadFile(BinaryData file, string filename, FileUploadPurpose purpose); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult UploadFile(BinaryContent content, string contentType, RequestOptions options = null); public virtual ClientResult UploadFile(Stream file, string filename, FileUploadPurpose purpose, CancellationToken cancellationToken = default); public virtual ClientResult UploadFile(string filePath, FileUploadPurpose purpose); public virtual Task> UploadFileAsync(BinaryData file, string filename, FileUploadPurpose purpose); + [Diagnostics.DebuggerStepThrough] + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task UploadFileAsync(BinaryContent content, string contentType, RequestOptions options = null); + [Diagnostics.DebuggerStepThrough] public virtual Task> UploadFileAsync(Stream file, string filename, FileUploadPurpose purpose, CancellationToken cancellationToken = default); + [Diagnostics.DebuggerStepThrough] public virtual Task> UploadFileAsync(string filePath, FileUploadPurpose purpose); } - public sealed class FileUploadPurpose { + public readonly partial struct FileUploadPurpose : IEquatable { + private readonly object _dummy; + private readonly int _dummyPrimitive; public FileUploadPurpose(string value); public static FileUploadPurpose Assistants { get; } public static FileUploadPurpose Batch { get; } public static FileUploadPurpose FineTune { get; } public static FileUploadPurpose Vision { get; } - public bool Equals(FileUploadPurpose other); - public override bool Equals(object obj); - public override int GetHashCode(); + public readonly bool Equals(FileUploadPurpose other); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly bool Equals(object obj); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly int GetHashCode(); public static bool operator ==(FileUploadPurpose left, FileUploadPurpose right); public static implicit operator FileUploadPurpose(string value); public static bool operator !=(FileUploadPurpose left, FileUploadPurpose right); - public override string ToString(); + public override readonly string ToString(); } - public class IncrementalUploadJob { - public DateTimeOffset CreatedAt { get; } - public DateTimeOffset ExpiresAt { get; } - public string Id { get; } - public ContinuationToken RehydrationToken { get; } - public virtual ClientResult AddDataPart(string jobId, BinaryContent content, string contentType, RequestOptions options); - public virtual Task AddDataPartAsync(string jobId, BinaryContent content, string contentType, RequestOptions options); - public virtual ClientResult Cancel(string jobId, RequestOptions options); - public virtual Task CancelAsync(string jobId, RequestOptions options); - public virtual ClientResult Complete(string jobId, BinaryContent content, RequestOptions options); - public virtual Task CompleteAsync(string jobId, BinaryContent content, RequestOptions options); - public static IncrementalUploadJob Rehydrate(FileClient client, ContinuationToken rehydrationToken); - } - public class OpenAIFileInfo { + public class OpenAIFileInfo : IJsonModel, IPersistableModel { public DateTimeOffset CreatedAt { get; } public string Filename { get; } public string Id { get; } @@ -1223,10 +1688,22 @@ namespace OpenAI.Files { public long? SizeInBytes { get; } public OpenAIFileStatus Status { get; } public string StatusDetails { get; } - } - public class OpenAIFileInfoCollection { - } - public sealed class OpenAIFilePurpose { + OpenAIFileInfo IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + OpenAIFileInfo IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); + } + public class OpenAIFileInfoCollection : ObjectModel.ReadOnlyCollection, IJsonModel, IPersistableModel { + OpenAIFileInfoCollection IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + OpenAIFileInfoCollection IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); + } + public readonly partial struct OpenAIFilePurpose : IEquatable { + private readonly object _dummy; + private readonly int _dummyPrimitive; public OpenAIFilePurpose(string value); public static OpenAIFilePurpose Assistants { get; } public static OpenAIFilePurpose AssistantsOutput { get; } @@ -1235,26 +1712,32 @@ namespace OpenAI.Files { public static OpenAIFilePurpose FineTune { get; } public static OpenAIFilePurpose FineTuneResults { get; } public static OpenAIFilePurpose Vision { get; } - public bool Equals(OpenAIFilePurpose other); - public override bool Equals(object obj); - public override int GetHashCode(); + public readonly bool Equals(OpenAIFilePurpose other); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly bool Equals(object obj); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly int GetHashCode(); public static bool operator ==(OpenAIFilePurpose left, OpenAIFilePurpose right); public static implicit operator OpenAIFilePurpose(string value); public static bool operator !=(OpenAIFilePurpose left, OpenAIFilePurpose right); - public override string ToString(); + public override readonly string ToString(); } - public sealed class OpenAIFileStatus { + public readonly partial struct OpenAIFileStatus : IEquatable { + private readonly object _dummy; + private readonly int _dummyPrimitive; public OpenAIFileStatus(string value); public static OpenAIFileStatus Error { get; } public static OpenAIFileStatus Processed { get; } public static OpenAIFileStatus Uploaded { get; } - public bool Equals(OpenAIFileStatus other); - public override bool Equals(object obj); - public override int GetHashCode(); + public readonly bool Equals(OpenAIFileStatus other); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly bool Equals(object obj); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly int GetHashCode(); public static bool operator ==(OpenAIFileStatus left, OpenAIFileStatus right); public static implicit operator OpenAIFileStatus(string value); public static bool operator !=(OpenAIFileStatus left, OpenAIFileStatus right); - public override string ToString(); + public override readonly string ToString(); } } namespace OpenAI.FineTuning { @@ -1265,54 +1748,74 @@ namespace OpenAI.FineTuning { protected internal FineTuningClient(ClientPipeline pipeline, Uri endpoint, OpenAIClientOptions options); public virtual ClientPipeline Pipeline { get; } public virtual ClientResult CancelJob(string jobId, RequestOptions options); + [Diagnostics.DebuggerStepThrough] public virtual Task CancelJobAsync(string jobId, RequestOptions options); public virtual ClientResult CreateJob(BinaryContent content, RequestOptions options = null); + [Diagnostics.DebuggerStepThrough] public virtual Task CreateJobAsync(BinaryContent content, RequestOptions options = null); public virtual ClientResult GetJob(string jobId, RequestOptions options); + [Diagnostics.DebuggerStepThrough] public virtual Task GetJobAsync(string jobId, RequestOptions options); public virtual ClientResult GetJobCheckpoints(string fineTuningJobId, string after, int? limit, RequestOptions options); + [Diagnostics.DebuggerStepThrough] public virtual Task GetJobCheckpointsAsync(string fineTuningJobId, string after, int? limit, RequestOptions options); public virtual ClientResult GetJobEvents(string jobId, string after, int? limit, RequestOptions options); + [Diagnostics.DebuggerStepThrough] public virtual Task GetJobEventsAsync(string jobId, string after, int? limit, RequestOptions options); public virtual ClientResult GetJobs(string after, int? limit, RequestOptions options); + [Diagnostics.DebuggerStepThrough] public virtual Task GetJobsAsync(string after, int? limit, RequestOptions options); } } namespace OpenAI.Images { - public class GeneratedImage { + public class GeneratedImage : IJsonModel, IPersistableModel { public BinaryData ImageBytes { get; } public Uri ImageUri { get; } public string RevisedPrompt { get; } + GeneratedImage IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + GeneratedImage IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public class GeneratedImageCollection { + public class GeneratedImageCollection : ObjectModel.ReadOnlyCollection, IJsonModel, IPersistableModel { public DateTimeOffset Created { get; } public DateTimeOffset CreatedAt { get; } - } - public sealed class GeneratedImageFormat { - public const GeneratedImageFormat Bytes = 0; - public const GeneratedImageFormat Uri = 1; - } - public sealed class GeneratedImageQuality { - public const GeneratedImageQuality High = 0; - public const GeneratedImageQuality Standard = 1; - } - public sealed class GeneratedImageSize { + GeneratedImageCollection IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + GeneratedImageCollection IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); + } + public enum GeneratedImageFormat { + Bytes = 0, + Uri = 1 + } + public enum GeneratedImageQuality { + High = 0, + Standard = 1 + } + public readonly partial struct GeneratedImageSize : IEquatable { + private readonly object _dummy; + private readonly int _dummyPrimitive; public static readonly GeneratedImageSize W1024xH1024; public static readonly GeneratedImageSize W1024xH1792; public static readonly GeneratedImageSize W1792xH1024; public static readonly GeneratedImageSize W256xH256; public static readonly GeneratedImageSize W512xH512; public GeneratedImageSize(int width, int height); - public bool Equals(GeneratedImageSize other); - public override bool Equals(object obj); - public override int GetHashCode(); + public readonly bool Equals(GeneratedImageSize other); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly bool Equals(object obj); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly int GetHashCode(); public static bool operator ==(GeneratedImageSize left, GeneratedImageSize right); public static bool operator !=(GeneratedImageSize left, GeneratedImageSize right); - public override string ToString(); + public override readonly string ToString(); } - public sealed class GeneratedImageStyle { - public const GeneratedImageStyle Natural = 1; - public const GeneratedImageStyle Vivid = 0; + public enum GeneratedImageStyle { + Vivid = 0, + Natural = 1 } public class ImageClient { protected ImageClient(); @@ -1321,59 +1824,94 @@ namespace OpenAI.Images { public ImageClient(string model, ApiKeyCredential credential, OpenAIClientOptions options = null); public virtual ClientPipeline Pipeline { get; } public virtual ClientResult GenerateImage(string prompt, ImageGenerationOptions options = null, CancellationToken cancellationToken = default); + [Diagnostics.DebuggerStepThrough] public virtual Task> GenerateImageAsync(string prompt, ImageGenerationOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult GenerateImageEdit(Stream image, string imageFilename, string prompt, ImageEditOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult GenerateImageEdit(Stream image, string imageFilename, string prompt, Stream mask, string maskFilename, ImageEditOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult GenerateImageEdit(string imageFilePath, string prompt, ImageEditOptions options = null); public virtual ClientResult GenerateImageEdit(string imageFilePath, string prompt, string maskFilePath, ImageEditOptions options = null); + [Diagnostics.DebuggerStepThrough] public virtual Task> GenerateImageEditAsync(Stream image, string imageFilename, string prompt, ImageEditOptions options = null, CancellationToken cancellationToken = default); + [Diagnostics.DebuggerStepThrough] public virtual Task> GenerateImageEditAsync(Stream image, string imageFilename, string prompt, Stream mask, string maskFilename, ImageEditOptions options = null, CancellationToken cancellationToken = default); + [Diagnostics.DebuggerStepThrough] public virtual Task> GenerateImageEditAsync(string imageFilePath, string prompt, ImageEditOptions options = null); + [Diagnostics.DebuggerStepThrough] public virtual Task> GenerateImageEditAsync(string imageFilePath, string prompt, string maskFilePath, ImageEditOptions options = null); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult GenerateImageEdits(BinaryContent content, string contentType, RequestOptions options = null); public virtual ClientResult GenerateImageEdits(Stream image, string imageFilename, string prompt, int imageCount, ImageEditOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult GenerateImageEdits(Stream image, string imageFilename, string prompt, Stream mask, string maskFilename, int imageCount, ImageEditOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult GenerateImageEdits(string imageFilePath, string prompt, int imageCount, ImageEditOptions options = null); public virtual ClientResult GenerateImageEdits(string imageFilePath, string prompt, string maskFilePath, int imageCount, ImageEditOptions options = null); + [Diagnostics.DebuggerStepThrough] + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task GenerateImageEditsAsync(BinaryContent content, string contentType, RequestOptions options = null); + [Diagnostics.DebuggerStepThrough] public virtual Task> GenerateImageEditsAsync(Stream image, string imageFilename, string prompt, int imageCount, ImageEditOptions options = null, CancellationToken cancellationToken = default); + [Diagnostics.DebuggerStepThrough] public virtual Task> GenerateImageEditsAsync(Stream image, string imageFilename, string prompt, Stream mask, string maskFilename, int imageCount, ImageEditOptions options = null, CancellationToken cancellationToken = default); + [Diagnostics.DebuggerStepThrough] public virtual Task> GenerateImageEditsAsync(string imageFilePath, string prompt, int imageCount, ImageEditOptions options = null); + [Diagnostics.DebuggerStepThrough] public virtual Task> GenerateImageEditsAsync(string imageFilePath, string prompt, string maskFilePath, int imageCount, ImageEditOptions options = null); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult GenerateImages(BinaryContent content, RequestOptions options = null); public virtual ClientResult GenerateImages(string prompt, int imageCount, ImageGenerationOptions options = null, CancellationToken cancellationToken = default); + [Diagnostics.DebuggerStepThrough] + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task GenerateImagesAsync(BinaryContent content, RequestOptions options = null); + [Diagnostics.DebuggerStepThrough] public virtual Task> GenerateImagesAsync(string prompt, int imageCount, ImageGenerationOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult GenerateImageVariation(Stream image, string imageFilename, ImageVariationOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult GenerateImageVariation(string imageFilePath, ImageVariationOptions options = null); + [Diagnostics.DebuggerStepThrough] public virtual Task> GenerateImageVariationAsync(Stream image, string imageFilename, ImageVariationOptions options = null, CancellationToken cancellationToken = default); + [Diagnostics.DebuggerStepThrough] public virtual Task> GenerateImageVariationAsync(string imageFilePath, ImageVariationOptions options = null); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult GenerateImageVariations(BinaryContent content, string contentType, RequestOptions options = null); public virtual ClientResult GenerateImageVariations(Stream image, string imageFilename, int imageCount, ImageVariationOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult GenerateImageVariations(string imageFilePath, int imageCount, ImageVariationOptions options = null); + [Diagnostics.DebuggerStepThrough] + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task GenerateImageVariationsAsync(BinaryContent content, string contentType, RequestOptions options = null); + [Diagnostics.DebuggerStepThrough] public virtual Task> GenerateImageVariationsAsync(Stream image, string imageFilename, int imageCount, ImageVariationOptions options = null, CancellationToken cancellationToken = default); + [Diagnostics.DebuggerStepThrough] public virtual Task> GenerateImageVariationsAsync(string imageFilePath, int imageCount, ImageVariationOptions options = null); } - public class ImageEditOptions { - public ImageEditOptions(); + public class ImageEditOptions : IJsonModel, IPersistableModel { public GeneratedImageFormat? ResponseFormat { get; init; } public GeneratedImageSize? Size { get; init; } public string User { get; init; } + ImageEditOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + ImageEditOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public class ImageGenerationOptions { - public ImageGenerationOptions(); + public class ImageGenerationOptions : IJsonModel, IPersistableModel { public GeneratedImageQuality? Quality { get; init; } public GeneratedImageFormat? ResponseFormat { get; init; } public GeneratedImageSize? Size { get; init; } public GeneratedImageStyle? Style { get; init; } public string User { get; init; } + ImageGenerationOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + ImageGenerationOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public class ImageVariationOptions { - public ImageVariationOptions(); + public class ImageVariationOptions : IJsonModel, IPersistableModel { public GeneratedImageFormat? ResponseFormat { get; init; } public GeneratedImageSize? Size { get; init; } public string User { get; init; } + ImageVariationOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + ImageVariationOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } } namespace OpenAI.Models { @@ -1383,29 +1921,51 @@ namespace OpenAI.Models { public ModelClient(ApiKeyCredential credential, OpenAIClientOptions options = null); protected internal ModelClient(ClientPipeline pipeline, Uri endpoint, OpenAIClientOptions options); public virtual ClientPipeline Pipeline { get; } + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult DeleteModel(string model, RequestOptions options); public virtual ClientResult DeleteModel(string model); + [Diagnostics.DebuggerStepThrough] + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task DeleteModelAsync(string model, RequestOptions options); + [Diagnostics.DebuggerStepThrough] public virtual Task> DeleteModelAsync(string model); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult GetModel(string model, RequestOptions options); public virtual ClientResult GetModel(string model); + [Diagnostics.DebuggerStepThrough] + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task GetModelAsync(string model, RequestOptions options); + [Diagnostics.DebuggerStepThrough] public virtual Task> GetModelAsync(string model); public virtual ClientResult GetModels(); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult GetModels(RequestOptions options); + [Diagnostics.DebuggerStepThrough] public virtual Task> GetModelsAsync(); + [Diagnostics.DebuggerStepThrough] + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task GetModelsAsync(RequestOptions options); } - public class OpenAIModelInfo { + public class OpenAIModelInfo : IJsonModel, IPersistableModel { public DateTimeOffset CreatedAt { get; } public string Id { get; } public string OwnedBy { get; } - } - public class OpenAIModelInfoCollection { + OpenAIModelInfo IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + OpenAIModelInfo IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); + } + public class OpenAIModelInfoCollection : ObjectModel.ReadOnlyCollection, IJsonModel, IPersistableModel { + OpenAIModelInfoCollection IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + OpenAIModelInfoCollection IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } } namespace OpenAI.Moderations { - public class ModerationCategories { + public class ModerationCategories : IJsonModel, IPersistableModel { public bool Harassment { get; } public bool HarassmentThreatening { get; } public bool Hate { get; } @@ -1417,8 +1977,13 @@ namespace OpenAI.Moderations { public bool SexualMinors { get; } public bool Violence { get; } public bool ViolenceGraphic { get; } + ModerationCategories IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + ModerationCategories IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public class ModerationCategoryScores { + public class ModerationCategoryScores : IJsonModel, IPersistableModel { public float Harassment { get; } public float HarassmentThreatening { get; } public float Hate { get; } @@ -1430,6 +1995,11 @@ namespace OpenAI.Moderations { public float SexualMinors { get; } public float Violence { get; } public float ViolenceGraphic { get; } + ModerationCategoryScores IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + ModerationCategoryScores IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } public class ModerationClient { protected ModerationClient(); @@ -1438,35 +2008,59 @@ namespace OpenAI.Moderations { public ModerationClient(string model, ApiKeyCredential credential, OpenAIClientOptions options = null); public virtual ClientPipeline Pipeline { get; } public virtual ClientResult ClassifyTextInput(string input, CancellationToken cancellationToken = default); + [Diagnostics.DebuggerStepThrough] public virtual Task> ClassifyTextInputAsync(string input, CancellationToken cancellationToken = default); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult ClassifyTextInputs(BinaryContent content, RequestOptions options = null); public virtual ClientResult ClassifyTextInputs(IEnumerable inputs, CancellationToken cancellationToken = default); + [Diagnostics.DebuggerStepThrough] + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task ClassifyTextInputsAsync(BinaryContent content, RequestOptions options = null); + [Diagnostics.DebuggerStepThrough] public virtual Task> ClassifyTextInputsAsync(IEnumerable inputs, CancellationToken cancellationToken = default); } - public class ModerationCollection { + public class ModerationCollection : ObjectModel.ReadOnlyCollection, IJsonModel, IPersistableModel { public string Id { get; } public string Model { get; } + ModerationCollection IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + ModerationCollection IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public class ModerationResult { + public class ModerationResult : IJsonModel, IPersistableModel { public ModerationCategories Categories { get; } public ModerationCategoryScores CategoryScores { get; } public bool Flagged { get; } + ModerationResult IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + ModerationResult IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } } namespace OpenAI.VectorStores { - public abstract class FileChunkingStrategy { - protected FileChunkingStrategy(); + public abstract class FileChunkingStrategy : IJsonModel, IPersistableModel { public static FileChunkingStrategy Auto { get; } public static FileChunkingStrategy Unknown { get; } public static FileChunkingStrategy CreateStaticStrategy(int maxTokensPerChunk, int overlappingTokenCount); + FileChunkingStrategy IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + FileChunkingStrategy IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public class StaticFileChunkingStrategy : FileChunkingStrategy { + public class StaticFileChunkingStrategy : FileChunkingStrategy, IJsonModel, IPersistableModel { public StaticFileChunkingStrategy(int maxTokensPerChunk, int overlappingTokenCount); public int MaxTokensPerChunk { get; } public int OverlappingTokenCount { get; } + StaticFileChunkingStrategy IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + StaticFileChunkingStrategy IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public class VectorStore { + public class VectorStore : IJsonModel, IPersistableModel { public DateTimeOffset CreatedAt { get; } public VectorStoreExpirationPolicy ExpirationPolicy { get; } public DateTimeOffset? ExpiresAt { get; } @@ -1477,27 +2071,41 @@ namespace OpenAI.VectorStores { public string Name { get; } public VectorStoreStatus Status { get; } public int UsageBytes { get; } + VectorStore IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + VectorStore IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public class VectorStoreBatchFileJob { + public class VectorStoreBatchFileJob : IJsonModel, IPersistableModel { public string BatchId { get; } public DateTimeOffset CreatedAt { get; } public VectorStoreFileCounts FileCounts { get; } public VectorStoreBatchFileJobStatus Status { get; } public string VectorStoreId { get; } - } - public sealed class VectorStoreBatchFileJobStatus { + VectorStoreBatchFileJob IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + VectorStoreBatchFileJob IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); + } + public readonly partial struct VectorStoreBatchFileJobStatus : IEquatable { + private readonly object _dummy; + private readonly int _dummyPrimitive; public VectorStoreBatchFileJobStatus(string value); public static VectorStoreBatchFileJobStatus Cancelled { get; } public static VectorStoreBatchFileJobStatus Completed { get; } public static VectorStoreBatchFileJobStatus Failed { get; } public static VectorStoreBatchFileJobStatus InProgress { get; } - public bool Equals(VectorStoreBatchFileJobStatus other); - public override bool Equals(object obj); - public override int GetHashCode(); + public readonly bool Equals(VectorStoreBatchFileJobStatus other); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly bool Equals(object obj); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly int GetHashCode(); public static bool operator ==(VectorStoreBatchFileJobStatus left, VectorStoreBatchFileJobStatus right); public static implicit operator VectorStoreBatchFileJobStatus(string value); public static bool operator !=(VectorStoreBatchFileJobStatus left, VectorStoreBatchFileJobStatus right); - public override string ToString(); + public override readonly string ToString(); } public class VectorStoreClient { protected VectorStoreClient(); @@ -1506,112 +2114,156 @@ namespace OpenAI.VectorStores { protected internal VectorStoreClient(ClientPipeline pipeline, Uri endpoint, OpenAIClientOptions options); public virtual ClientPipeline Pipeline { get; } public virtual ClientResult AddFileToVectorStore(VectorStore vectorStore, Files.OpenAIFileInfo file); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult AddFileToVectorStore(string vectorStoreId, BinaryContent content, RequestOptions options = null); public virtual ClientResult AddFileToVectorStore(string vectorStoreId, string fileId, CancellationToken cancellationToken = default); public virtual Task> AddFileToVectorStoreAsync(VectorStore vectorStore, Files.OpenAIFileInfo file); + [Diagnostics.DebuggerStepThrough] + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task AddFileToVectorStoreAsync(string vectorStoreId, BinaryContent content, RequestOptions options = null); + [Diagnostics.DebuggerStepThrough] public virtual Task> AddFileToVectorStoreAsync(string vectorStoreId, string fileId, CancellationToken cancellationToken = default); public virtual ClientResult CancelBatchFileJob(VectorStoreBatchFileJob batchJob); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult CancelBatchFileJob(string vectorStoreId, string batchId, RequestOptions options); public virtual ClientResult CancelBatchFileJob(string vectorStoreId, string batchJobId, CancellationToken cancellationToken = default); public virtual Task> CancelBatchFileJobAsync(VectorStoreBatchFileJob batchJob); + [Diagnostics.DebuggerStepThrough] + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task CancelBatchFileJobAsync(string vectorStoreId, string batchId, RequestOptions options); + [Diagnostics.DebuggerStepThrough] public virtual Task> CancelBatchFileJobAsync(string vectorStoreId, string batchJobId, CancellationToken cancellationToken = default); public virtual ClientResult CreateBatchFileJob(VectorStore vectorStore, IEnumerable files); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult CreateBatchFileJob(string vectorStoreId, BinaryContent content, RequestOptions options = null); public virtual ClientResult CreateBatchFileJob(string vectorStoreId, IEnumerable fileIds, CancellationToken cancellationToken = default); public virtual Task> CreateBatchFileJobAsync(VectorStore vectorStore, IEnumerable files); + [Diagnostics.DebuggerStepThrough] + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task CreateBatchFileJobAsync(string vectorStoreId, BinaryContent content, RequestOptions options = null); + [Diagnostics.DebuggerStepThrough] public virtual Task> CreateBatchFileJobAsync(string vectorStoreId, IEnumerable fileIds, CancellationToken cancellationToken = default); public virtual ClientResult CreateVectorStore(VectorStoreCreationOptions vectorStore = null, CancellationToken cancellationToken = default); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult CreateVectorStore(BinaryContent content, RequestOptions options = null); + [Diagnostics.DebuggerStepThrough] public virtual Task> CreateVectorStoreAsync(VectorStoreCreationOptions vectorStore = null, CancellationToken cancellationToken = default); + [Diagnostics.DebuggerStepThrough] public virtual Task CreateVectorStoreAsync(BinaryContent content, RequestOptions options = null); public virtual ClientResult DeleteVectorStore(VectorStore vectorStore); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult DeleteVectorStore(string vectorStoreId, RequestOptions options); public virtual ClientResult DeleteVectorStore(string vectorStoreId, CancellationToken cancellationToken = default); public virtual Task> DeleteVectorStoreAsync(VectorStore vectorStore); + [Diagnostics.DebuggerStepThrough] + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task DeleteVectorStoreAsync(string vectorStoreId, RequestOptions options); + [Diagnostics.DebuggerStepThrough] public virtual Task> DeleteVectorStoreAsync(string vectorStoreId, CancellationToken cancellationToken = default); public virtual ClientResult GetBatchFileJob(VectorStoreBatchFileJob batchJob); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult GetBatchFileJob(string vectorStoreId, string batchId, RequestOptions options); public virtual ClientResult GetBatchFileJob(string vectorStoreId, string batchJobId, CancellationToken cancellationToken = default); public virtual Task> GetBatchFileJobAsync(VectorStoreBatchFileJob batchJob); + [Diagnostics.DebuggerStepThrough] + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task GetBatchFileJobAsync(string vectorStoreId, string batchId, RequestOptions options); + [Diagnostics.DebuggerStepThrough] public virtual Task> GetBatchFileJobAsync(string vectorStoreId, string batchJobId, CancellationToken cancellationToken = default); public virtual ClientResult GetFileAssociation(VectorStore vectorStore, Files.OpenAIFileInfo file); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult GetFileAssociation(string vectorStoreId, string fileId, RequestOptions options); public virtual ClientResult GetFileAssociation(string vectorStoreId, string fileId, CancellationToken cancellationToken = default); public virtual Task> GetFileAssociationAsync(VectorStore vectorStore, Files.OpenAIFileInfo file); + [Diagnostics.DebuggerStepThrough] + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task GetFileAssociationAsync(string vectorStoreId, string fileId, RequestOptions options); + [Diagnostics.DebuggerStepThrough] public virtual Task> GetFileAssociationAsync(string vectorStoreId, string fileId, CancellationToken cancellationToken = default); - public virtual PageCollection GetFileAssociations(VectorStore vectorStore, VectorStoreFileAssociationCollectionOptions options = null); - public virtual PageCollection GetFileAssociations(VectorStoreBatchFileJob batchJob, VectorStoreFileAssociationCollectionOptions options = null); - public virtual PageCollection GetFileAssociations(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); - public virtual PageCollection GetFileAssociations(string vectorStoreId, VectorStoreFileAssociationCollectionOptions options = null, CancellationToken cancellationToken = default); - public virtual IEnumerable GetFileAssociations(string vectorStoreId, int? limit, string order, string after, string before, string filter, RequestOptions options); - public virtual PageCollection GetFileAssociations(string vectorStoreId, string batchJobId, VectorStoreFileAssociationCollectionOptions options = null, CancellationToken cancellationToken = default); - public virtual PageCollection GetFileAssociations(string vectorStoreId, string batchJobId, ContinuationToken firstPageToken, CancellationToken cancellationToken = default); - public virtual IEnumerable GetFileAssociations(string vectorStoreId, string batchId, int? limit, string order, string after, string before, string filter, RequestOptions options); - public virtual AsyncPageCollection GetFileAssociationsAsync(VectorStore vectorStore, VectorStoreFileAssociationCollectionOptions options = null); - public virtual AsyncPageCollection GetFileAssociationsAsync(VectorStoreBatchFileJob batchJob, VectorStoreFileAssociationCollectionOptions options = null); - public virtual AsyncPageCollection GetFileAssociationsAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); - public virtual AsyncPageCollection GetFileAssociationsAsync(string vectorStoreId, VectorStoreFileAssociationCollectionOptions options = null, CancellationToken cancellationToken = default); - public virtual IAsyncEnumerable GetFileAssociationsAsync(string vectorStoreId, int? limit, string order, string after, string before, string filter, RequestOptions options); - public virtual AsyncPageCollection GetFileAssociationsAsync(string vectorStoreId, string batchJobId, VectorStoreFileAssociationCollectionOptions options = null, CancellationToken cancellationToken = default); - public virtual AsyncPageCollection GetFileAssociationsAsync(string vectorStoreId, string batchJobId, ContinuationToken firstPageToken, CancellationToken cancellationToken = default); - public virtual IAsyncEnumerable GetFileAssociationsAsync(string vectorStoreId, string batchId, int? limit, string order, string after, string before, string filter, RequestOptions options); + public virtual PageableCollection GetFileAssociations(VectorStore vectorStore, ListOrder? resultOrder = null, VectorStoreFileStatusFilter? filter = null); + public virtual PageableCollection GetFileAssociations(VectorStoreBatchFileJob batchJob, ListOrder? resultOrder = null, VectorStoreFileStatusFilter? filter = null); + public virtual PageableCollection GetFileAssociations(string vectorStoreId, ListOrder? resultOrder = null, VectorStoreFileStatusFilter? filter = null, CancellationToken cancellationToken = default); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public virtual ClientResult GetFileAssociations(string vectorStoreId, int? limit, string order, string after, string before, string filter, RequestOptions options); + public virtual PageableCollection GetFileAssociations(string vectorStoreId, string batchJobId, ListOrder? resultOrder = null, VectorStoreFileStatusFilter? filter = null, CancellationToken cancellationToken = default); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public virtual ClientResult GetFileAssociations(string vectorStoreId, string batchId, int? limit, string order, string after, string before, string filter, RequestOptions options); + public virtual AsyncPageableCollection GetFileAssociationsAsync(VectorStore vectorStore, ListOrder? resultOrder = null, VectorStoreFileStatusFilter? filter = null); + public virtual AsyncPageableCollection GetFileAssociationsAsync(VectorStoreBatchFileJob batchJob, ListOrder? resultOrder = null, VectorStoreFileStatusFilter? filter = null); + public virtual AsyncPageableCollection GetFileAssociationsAsync(string vectorStoreId, ListOrder? resultOrder = null, VectorStoreFileStatusFilter? filter = null, CancellationToken cancellationToken = default); + [Diagnostics.DebuggerStepThrough] + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public virtual Task GetFileAssociationsAsync(string vectorStoreId, int? limit, string order, string after, string before, string filter, RequestOptions options); + public virtual AsyncPageableCollection GetFileAssociationsAsync(string vectorStoreId, string batchJobId, ListOrder? resultOrder = null, VectorStoreFileStatusFilter? filter = null, CancellationToken cancellationToken = default); + [Diagnostics.DebuggerStepThrough] + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public virtual Task GetFileAssociationsAsync(string vectorStoreId, string batchId, int? limit, string order, string after, string before, string filter, RequestOptions options); public virtual ClientResult GetVectorStore(VectorStore vectorStore); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult GetVectorStore(string vectorStoreId, RequestOptions options); public virtual ClientResult GetVectorStore(string vectorStoreId, CancellationToken cancellationToken = default); public virtual Task> GetVectorStoreAsync(VectorStore vectorStore); + [Diagnostics.DebuggerStepThrough] + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task GetVectorStoreAsync(string vectorStoreId, RequestOptions options); + [Diagnostics.DebuggerStepThrough] public virtual Task> GetVectorStoreAsync(string vectorStoreId, CancellationToken cancellationToken = default); - public virtual PageCollection GetVectorStores(VectorStoreCollectionOptions options = null, CancellationToken cancellationToken = default); - public virtual PageCollection GetVectorStores(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); - public virtual IEnumerable GetVectorStores(int? limit, string order, string after, string before, RequestOptions options); - public virtual AsyncPageCollection GetVectorStoresAsync(VectorStoreCollectionOptions options = null, CancellationToken cancellationToken = default); - public virtual AsyncPageCollection GetVectorStoresAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); - public virtual IAsyncEnumerable GetVectorStoresAsync(int? limit, string order, string after, string before, RequestOptions options); + public virtual PageableCollection GetVectorStores(ListOrder? resultOrder = null, CancellationToken cancellationToken = default); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public virtual ClientResult GetVectorStores(int? limit, string order, string after, string before, RequestOptions options); + public virtual AsyncPageableCollection GetVectorStoresAsync(ListOrder? resultOrder = null, CancellationToken cancellationToken = default); + [Diagnostics.DebuggerStepThrough] + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public virtual Task GetVectorStoresAsync(int? limit, string order, string after, string before, RequestOptions options); public virtual ClientResult ModifyVectorStore(VectorStore vectorStore, VectorStoreModificationOptions options); public virtual ClientResult ModifyVectorStore(string vectorStoreId, VectorStoreModificationOptions vectorStore, CancellationToken cancellationToken = default); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult ModifyVectorStore(string vectorStoreId, BinaryContent content, RequestOptions options = null); public virtual Task> ModifyVectorStoreAsync(VectorStore vectorStore, VectorStoreModificationOptions options); + [Diagnostics.DebuggerStepThrough] public virtual Task> ModifyVectorStoreAsync(string vectorStoreId, VectorStoreModificationOptions vectorStore, CancellationToken cancellationToken = default); + [Diagnostics.DebuggerStepThrough] + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task ModifyVectorStoreAsync(string vectorStoreId, BinaryContent content, RequestOptions options = null); public virtual ClientResult RemoveFileFromStore(VectorStore vectorStore, Files.OpenAIFileInfo file); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual ClientResult RemoveFileFromStore(string vectorStoreId, string fileId, RequestOptions options); public virtual ClientResult RemoveFileFromStore(string vectorStoreId, string fileId, CancellationToken cancellationToken = default); public virtual Task> RemoveFileFromStoreAsync(VectorStore vectorStore, Files.OpenAIFileInfo file); + [Diagnostics.DebuggerStepThrough] + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] public virtual Task RemoveFileFromStoreAsync(string vectorStoreId, string fileId, RequestOptions options); + [Diagnostics.DebuggerStepThrough] public virtual Task> RemoveFileFromStoreAsync(string vectorStoreId, string fileId, CancellationToken cancellationToken = default); } - public class VectorStoreCollectionOptions { - public VectorStoreCollectionOptions(); - public string AfterId { get; init; } - public string BeforeId { get; init; } - public ListOrder? Order { get; init; } - public int? PageSize { get; init; } - } - public class VectorStoreCreationOptions { - public VectorStoreCreationOptions(); + public class VectorStoreCreationOptions : IJsonModel, IPersistableModel { public FileChunkingStrategy ChunkingStrategy { get; init; } public VectorStoreExpirationPolicy ExpirationPolicy { get; init; } public IList FileIds { get; init; } public IDictionary Metadata { get; } public string Name { get; init; } + VectorStoreCreationOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + VectorStoreCreationOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public sealed class VectorStoreExpirationAnchor { - public const VectorStoreExpirationAnchor LastActiveAt = 1; - public const VectorStoreExpirationAnchor Unknown = 0; + public enum VectorStoreExpirationAnchor { + Unknown = 0, + LastActiveAt = 1 } - public class VectorStoreExpirationPolicy { + public class VectorStoreExpirationPolicy : IJsonModel, IPersistableModel { public VectorStoreExpirationPolicy(); public VectorStoreExpirationPolicy(VectorStoreExpirationAnchor anchor, int days); public required VectorStoreExpirationAnchor Anchor { get; init; } public required int Days { get; init; } + VectorStoreExpirationPolicy IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + VectorStoreExpirationPolicy IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public class VectorStoreFileAssociation { + public class VectorStoreFileAssociation : IJsonModel, IPersistableModel { public FileChunkingStrategy ChunkingStrategy { get; } public DateTimeOffset CreatedAt { get; } public string FileId { get; } @@ -1619,74 +2271,105 @@ namespace OpenAI.VectorStores { public int Size { get; } public VectorStoreFileAssociationStatus Status { get; } public string VectorStoreId { get; } - } - public class VectorStoreFileAssociationCollectionOptions { - public VectorStoreFileAssociationCollectionOptions(); - public string AfterId { get; init; } - public string BeforeId { get; init; } - public VectorStoreFileStatusFilter? Filter { get; init; } - public ListOrder? Order { get; init; } - public int? PageSize { get; init; } - } - public sealed class VectorStoreFileAssociationError { - public VectorStoreFileAssociationError(); + VectorStoreFileAssociation IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + VectorStoreFileAssociation IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); + } + public readonly partial struct VectorStoreFileAssociationError : IJsonModel, IPersistableModel, IJsonModel, IPersistableModel { + private readonly object _dummy; + private readonly int _dummyPrimitive; public VectorStoreFileAssociationErrorCode Code { get; } public string Message { get; } - } - public sealed class VectorStoreFileAssociationErrorCode { + readonly VectorStoreFileAssociationError IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + readonly void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + readonly object IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + readonly void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + readonly VectorStoreFileAssociationError IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + readonly string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + readonly BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); + readonly object IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + readonly string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + readonly BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); + } + public readonly partial struct VectorStoreFileAssociationErrorCode : IEquatable { + private readonly object _dummy; + private readonly int _dummyPrimitive; public VectorStoreFileAssociationErrorCode(string value); public static VectorStoreFileAssociationErrorCode FileNotFound { get; } public static VectorStoreFileAssociationErrorCode InternalError { get; } public static VectorStoreFileAssociationErrorCode ParsingError { get; } public static VectorStoreFileAssociationErrorCode UnhandledMimeType { get; } - public bool Equals(VectorStoreFileAssociationErrorCode other); - public override bool Equals(object obj); - public override int GetHashCode(); + public readonly bool Equals(VectorStoreFileAssociationErrorCode other); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly bool Equals(object obj); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly int GetHashCode(); public static bool operator ==(VectorStoreFileAssociationErrorCode left, VectorStoreFileAssociationErrorCode right); public static implicit operator VectorStoreFileAssociationErrorCode(string value); public static bool operator !=(VectorStoreFileAssociationErrorCode left, VectorStoreFileAssociationErrorCode right); - public override string ToString(); - } - public sealed class VectorStoreFileAssociationStatus { - public const VectorStoreFileAssociationStatus Cancelled = 3; - public const VectorStoreFileAssociationStatus Completed = 2; - public const VectorStoreFileAssociationStatus Failed = 4; - public const VectorStoreFileAssociationStatus InProgress = 1; - public const VectorStoreFileAssociationStatus Unknown = 0; - } - public sealed class VectorStoreFileCounts { - public VectorStoreFileCounts(); + public override readonly string ToString(); + } + public enum VectorStoreFileAssociationStatus { + Unknown = 0, + InProgress = 1, + Completed = 2, + Cancelled = 3, + Failed = 4 + } + public readonly partial struct VectorStoreFileCounts : IJsonModel, IPersistableModel, IJsonModel, IPersistableModel { + private readonly object _dummy; + private readonly int _dummyPrimitive; public int Cancelled { get; } public int Completed { get; } public int Failed { get; } public int InProgress { get; } public int Total { get; } - } - public sealed class VectorStoreFileStatusFilter { + readonly VectorStoreFileCounts IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + readonly void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + readonly object IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + readonly void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + readonly VectorStoreFileCounts IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + readonly string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + readonly BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); + readonly object IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + readonly string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + readonly BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); + } + public readonly partial struct VectorStoreFileStatusFilter : IEquatable { + private readonly object _dummy; + private readonly int _dummyPrimitive; public VectorStoreFileStatusFilter(string value); public static VectorStoreFileStatusFilter Cancelled { get; } public static VectorStoreFileStatusFilter Completed { get; } public static VectorStoreFileStatusFilter Failed { get; } public static VectorStoreFileStatusFilter InProgress { get; } - public bool Equals(VectorStoreFileStatusFilter other); - public override bool Equals(object obj); - public override int GetHashCode(); + public readonly bool Equals(VectorStoreFileStatusFilter other); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly bool Equals(object obj); + [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + public override readonly int GetHashCode(); public static bool operator ==(VectorStoreFileStatusFilter left, VectorStoreFileStatusFilter right); public static implicit operator VectorStoreFileStatusFilter(string value); public static bool operator !=(VectorStoreFileStatusFilter left, VectorStoreFileStatusFilter right); - public override string ToString(); + public override readonly string ToString(); } - public class VectorStoreModificationOptions { - public VectorStoreModificationOptions(); + public class VectorStoreModificationOptions : IJsonModel, IPersistableModel { public VectorStoreExpirationPolicy ExpirationPolicy { get; init; } public IDictionary Metadata { get; } public string Name { get; init; } - } - public sealed class VectorStoreStatus { - public const VectorStoreStatus Completed = 2; - public const VectorStoreStatus Expired = 3; - public const VectorStoreStatus InProgress = 1; - public const VectorStoreStatus Unknown = 0; + VectorStoreModificationOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + VectorStoreModificationOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); + } + public enum VectorStoreStatus { + Unknown = 0, + InProgress = 1, + Completed = 2, + Expired = 3 } } ``` \ No newline at end of file diff --git a/.scripts/Generate-Api.ps1 b/.scripts/Generate-Api.ps1 index 487f48929..d6c26d1af 100644 --- a/.scripts/Generate-Api.ps1 +++ b/.scripts/Generate-Api.ps1 @@ -7,20 +7,17 @@ $platformTarget = "netstandard2.0" $assemblyPath = Join-Path $dotnetFolder bin\Debug $platformTarget OpenAI.dll $outputPath = Join-Path $apiFolder "OpenAI.$($platformTarget).cs" -genapi --assembly $assemblyPath --output-path $outputPath +genapi --assembly $assemblyPath --output-path $outputPath ` + --assembly-reference "$($env:ProgramFiles)\dotnet\packs\Microsoft.NETCore.App.Ref\8.0.5\ref\net8.0" ` + --assembly-reference "$($env:ProgramFiles)\dotnet\packs\Microsoft.NETCore.App.Ref\8.0.7\ref\net8.0" ` + --assembly-reference "$($env:UserProfile)\.nuget\packages\system.memory.data\1.0.2\lib\netstandard2.0" ` + --assembly-reference "$($env:UserProfile)\.nuget\packages\system.clientmodel\1.1.0-beta.5\lib\netstandard2.0" ` + --assembly-reference "$($env:UserProfile)\.nuget\packages\microsoft.bcl.asyncinterfaces\1.1.0\lib\netstandard2.0" $content = Get-Content $outputPath -Raw $content = $content -replace '//.*\r?\n', '' $content = $content -replace '\r?\n\r?\n', "`n" -$content = $content -replace 'System.Boolean', 'bool' -$content = $content -replace 'System.String', 'string' -$content = $content -replace 'System.Object', 'object' -$content = $content -replace 'System.Uri', 'Uri' -$content = $content -replace 'System.Single', 'float' -$content = $content -replace 'System.Int32', 'int' -$content = $content -replace 'System.Int64', 'long' -$content = $content -replace 'System.Nullable<([^>]*)>', '$1?' $content = $content -replace 'System.ClientModel.Primitives.', '' $content = $content -replace 'System.ClientModel.', '' From 673fefed9095e1f1ac9c7c366a457d5495217fe2 Mon Sep 17 00:00:00 2001 From: Travis Wilson Date: Fri, 26 Jul 2024 12:17:58 -0700 Subject: [PATCH 5/7] powershell for attributes --- .dotnet/api/OpenAI.netstandard2.0.cs | 398 ++++++++++----------------- .dotnet/api/api.md | 398 ++++++++++----------------- .scripts/Generate-Api.ps1 | 3 + 3 files changed, 293 insertions(+), 506 deletions(-) diff --git a/.dotnet/api/OpenAI.netstandard2.0.cs b/.dotnet/api/OpenAI.netstandard2.0.cs index 1cd7ef41b..6e0c7d042 100644 --- a/.dotnet/api/OpenAI.netstandard2.0.cs +++ b/.dotnet/api/OpenAI.netstandard2.0.cs @@ -6,9 +6,9 @@ namespace OpenAI { public static ListOrder NewestFirst { get; } public static ListOrder OldestFirst { get; } public readonly bool Equals(ListOrder other); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public override readonly bool Equals(object obj); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public override readonly int GetHashCode(); public static bool operator ==(ListOrder left, ListOrder right); public static implicit operator ListOrder(string value); @@ -68,205 +68,182 @@ public class AssistantClient { protected internal AssistantClient(ClientPipeline pipeline, Uri endpoint, OpenAIClientOptions options); public virtual ClientPipeline Pipeline { get; } public virtual ClientResult CancelRun(ThreadRun run); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult CancelRun(string threadId, string runId, RequestOptions options); public virtual ClientResult CancelRun(string threadId, string runId, CancellationToken cancellationToken = default); public virtual Task> CancelRunAsync(ThreadRun run); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task CancelRunAsync(string threadId, string runId, RequestOptions options); - [Diagnostics.DebuggerStepThrough] public virtual Task> CancelRunAsync(string threadId, string runId, CancellationToken cancellationToken = default); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult CreateAssistant(BinaryContent content, RequestOptions options = null); public virtual ClientResult CreateAssistant(string model, AssistantCreationOptions options = null, CancellationToken cancellationToken = default); - [Diagnostics.DebuggerStepThrough] - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task CreateAssistantAsync(BinaryContent content, RequestOptions options = null); - [Diagnostics.DebuggerStepThrough] public virtual Task> CreateAssistantAsync(string model, AssistantCreationOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult CreateMessage(AssistantThread thread, MessageRole role, IEnumerable content, MessageCreationOptions options = null); public virtual ClientResult CreateMessage(string threadId, MessageRole role, IEnumerable content, MessageCreationOptions options = null, CancellationToken cancellationToken = default); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult CreateMessage(string threadId, BinaryContent content, RequestOptions options = null); public virtual Task> CreateMessageAsync(AssistantThread thread, MessageRole role, IEnumerable content, MessageCreationOptions options = null); - [Diagnostics.DebuggerStepThrough] public virtual Task> CreateMessageAsync(string threadId, MessageRole role, IEnumerable content, MessageCreationOptions options = null, CancellationToken cancellationToken = default); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task CreateMessageAsync(string threadId, BinaryContent content, RequestOptions options = null); public virtual ClientResult CreateRun(AssistantThread thread, Assistant assistant, RunCreationOptions options = null); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult CreateRun(string threadId, BinaryContent content, RequestOptions options = null); public virtual ClientResult CreateRun(string threadId, string assistantId, RunCreationOptions options = null, CancellationToken cancellationToken = default); public virtual Task> CreateRunAsync(AssistantThread thread, Assistant assistant, RunCreationOptions options = null); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task CreateRunAsync(string threadId, BinaryContent content, RequestOptions options = null); - [Diagnostics.DebuggerStepThrough] public virtual Task> CreateRunAsync(string threadId, string assistantId, RunCreationOptions options = null, CancellationToken cancellationToken = default); public virtual ResultCollection CreateRunStreaming(AssistantThread thread, Assistant assistant, RunCreationOptions options = null); public virtual ResultCollection CreateRunStreaming(string threadId, string assistantId, RunCreationOptions options = null, CancellationToken cancellationToken = default); public virtual AsyncResultCollection CreateRunStreamingAsync(AssistantThread thread, Assistant assistant, RunCreationOptions options = null); public virtual AsyncResultCollection CreateRunStreamingAsync(string threadId, string assistantId, RunCreationOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult CreateThread(ThreadCreationOptions options = null, CancellationToken cancellationToken = default); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult CreateThread(BinaryContent content, RequestOptions options = null); public virtual ClientResult CreateThreadAndRun(Assistant assistant, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult CreateThreadAndRun(BinaryContent content, RequestOptions options = null); public virtual ClientResult CreateThreadAndRun(string assistantId, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null, CancellationToken cancellationToken = default); public virtual Task> CreateThreadAndRunAsync(Assistant assistant, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task CreateThreadAndRunAsync(BinaryContent content, RequestOptions options = null); - [Diagnostics.DebuggerStepThrough] public virtual Task> CreateThreadAndRunAsync(string assistantId, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null, CancellationToken cancellationToken = default); public virtual ResultCollection CreateThreadAndRunStreaming(Assistant assistant, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null); public virtual ResultCollection CreateThreadAndRunStreaming(string assistantId, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null, CancellationToken cancellationToken = default); public virtual AsyncResultCollection CreateThreadAndRunStreamingAsync(Assistant assistant, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null); public virtual AsyncResultCollection CreateThreadAndRunStreamingAsync(string assistantId, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null, CancellationToken cancellationToken = default); - [Diagnostics.DebuggerStepThrough] public virtual Task> CreateThreadAsync(ThreadCreationOptions options = null, CancellationToken cancellationToken = default); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task CreateThreadAsync(BinaryContent content, RequestOptions options = null); public virtual ClientResult DeleteAssistant(Assistant assistant); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult DeleteAssistant(string assistantId, RequestOptions options); public virtual ClientResult DeleteAssistant(string assistantId, CancellationToken cancellationToken = default); public virtual Task> DeleteAssistantAsync(Assistant assistant); - [Diagnostics.DebuggerStepThrough] - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task DeleteAssistantAsync(string assistantId, RequestOptions options); - [Diagnostics.DebuggerStepThrough] public virtual Task> DeleteAssistantAsync(string assistantId, CancellationToken cancellationToken = default); public virtual ClientResult DeleteMessage(ThreadMessage message); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult DeleteMessage(string threadId, string messageId, RequestOptions options); public virtual ClientResult DeleteMessage(string threadId, string messageId, CancellationToken cancellationToken = default); public virtual Task> DeleteMessageAsync(ThreadMessage message); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task DeleteMessageAsync(string threadId, string messageId, RequestOptions options); - [Diagnostics.DebuggerStepThrough] public virtual Task> DeleteMessageAsync(string threadId, string messageId, CancellationToken cancellationToken = default); public virtual ClientResult DeleteThread(AssistantThread thread); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult DeleteThread(string threadId, RequestOptions options); public virtual ClientResult DeleteThread(string threadId, CancellationToken cancellationToken = default); public virtual Task> DeleteThreadAsync(AssistantThread thread); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task DeleteThreadAsync(string threadId, RequestOptions options); - [Diagnostics.DebuggerStepThrough] public virtual Task> DeleteThreadAsync(string threadId, CancellationToken cancellationToken = default); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult GetAssistant(string assistantId, RequestOptions options); public virtual ClientResult GetAssistant(string assistantId, CancellationToken cancellationToken = default); - [Diagnostics.DebuggerStepThrough] - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task GetAssistantAsync(string assistantId, RequestOptions options); - [Diagnostics.DebuggerStepThrough] public virtual Task> GetAssistantAsync(string assistantId, CancellationToken cancellationToken = default); public virtual PageableCollection GetAssistants(ListOrder? resultOrder = null, CancellationToken cancellationToken = default); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult GetAssistants(int? limit, string order, string after, string before, RequestOptions options); public virtual AsyncPageableCollection GetAssistantsAsync(ListOrder? resultOrder = null, CancellationToken cancellationToken = default); - [Diagnostics.DebuggerStepThrough] - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task GetAssistantsAsync(int? limit, string order, string after, string before, RequestOptions options); public virtual ClientResult GetMessage(ThreadMessage message); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult GetMessage(string threadId, string messageId, RequestOptions options); public virtual ClientResult GetMessage(string threadId, string messageId, CancellationToken cancellationToken = default); public virtual Task> GetMessageAsync(ThreadMessage message); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task GetMessageAsync(string threadId, string messageId, RequestOptions options); - [Diagnostics.DebuggerStepThrough] public virtual Task> GetMessageAsync(string threadId, string messageId, CancellationToken cancellationToken = default); public virtual PageableCollection GetMessages(AssistantThread thread, ListOrder? resultOrder = null); public virtual PageableCollection GetMessages(string threadId, ListOrder? resultOrder = null, CancellationToken cancellationToken = default); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult GetMessages(string threadId, int? limit, string order, string after, string before, RequestOptions options); public virtual AsyncPageableCollection GetMessagesAsync(AssistantThread thread, ListOrder? resultOrder = null); public virtual AsyncPageableCollection GetMessagesAsync(string threadId, ListOrder? resultOrder = null, CancellationToken cancellationToken = default); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task GetMessagesAsync(string threadId, int? limit, string order, string after, string before, RequestOptions options); public virtual ClientResult GetRun(ThreadRun run); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult GetRun(string threadId, string runId, RequestOptions options); public virtual ClientResult GetRun(string threadId, string runId, CancellationToken cancellationToken = default); public virtual Task> GetRunAsync(ThreadRun run); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task GetRunAsync(string threadId, string runId, RequestOptions options); - [Diagnostics.DebuggerStepThrough] public virtual Task> GetRunAsync(string threadId, string runId, CancellationToken cancellationToken = default); public virtual PageableCollection GetRuns(AssistantThread thread, ListOrder? resultOrder = null); public virtual PageableCollection GetRuns(string threadId, ListOrder? resultOrder = null, CancellationToken cancellationToken = default); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult GetRuns(string threadId, int? limit, string order, string after, string before, RequestOptions options); public virtual AsyncPageableCollection GetRunsAsync(AssistantThread thread, ListOrder? resultOrder = null); public virtual AsyncPageableCollection GetRunsAsync(string threadId, ListOrder? resultOrder = null, CancellationToken cancellationToken = default); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task GetRunsAsync(string threadId, int? limit, string order, string after, string before, RequestOptions options); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult GetRunStep(string threadId, string runId, string stepId, RequestOptions options); public virtual ClientResult GetRunStep(string threadId, string runId, string stepId, CancellationToken cancellationToken = default); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task GetRunStepAsync(string threadId, string runId, string stepId, RequestOptions options); - [Diagnostics.DebuggerStepThrough] public virtual Task> GetRunStepAsync(string threadId, string runId, string stepId, CancellationToken cancellationToken = default); public virtual PageableCollection GetRunSteps(ThreadRun run, ListOrder? resultOrder = null); public virtual PageableCollection GetRunSteps(string threadId, string runId, ListOrder? resultOrder = null, CancellationToken cancellationToken = default); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult GetRunSteps(string threadId, string runId, int? limit, string order, string after, string before, RequestOptions options); public virtual AsyncPageableCollection GetRunStepsAsync(ThreadRun run, ListOrder? resultOrder = null); public virtual AsyncPageableCollection GetRunStepsAsync(string threadId, string runId, ListOrder? resultOrder = null, CancellationToken cancellationToken = default); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task GetRunStepsAsync(string threadId, string runId, int? limit, string order, string after, string before, RequestOptions options); public virtual ClientResult GetThread(AssistantThread thread); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult GetThread(string threadId, RequestOptions options); public virtual ClientResult GetThread(string threadId, CancellationToken cancellationToken = default); public virtual Task> GetThreadAsync(AssistantThread thread); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task GetThreadAsync(string threadId, RequestOptions options); - [Diagnostics.DebuggerStepThrough] public virtual Task> GetThreadAsync(string threadId, CancellationToken cancellationToken = default); public virtual ClientResult ModifyAssistant(Assistant assistant, AssistantModificationOptions options); public virtual ClientResult ModifyAssistant(string assistantId, AssistantModificationOptions options, CancellationToken cancellationToken = default); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult ModifyAssistant(string assistantId, BinaryContent content, RequestOptions options = null); public virtual Task> ModifyAssistantAsync(Assistant assistant, AssistantModificationOptions options); - [Diagnostics.DebuggerStepThrough] public virtual Task> ModifyAssistantAsync(string assistantId, AssistantModificationOptions options, CancellationToken cancellationToken = default); - [Diagnostics.DebuggerStepThrough] - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task ModifyAssistantAsync(string assistantId, BinaryContent content, RequestOptions options = null); public virtual ClientResult ModifyMessage(ThreadMessage message, MessageModificationOptions options); public virtual ClientResult ModifyMessage(string threadId, string messageId, MessageModificationOptions options, CancellationToken cancellationToken = default); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult ModifyMessage(string threadId, string messageId, BinaryContent content, RequestOptions options = null); public virtual Task> ModifyMessageAsync(ThreadMessage message, MessageModificationOptions options); - [Diagnostics.DebuggerStepThrough] public virtual Task> ModifyMessageAsync(string threadId, string messageId, MessageModificationOptions options, CancellationToken cancellationToken = default); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task ModifyMessageAsync(string threadId, string messageId, BinaryContent content, RequestOptions options = null); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult ModifyRun(string threadId, string runId, BinaryContent content, RequestOptions options = null); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task ModifyRunAsync(string threadId, string runId, BinaryContent content, RequestOptions options = null); public virtual ClientResult ModifyThread(AssistantThread thread, ThreadModificationOptions options); public virtual ClientResult ModifyThread(string threadId, ThreadModificationOptions options, CancellationToken cancellationToken = default); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult ModifyThread(string threadId, BinaryContent content, RequestOptions options = null); public virtual Task> ModifyThreadAsync(AssistantThread thread, ThreadModificationOptions options); - [Diagnostics.DebuggerStepThrough] public virtual Task> ModifyThreadAsync(string threadId, ThreadModificationOptions options, CancellationToken cancellationToken = default); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task ModifyThreadAsync(string threadId, BinaryContent content, RequestOptions options = null); public virtual ClientResult SubmitToolOutputsToRun(ThreadRun run, IEnumerable toolOutputs); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult SubmitToolOutputsToRun(string threadId, string runId, BinaryContent content, RequestOptions options = null); public virtual ClientResult SubmitToolOutputsToRun(string threadId, string runId, IEnumerable toolOutputs, CancellationToken cancellationToken = default); public virtual Task> SubmitToolOutputsToRunAsync(ThreadRun run, IEnumerable toolOutputs); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task SubmitToolOutputsToRunAsync(string threadId, string runId, BinaryContent content, RequestOptions options = null); - [Diagnostics.DebuggerStepThrough] public virtual Task> SubmitToolOutputsToRunAsync(string threadId, string runId, IEnumerable toolOutputs, CancellationToken cancellationToken = default); public virtual ResultCollection SubmitToolOutputsToRunStreaming(ThreadRun run, IEnumerable toolOutputs); public virtual ResultCollection SubmitToolOutputsToRunStreaming(string threadId, string runId, IEnumerable toolOutputs, CancellationToken cancellationToken = default); @@ -312,9 +289,9 @@ public class AssistantResponseFormat : IJsonModel, IPer public static AssistantResponseFormat JsonObject { get; } public static AssistantResponseFormat Text { get; } public bool Equals(AssistantResponseFormat other); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public override bool Equals(object obj); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public override int GetHashCode(); public static bool operator ==(AssistantResponseFormat left, AssistantResponseFormat right); public static implicit operator AssistantResponseFormat(string value); @@ -447,9 +424,9 @@ public class MessageFailureDetails : IJsonModel, IPersist public static MessageFailureReason RunExpired { get; } public static MessageFailureReason RunFailed { get; } public readonly bool Equals(MessageFailureReason other); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public override readonly bool Equals(object obj); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public override readonly int GetHashCode(); public static bool operator ==(MessageFailureReason left, MessageFailureReason right); public static implicit operator MessageFailureReason(string value); @@ -481,9 +458,9 @@ public enum MessageRole { public static MessageStatus Incomplete { get; } public static MessageStatus InProgress { get; } public readonly bool Equals(MessageStatus other); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public override readonly bool Equals(object obj); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public override readonly int GetHashCode(); public static bool operator ==(MessageStatus left, MessageStatus right); public static implicit operator MessageStatus(string value); @@ -541,9 +518,9 @@ public class RunError : IJsonModel, IPersistableModel { public static RunErrorCode RateLimitExceeded { get; } public static RunErrorCode ServerError { get; } public readonly bool Equals(RunErrorCode other); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public override readonly bool Equals(object obj); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public override readonly int GetHashCode(); public static bool operator ==(RunErrorCode left, RunErrorCode right); public static implicit operator RunErrorCode(string value); @@ -565,9 +542,9 @@ public class RunIncompleteDetails : IJsonModel, IPersistab public static RunIncompleteReason MaxCompletionTokens { get; } public static RunIncompleteReason MaxPromptTokens { get; } public readonly bool Equals(RunIncompleteReason other); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public override readonly bool Equals(object obj); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public override readonly int GetHashCode(); public static bool operator ==(RunIncompleteReason left, RunIncompleteReason right); public static implicit operator RunIncompleteReason(string value); @@ -597,9 +574,9 @@ public class RunModificationOptions : IJsonModel, IPersi public static RunStatus Queued { get; } public static RunStatus RequiresAction { get; } public readonly bool Equals(RunStatus other); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public override readonly bool Equals(object obj); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public override readonly int GetHashCode(); public static bool operator ==(RunStatus left, RunStatus right); public static implicit operator RunStatus(string value); @@ -673,9 +650,9 @@ public class RunStepError : IJsonModel, IPersistableModel, IPersistableModel GenerateSpeechFromText(string text, GeneratedSpeechVoice voice, SpeechGenerationOptions options = null, CancellationToken cancellationToken = default); - [Diagnostics.DebuggerStepThrough] - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task GenerateSpeechFromTextAsync(BinaryContent content, RequestOptions options = null); - [Diagnostics.DebuggerStepThrough] public virtual Task> GenerateSpeechFromTextAsync(string text, GeneratedSpeechVoice voice, SpeechGenerationOptions options = null, CancellationToken cancellationToken = default); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult TranscribeAudio(BinaryContent content, string contentType, RequestOptions options = null); public virtual ClientResult TranscribeAudio(Stream audio, string audioFilename, AudioTranscriptionOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult TranscribeAudio(string audioFilePath, AudioTranscriptionOptions options = null); - [Diagnostics.DebuggerStepThrough] - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task TranscribeAudioAsync(BinaryContent content, string contentType, RequestOptions options = null); - [Diagnostics.DebuggerStepThrough] public virtual Task> TranscribeAudioAsync(Stream audio, string audioFilename, AudioTranscriptionOptions options = null, CancellationToken cancellationToken = default); - [Diagnostics.DebuggerStepThrough] public virtual Task> TranscribeAudioAsync(string audioFilePath, AudioTranscriptionOptions options = null); public virtual ClientResult TranslateAudio(BinaryContent content, string contentType, RequestOptions options = null); public virtual ClientResult TranslateAudio(Stream audio, string audioFilename, AudioTranslationOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult TranslateAudio(string audioFilePath, AudioTranslationOptions options = null); - [Diagnostics.DebuggerStepThrough] public virtual Task TranslateAudioAsync(BinaryContent content, string contentType, RequestOptions options = null); - [Diagnostics.DebuggerStepThrough] public virtual Task> TranslateAudioAsync(Stream audio, string audioFilename, AudioTranslationOptions options = null, CancellationToken cancellationToken = default); - [Diagnostics.DebuggerStepThrough] public virtual Task> TranslateAudioAsync(string audioFilePath, AudioTranslationOptions options = null); } [Flags] @@ -1146,16 +1115,12 @@ public class BatchClient { protected internal BatchClient(ClientPipeline pipeline, Uri endpoint, OpenAIClientOptions options); public virtual ClientPipeline Pipeline { get; } public virtual ClientResult CancelBatch(string batchId, RequestOptions options); - [Diagnostics.DebuggerStepThrough] public virtual Task CancelBatchAsync(string batchId, RequestOptions options); public virtual ClientResult CreateBatch(BinaryContent content, RequestOptions options = null); - [Diagnostics.DebuggerStepThrough] public virtual Task CreateBatchAsync(BinaryContent content, RequestOptions options = null); public virtual ClientResult GetBatch(string batchId, RequestOptions options); - [Diagnostics.DebuggerStepThrough] public virtual Task GetBatchAsync(string batchId, RequestOptions options); public virtual ClientResult GetBatches(string after, int? limit, RequestOptions options); - [Diagnostics.DebuggerStepThrough] public virtual Task GetBatchesAsync(string after, int? limit, RequestOptions options); } } @@ -1182,15 +1147,12 @@ public class ChatClient { public ChatClient(string model, ApiKeyCredential credential, OpenAIClientOptions options = null); public virtual ClientPipeline Pipeline { get; } public virtual ClientResult CompleteChat(params ChatMessage[] messages); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult CompleteChat(BinaryContent content, RequestOptions options = null); public virtual ClientResult CompleteChat(IEnumerable messages, ChatCompletionOptions options = null, CancellationToken cancellationToken = default); - [Diagnostics.DebuggerStepThrough] public virtual Task> CompleteChatAsync(params ChatMessage[] messages); - [Diagnostics.DebuggerStepThrough] - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task CompleteChatAsync(BinaryContent content, RequestOptions options = null); - [Diagnostics.DebuggerStepThrough] public virtual Task> CompleteChatAsync(IEnumerable messages, ChatCompletionOptions options = null, CancellationToken cancellationToken = default); public virtual ResultCollection CompleteChatStreaming(params ChatMessage[] messages); public virtual ResultCollection CompleteChatStreaming(IEnumerable messages, ChatCompletionOptions options = null, CancellationToken cancellationToken = default); @@ -1324,9 +1286,9 @@ public class ChatMessageContentPart : IJsonModel, IPersi public static ChatMessageContentPartKind Image { get; } public static ChatMessageContentPartKind Text { get; } public readonly bool Equals(ChatMessageContentPartKind other); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public override readonly bool Equals(object obj); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public override readonly int GetHashCode(); public static bool operator ==(ChatMessageContentPartKind left, ChatMessageContentPartKind right); public static implicit operator ChatMessageContentPartKind(string value); @@ -1410,9 +1372,9 @@ public class ChatToolCall : IJsonModel, IPersistableModel, IPersistableModel, public static ImageChatMessageContentPartDetail High { get; } public static ImageChatMessageContentPartDetail Low { get; } public readonly bool Equals(ImageChatMessageContentPartDetail other); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public override readonly bool Equals(object obj); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public override readonly int GetHashCode(); public static bool operator ==(ImageChatMessageContentPartDetail left, ImageChatMessageContentPartDetail right); public static implicit operator ImageChatMessageContentPartDetail(string value); @@ -1562,18 +1524,14 @@ public class EmbeddingClient { public EmbeddingClient(string model, ApiKeyCredential credential, OpenAIClientOptions options = null); public virtual ClientPipeline Pipeline { get; } public virtual ClientResult GenerateEmbedding(string input, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = default); - [Diagnostics.DebuggerStepThrough] public virtual Task> GenerateEmbeddingAsync(string input, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = default); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult GenerateEmbeddings(BinaryContent content, RequestOptions options = null); public virtual ClientResult GenerateEmbeddings(IEnumerable> inputs, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult GenerateEmbeddings(IEnumerable inputs, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = default); - [Diagnostics.DebuggerStepThrough] - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task GenerateEmbeddingsAsync(BinaryContent content, RequestOptions options = null); - [Diagnostics.DebuggerStepThrough] public virtual Task> GenerateEmbeddingsAsync(IEnumerable> inputs, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = default); - [Diagnostics.DebuggerStepThrough] public virtual Task> GenerateEmbeddingsAsync(IEnumerable inputs, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = default); } public class EmbeddingCollection : ObjectModel.ReadOnlyCollection, IJsonModel, IPersistableModel { @@ -1612,53 +1570,42 @@ public class FileClient { protected internal FileClient(ClientPipeline pipeline, Uri endpoint, OpenAIClientOptions options); public virtual ClientPipeline Pipeline { get; } public virtual ClientResult DeleteFile(OpenAIFileInfo file); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult DeleteFile(string fileId, RequestOptions options); public virtual ClientResult DeleteFile(string fileId, CancellationToken cancellationToken = default); public virtual Task> DeleteFileAsync(OpenAIFileInfo file); - [Diagnostics.DebuggerStepThrough] - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task DeleteFileAsync(string fileId, RequestOptions options); - [Diagnostics.DebuggerStepThrough] public virtual Task> DeleteFileAsync(string fileId, CancellationToken cancellationToken = default); public virtual ClientResult DownloadFile(OpenAIFileInfo file); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult DownloadFile(string fileId, RequestOptions options); public virtual ClientResult DownloadFile(string fileId, CancellationToken cancellationToken = default); public virtual Task> DownloadFileAsync(OpenAIFileInfo file); - [Diagnostics.DebuggerStepThrough] - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task DownloadFileAsync(string fileId, RequestOptions options); - [Diagnostics.DebuggerStepThrough] public virtual Task> DownloadFileAsync(string fileId, CancellationToken cancellationToken = default); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult GetFile(string fileId, RequestOptions options); public virtual ClientResult GetFile(string fileId, CancellationToken cancellationToken = default); - [Diagnostics.DebuggerStepThrough] - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task GetFileAsync(string fileId, RequestOptions options); - [Diagnostics.DebuggerStepThrough] public virtual Task> GetFileAsync(string fileId, CancellationToken cancellationToken = default); public virtual ClientResult GetFiles(OpenAIFilePurpose? purpose = null, CancellationToken cancellationToken = default); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult GetFiles(string purpose, RequestOptions options); - [Diagnostics.DebuggerStepThrough] public virtual Task> GetFilesAsync(OpenAIFilePurpose? purpose = null, CancellationToken cancellationToken = default); - [Diagnostics.DebuggerStepThrough] - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task GetFilesAsync(string purpose, RequestOptions options); public virtual ClientResult UploadFile(BinaryData file, string filename, FileUploadPurpose purpose); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult UploadFile(BinaryContent content, string contentType, RequestOptions options = null); public virtual ClientResult UploadFile(Stream file, string filename, FileUploadPurpose purpose, CancellationToken cancellationToken = default); public virtual ClientResult UploadFile(string filePath, FileUploadPurpose purpose); public virtual Task> UploadFileAsync(BinaryData file, string filename, FileUploadPurpose purpose); - [Diagnostics.DebuggerStepThrough] - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task UploadFileAsync(BinaryContent content, string contentType, RequestOptions options = null); - [Diagnostics.DebuggerStepThrough] public virtual Task> UploadFileAsync(Stream file, string filename, FileUploadPurpose purpose, CancellationToken cancellationToken = default); - [Diagnostics.DebuggerStepThrough] public virtual Task> UploadFileAsync(string filePath, FileUploadPurpose purpose); } public readonly partial struct FileUploadPurpose : IEquatable { @@ -1670,9 +1617,9 @@ public class FileClient { public static FileUploadPurpose FineTune { get; } public static FileUploadPurpose Vision { get; } public readonly bool Equals(FileUploadPurpose other); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public override readonly bool Equals(object obj); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public override readonly int GetHashCode(); public static bool operator ==(FileUploadPurpose left, FileUploadPurpose right); public static implicit operator FileUploadPurpose(string value); @@ -1712,9 +1659,9 @@ public class OpenAIFileInfoCollection : ObjectModel.ReadOnlyCollection CancelJobAsync(string jobId, RequestOptions options); public virtual ClientResult CreateJob(BinaryContent content, RequestOptions options = null); - [Diagnostics.DebuggerStepThrough] public virtual Task CreateJobAsync(BinaryContent content, RequestOptions options = null); public virtual ClientResult GetJob(string jobId, RequestOptions options); - [Diagnostics.DebuggerStepThrough] public virtual Task GetJobAsync(string jobId, RequestOptions options); public virtual ClientResult GetJobCheckpoints(string fineTuningJobId, string after, int? limit, RequestOptions options); - [Diagnostics.DebuggerStepThrough] public virtual Task GetJobCheckpointsAsync(string fineTuningJobId, string after, int? limit, RequestOptions options); public virtual ClientResult GetJobEvents(string jobId, string after, int? limit, RequestOptions options); - [Diagnostics.DebuggerStepThrough] public virtual Task GetJobEventsAsync(string jobId, string after, int? limit, RequestOptions options); public virtual ClientResult GetJobs(string after, int? limit, RequestOptions options); - [Diagnostics.DebuggerStepThrough] public virtual Task GetJobsAsync(string after, int? limit, RequestOptions options); } } @@ -1804,9 +1745,9 @@ public enum GeneratedImageQuality { public static readonly GeneratedImageSize W512xH512; public GeneratedImageSize(int width, int height); public readonly bool Equals(GeneratedImageSize other); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public override readonly bool Equals(object obj); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public override readonly int GetHashCode(); public static bool operator ==(GeneratedImageSize left, GeneratedImageSize right); public static bool operator !=(GeneratedImageSize left, GeneratedImageSize right); @@ -1823,61 +1764,44 @@ public class ImageClient { public ImageClient(string model, ApiKeyCredential credential, OpenAIClientOptions options = null); public virtual ClientPipeline Pipeline { get; } public virtual ClientResult GenerateImage(string prompt, ImageGenerationOptions options = null, CancellationToken cancellationToken = default); - [Diagnostics.DebuggerStepThrough] public virtual Task> GenerateImageAsync(string prompt, ImageGenerationOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult GenerateImageEdit(Stream image, string imageFilename, string prompt, ImageEditOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult GenerateImageEdit(Stream image, string imageFilename, string prompt, Stream mask, string maskFilename, ImageEditOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult GenerateImageEdit(string imageFilePath, string prompt, ImageEditOptions options = null); public virtual ClientResult GenerateImageEdit(string imageFilePath, string prompt, string maskFilePath, ImageEditOptions options = null); - [Diagnostics.DebuggerStepThrough] public virtual Task> GenerateImageEditAsync(Stream image, string imageFilename, string prompt, ImageEditOptions options = null, CancellationToken cancellationToken = default); - [Diagnostics.DebuggerStepThrough] public virtual Task> GenerateImageEditAsync(Stream image, string imageFilename, string prompt, Stream mask, string maskFilename, ImageEditOptions options = null, CancellationToken cancellationToken = default); - [Diagnostics.DebuggerStepThrough] public virtual Task> GenerateImageEditAsync(string imageFilePath, string prompt, ImageEditOptions options = null); - [Diagnostics.DebuggerStepThrough] public virtual Task> GenerateImageEditAsync(string imageFilePath, string prompt, string maskFilePath, ImageEditOptions options = null); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult GenerateImageEdits(BinaryContent content, string contentType, RequestOptions options = null); public virtual ClientResult GenerateImageEdits(Stream image, string imageFilename, string prompt, int imageCount, ImageEditOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult GenerateImageEdits(Stream image, string imageFilename, string prompt, Stream mask, string maskFilename, int imageCount, ImageEditOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult GenerateImageEdits(string imageFilePath, string prompt, int imageCount, ImageEditOptions options = null); public virtual ClientResult GenerateImageEdits(string imageFilePath, string prompt, string maskFilePath, int imageCount, ImageEditOptions options = null); - [Diagnostics.DebuggerStepThrough] - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task GenerateImageEditsAsync(BinaryContent content, string contentType, RequestOptions options = null); - [Diagnostics.DebuggerStepThrough] public virtual Task> GenerateImageEditsAsync(Stream image, string imageFilename, string prompt, int imageCount, ImageEditOptions options = null, CancellationToken cancellationToken = default); - [Diagnostics.DebuggerStepThrough] public virtual Task> GenerateImageEditsAsync(Stream image, string imageFilename, string prompt, Stream mask, string maskFilename, int imageCount, ImageEditOptions options = null, CancellationToken cancellationToken = default); - [Diagnostics.DebuggerStepThrough] public virtual Task> GenerateImageEditsAsync(string imageFilePath, string prompt, int imageCount, ImageEditOptions options = null); - [Diagnostics.DebuggerStepThrough] public virtual Task> GenerateImageEditsAsync(string imageFilePath, string prompt, string maskFilePath, int imageCount, ImageEditOptions options = null); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult GenerateImages(BinaryContent content, RequestOptions options = null); public virtual ClientResult GenerateImages(string prompt, int imageCount, ImageGenerationOptions options = null, CancellationToken cancellationToken = default); - [Diagnostics.DebuggerStepThrough] - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task GenerateImagesAsync(BinaryContent content, RequestOptions options = null); - [Diagnostics.DebuggerStepThrough] public virtual Task> GenerateImagesAsync(string prompt, int imageCount, ImageGenerationOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult GenerateImageVariation(Stream image, string imageFilename, ImageVariationOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult GenerateImageVariation(string imageFilePath, ImageVariationOptions options = null); - [Diagnostics.DebuggerStepThrough] public virtual Task> GenerateImageVariationAsync(Stream image, string imageFilename, ImageVariationOptions options = null, CancellationToken cancellationToken = default); - [Diagnostics.DebuggerStepThrough] public virtual Task> GenerateImageVariationAsync(string imageFilePath, ImageVariationOptions options = null); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult GenerateImageVariations(BinaryContent content, string contentType, RequestOptions options = null); public virtual ClientResult GenerateImageVariations(Stream image, string imageFilename, int imageCount, ImageVariationOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult GenerateImageVariations(string imageFilePath, int imageCount, ImageVariationOptions options = null); - [Diagnostics.DebuggerStepThrough] - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task GenerateImageVariationsAsync(BinaryContent content, string contentType, RequestOptions options = null); - [Diagnostics.DebuggerStepThrough] public virtual Task> GenerateImageVariationsAsync(Stream image, string imageFilename, int imageCount, ImageVariationOptions options = null, CancellationToken cancellationToken = default); - [Diagnostics.DebuggerStepThrough] public virtual Task> GenerateImageVariationsAsync(string imageFilePath, int imageCount, ImageVariationOptions options = null); } public class ImageEditOptions : IJsonModel, IPersistableModel { @@ -1920,29 +1844,23 @@ public class ModelClient { public ModelClient(ApiKeyCredential credential, OpenAIClientOptions options = null); protected internal ModelClient(ClientPipeline pipeline, Uri endpoint, OpenAIClientOptions options); public virtual ClientPipeline Pipeline { get; } - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult DeleteModel(string model, RequestOptions options); public virtual ClientResult DeleteModel(string model); - [Diagnostics.DebuggerStepThrough] - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task DeleteModelAsync(string model, RequestOptions options); - [Diagnostics.DebuggerStepThrough] public virtual Task> DeleteModelAsync(string model); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult GetModel(string model, RequestOptions options); public virtual ClientResult GetModel(string model); - [Diagnostics.DebuggerStepThrough] - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task GetModelAsync(string model, RequestOptions options); - [Diagnostics.DebuggerStepThrough] public virtual Task> GetModelAsync(string model); public virtual ClientResult GetModels(); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult GetModels(RequestOptions options); - [Diagnostics.DebuggerStepThrough] public virtual Task> GetModelsAsync(); - [Diagnostics.DebuggerStepThrough] - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task GetModelsAsync(RequestOptions options); } public class OpenAIModelInfo : IJsonModel, IPersistableModel { @@ -2007,15 +1925,12 @@ public class ModerationClient { public ModerationClient(string model, ApiKeyCredential credential, OpenAIClientOptions options = null); public virtual ClientPipeline Pipeline { get; } public virtual ClientResult ClassifyTextInput(string input, CancellationToken cancellationToken = default); - [Diagnostics.DebuggerStepThrough] public virtual Task> ClassifyTextInputAsync(string input, CancellationToken cancellationToken = default); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult ClassifyTextInputs(BinaryContent content, RequestOptions options = null); public virtual ClientResult ClassifyTextInputs(IEnumerable inputs, CancellationToken cancellationToken = default); - [Diagnostics.DebuggerStepThrough] - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task ClassifyTextInputsAsync(BinaryContent content, RequestOptions options = null); - [Diagnostics.DebuggerStepThrough] public virtual Task> ClassifyTextInputsAsync(IEnumerable inputs, CancellationToken cancellationToken = default); } public class ModerationCollection : ObjectModel.ReadOnlyCollection, IJsonModel, IPersistableModel { @@ -2097,9 +2012,9 @@ public class VectorStoreBatchFileJob : IJsonModel, IPer public static VectorStoreBatchFileJobStatus Failed { get; } public static VectorStoreBatchFileJobStatus InProgress { get; } public readonly bool Equals(VectorStoreBatchFileJobStatus other); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public override readonly bool Equals(object obj); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public override readonly int GetHashCode(); public static bool operator ==(VectorStoreBatchFileJobStatus left, VectorStoreBatchFileJobStatus right); public static implicit operator VectorStoreBatchFileJobStatus(string value); @@ -2113,126 +2028,103 @@ public class VectorStoreClient { protected internal VectorStoreClient(ClientPipeline pipeline, Uri endpoint, OpenAIClientOptions options); public virtual ClientPipeline Pipeline { get; } public virtual ClientResult AddFileToVectorStore(VectorStore vectorStore, Files.OpenAIFileInfo file); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult AddFileToVectorStore(string vectorStoreId, BinaryContent content, RequestOptions options = null); public virtual ClientResult AddFileToVectorStore(string vectorStoreId, string fileId, CancellationToken cancellationToken = default); public virtual Task> AddFileToVectorStoreAsync(VectorStore vectorStore, Files.OpenAIFileInfo file); - [Diagnostics.DebuggerStepThrough] - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task AddFileToVectorStoreAsync(string vectorStoreId, BinaryContent content, RequestOptions options = null); - [Diagnostics.DebuggerStepThrough] public virtual Task> AddFileToVectorStoreAsync(string vectorStoreId, string fileId, CancellationToken cancellationToken = default); public virtual ClientResult CancelBatchFileJob(VectorStoreBatchFileJob batchJob); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult CancelBatchFileJob(string vectorStoreId, string batchId, RequestOptions options); public virtual ClientResult CancelBatchFileJob(string vectorStoreId, string batchJobId, CancellationToken cancellationToken = default); public virtual Task> CancelBatchFileJobAsync(VectorStoreBatchFileJob batchJob); - [Diagnostics.DebuggerStepThrough] - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task CancelBatchFileJobAsync(string vectorStoreId, string batchId, RequestOptions options); - [Diagnostics.DebuggerStepThrough] public virtual Task> CancelBatchFileJobAsync(string vectorStoreId, string batchJobId, CancellationToken cancellationToken = default); public virtual ClientResult CreateBatchFileJob(VectorStore vectorStore, IEnumerable files); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult CreateBatchFileJob(string vectorStoreId, BinaryContent content, RequestOptions options = null); public virtual ClientResult CreateBatchFileJob(string vectorStoreId, IEnumerable fileIds, CancellationToken cancellationToken = default); public virtual Task> CreateBatchFileJobAsync(VectorStore vectorStore, IEnumerable files); - [Diagnostics.DebuggerStepThrough] - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task CreateBatchFileJobAsync(string vectorStoreId, BinaryContent content, RequestOptions options = null); - [Diagnostics.DebuggerStepThrough] public virtual Task> CreateBatchFileJobAsync(string vectorStoreId, IEnumerable fileIds, CancellationToken cancellationToken = default); public virtual ClientResult CreateVectorStore(VectorStoreCreationOptions vectorStore = null, CancellationToken cancellationToken = default); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult CreateVectorStore(BinaryContent content, RequestOptions options = null); - [Diagnostics.DebuggerStepThrough] public virtual Task> CreateVectorStoreAsync(VectorStoreCreationOptions vectorStore = null, CancellationToken cancellationToken = default); - [Diagnostics.DebuggerStepThrough] public virtual Task CreateVectorStoreAsync(BinaryContent content, RequestOptions options = null); public virtual ClientResult DeleteVectorStore(VectorStore vectorStore); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult DeleteVectorStore(string vectorStoreId, RequestOptions options); public virtual ClientResult DeleteVectorStore(string vectorStoreId, CancellationToken cancellationToken = default); public virtual Task> DeleteVectorStoreAsync(VectorStore vectorStore); - [Diagnostics.DebuggerStepThrough] - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task DeleteVectorStoreAsync(string vectorStoreId, RequestOptions options); - [Diagnostics.DebuggerStepThrough] public virtual Task> DeleteVectorStoreAsync(string vectorStoreId, CancellationToken cancellationToken = default); public virtual ClientResult GetBatchFileJob(VectorStoreBatchFileJob batchJob); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult GetBatchFileJob(string vectorStoreId, string batchId, RequestOptions options); public virtual ClientResult GetBatchFileJob(string vectorStoreId, string batchJobId, CancellationToken cancellationToken = default); public virtual Task> GetBatchFileJobAsync(VectorStoreBatchFileJob batchJob); - [Diagnostics.DebuggerStepThrough] - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task GetBatchFileJobAsync(string vectorStoreId, string batchId, RequestOptions options); - [Diagnostics.DebuggerStepThrough] public virtual Task> GetBatchFileJobAsync(string vectorStoreId, string batchJobId, CancellationToken cancellationToken = default); public virtual ClientResult GetFileAssociation(VectorStore vectorStore, Files.OpenAIFileInfo file); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult GetFileAssociation(string vectorStoreId, string fileId, RequestOptions options); public virtual ClientResult GetFileAssociation(string vectorStoreId, string fileId, CancellationToken cancellationToken = default); public virtual Task> GetFileAssociationAsync(VectorStore vectorStore, Files.OpenAIFileInfo file); - [Diagnostics.DebuggerStepThrough] - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task GetFileAssociationAsync(string vectorStoreId, string fileId, RequestOptions options); - [Diagnostics.DebuggerStepThrough] public virtual Task> GetFileAssociationAsync(string vectorStoreId, string fileId, CancellationToken cancellationToken = default); public virtual PageableCollection GetFileAssociations(VectorStore vectorStore, ListOrder? resultOrder = null, VectorStoreFileStatusFilter? filter = null); public virtual PageableCollection GetFileAssociations(VectorStoreBatchFileJob batchJob, ListOrder? resultOrder = null, VectorStoreFileStatusFilter? filter = null); public virtual PageableCollection GetFileAssociations(string vectorStoreId, ListOrder? resultOrder = null, VectorStoreFileStatusFilter? filter = null, CancellationToken cancellationToken = default); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult GetFileAssociations(string vectorStoreId, int? limit, string order, string after, string before, string filter, RequestOptions options); public virtual PageableCollection GetFileAssociations(string vectorStoreId, string batchJobId, ListOrder? resultOrder = null, VectorStoreFileStatusFilter? filter = null, CancellationToken cancellationToken = default); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult GetFileAssociations(string vectorStoreId, string batchId, int? limit, string order, string after, string before, string filter, RequestOptions options); public virtual AsyncPageableCollection GetFileAssociationsAsync(VectorStore vectorStore, ListOrder? resultOrder = null, VectorStoreFileStatusFilter? filter = null); public virtual AsyncPageableCollection GetFileAssociationsAsync(VectorStoreBatchFileJob batchJob, ListOrder? resultOrder = null, VectorStoreFileStatusFilter? filter = null); public virtual AsyncPageableCollection GetFileAssociationsAsync(string vectorStoreId, ListOrder? resultOrder = null, VectorStoreFileStatusFilter? filter = null, CancellationToken cancellationToken = default); - [Diagnostics.DebuggerStepThrough] - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task GetFileAssociationsAsync(string vectorStoreId, int? limit, string order, string after, string before, string filter, RequestOptions options); public virtual AsyncPageableCollection GetFileAssociationsAsync(string vectorStoreId, string batchJobId, ListOrder? resultOrder = null, VectorStoreFileStatusFilter? filter = null, CancellationToken cancellationToken = default); - [Diagnostics.DebuggerStepThrough] - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task GetFileAssociationsAsync(string vectorStoreId, string batchId, int? limit, string order, string after, string before, string filter, RequestOptions options); public virtual ClientResult GetVectorStore(VectorStore vectorStore); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult GetVectorStore(string vectorStoreId, RequestOptions options); public virtual ClientResult GetVectorStore(string vectorStoreId, CancellationToken cancellationToken = default); public virtual Task> GetVectorStoreAsync(VectorStore vectorStore); - [Diagnostics.DebuggerStepThrough] - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task GetVectorStoreAsync(string vectorStoreId, RequestOptions options); - [Diagnostics.DebuggerStepThrough] public virtual Task> GetVectorStoreAsync(string vectorStoreId, CancellationToken cancellationToken = default); public virtual PageableCollection GetVectorStores(ListOrder? resultOrder = null, CancellationToken cancellationToken = default); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult GetVectorStores(int? limit, string order, string after, string before, RequestOptions options); public virtual AsyncPageableCollection GetVectorStoresAsync(ListOrder? resultOrder = null, CancellationToken cancellationToken = default); - [Diagnostics.DebuggerStepThrough] - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task GetVectorStoresAsync(int? limit, string order, string after, string before, RequestOptions options); public virtual ClientResult ModifyVectorStore(VectorStore vectorStore, VectorStoreModificationOptions options); public virtual ClientResult ModifyVectorStore(string vectorStoreId, VectorStoreModificationOptions vectorStore, CancellationToken cancellationToken = default); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult ModifyVectorStore(string vectorStoreId, BinaryContent content, RequestOptions options = null); public virtual Task> ModifyVectorStoreAsync(VectorStore vectorStore, VectorStoreModificationOptions options); - [Diagnostics.DebuggerStepThrough] public virtual Task> ModifyVectorStoreAsync(string vectorStoreId, VectorStoreModificationOptions vectorStore, CancellationToken cancellationToken = default); - [Diagnostics.DebuggerStepThrough] - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task ModifyVectorStoreAsync(string vectorStoreId, BinaryContent content, RequestOptions options = null); public virtual ClientResult RemoveFileFromStore(VectorStore vectorStore, Files.OpenAIFileInfo file); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult RemoveFileFromStore(string vectorStoreId, string fileId, RequestOptions options); public virtual ClientResult RemoveFileFromStore(string vectorStoreId, string fileId, CancellationToken cancellationToken = default); public virtual Task> RemoveFileFromStoreAsync(VectorStore vectorStore, Files.OpenAIFileInfo file); - [Diagnostics.DebuggerStepThrough] - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task RemoveFileFromStoreAsync(string vectorStoreId, string fileId, RequestOptions options); - [Diagnostics.DebuggerStepThrough] public virtual Task> RemoveFileFromStoreAsync(string vectorStoreId, string fileId, CancellationToken cancellationToken = default); } public class VectorStoreCreationOptions : IJsonModel, IPersistableModel { @@ -2301,9 +2193,9 @@ public class VectorStoreFileAssociation : IJsonModel public static VectorStoreFileAssociationErrorCode ParsingError { get; } public static VectorStoreFileAssociationErrorCode UnhandledMimeType { get; } public readonly bool Equals(VectorStoreFileAssociationErrorCode other); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public override readonly bool Equals(object obj); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public override readonly int GetHashCode(); public static bool operator ==(VectorStoreFileAssociationErrorCode left, VectorStoreFileAssociationErrorCode right); public static implicit operator VectorStoreFileAssociationErrorCode(string value); @@ -2345,9 +2237,9 @@ public enum VectorStoreFileAssociationStatus { public static VectorStoreFileStatusFilter Failed { get; } public static VectorStoreFileStatusFilter InProgress { get; } public readonly bool Equals(VectorStoreFileStatusFilter other); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public override readonly bool Equals(object obj); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public override readonly int GetHashCode(); public static bool operator ==(VectorStoreFileStatusFilter left, VectorStoreFileStatusFilter right); public static implicit operator VectorStoreFileStatusFilter(string value); diff --git a/.dotnet/api/api.md b/.dotnet/api/api.md index f1293eecc..846baaeee 100644 --- a/.dotnet/api/api.md +++ b/.dotnet/api/api.md @@ -7,9 +7,9 @@ namespace OpenAI { public static ListOrder NewestFirst { get; } public static ListOrder OldestFirst { get; } public readonly bool Equals(ListOrder other); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public override readonly bool Equals(object obj); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public override readonly int GetHashCode(); public static bool operator ==(ListOrder left, ListOrder right); public static implicit operator ListOrder(string value); @@ -69,205 +69,182 @@ namespace OpenAI.Assistants { protected internal AssistantClient(ClientPipeline pipeline, Uri endpoint, OpenAIClientOptions options); public virtual ClientPipeline Pipeline { get; } public virtual ClientResult CancelRun(ThreadRun run); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult CancelRun(string threadId, string runId, RequestOptions options); public virtual ClientResult CancelRun(string threadId, string runId, CancellationToken cancellationToken = default); public virtual Task> CancelRunAsync(ThreadRun run); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task CancelRunAsync(string threadId, string runId, RequestOptions options); - [Diagnostics.DebuggerStepThrough] public virtual Task> CancelRunAsync(string threadId, string runId, CancellationToken cancellationToken = default); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult CreateAssistant(BinaryContent content, RequestOptions options = null); public virtual ClientResult CreateAssistant(string model, AssistantCreationOptions options = null, CancellationToken cancellationToken = default); - [Diagnostics.DebuggerStepThrough] - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task CreateAssistantAsync(BinaryContent content, RequestOptions options = null); - [Diagnostics.DebuggerStepThrough] public virtual Task> CreateAssistantAsync(string model, AssistantCreationOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult CreateMessage(AssistantThread thread, MessageRole role, IEnumerable content, MessageCreationOptions options = null); public virtual ClientResult CreateMessage(string threadId, MessageRole role, IEnumerable content, MessageCreationOptions options = null, CancellationToken cancellationToken = default); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult CreateMessage(string threadId, BinaryContent content, RequestOptions options = null); public virtual Task> CreateMessageAsync(AssistantThread thread, MessageRole role, IEnumerable content, MessageCreationOptions options = null); - [Diagnostics.DebuggerStepThrough] public virtual Task> CreateMessageAsync(string threadId, MessageRole role, IEnumerable content, MessageCreationOptions options = null, CancellationToken cancellationToken = default); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task CreateMessageAsync(string threadId, BinaryContent content, RequestOptions options = null); public virtual ClientResult CreateRun(AssistantThread thread, Assistant assistant, RunCreationOptions options = null); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult CreateRun(string threadId, BinaryContent content, RequestOptions options = null); public virtual ClientResult CreateRun(string threadId, string assistantId, RunCreationOptions options = null, CancellationToken cancellationToken = default); public virtual Task> CreateRunAsync(AssistantThread thread, Assistant assistant, RunCreationOptions options = null); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task CreateRunAsync(string threadId, BinaryContent content, RequestOptions options = null); - [Diagnostics.DebuggerStepThrough] public virtual Task> CreateRunAsync(string threadId, string assistantId, RunCreationOptions options = null, CancellationToken cancellationToken = default); public virtual ResultCollection CreateRunStreaming(AssistantThread thread, Assistant assistant, RunCreationOptions options = null); public virtual ResultCollection CreateRunStreaming(string threadId, string assistantId, RunCreationOptions options = null, CancellationToken cancellationToken = default); public virtual AsyncResultCollection CreateRunStreamingAsync(AssistantThread thread, Assistant assistant, RunCreationOptions options = null); public virtual AsyncResultCollection CreateRunStreamingAsync(string threadId, string assistantId, RunCreationOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult CreateThread(ThreadCreationOptions options = null, CancellationToken cancellationToken = default); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult CreateThread(BinaryContent content, RequestOptions options = null); public virtual ClientResult CreateThreadAndRun(Assistant assistant, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult CreateThreadAndRun(BinaryContent content, RequestOptions options = null); public virtual ClientResult CreateThreadAndRun(string assistantId, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null, CancellationToken cancellationToken = default); public virtual Task> CreateThreadAndRunAsync(Assistant assistant, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task CreateThreadAndRunAsync(BinaryContent content, RequestOptions options = null); - [Diagnostics.DebuggerStepThrough] public virtual Task> CreateThreadAndRunAsync(string assistantId, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null, CancellationToken cancellationToken = default); public virtual ResultCollection CreateThreadAndRunStreaming(Assistant assistant, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null); public virtual ResultCollection CreateThreadAndRunStreaming(string assistantId, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null, CancellationToken cancellationToken = default); public virtual AsyncResultCollection CreateThreadAndRunStreamingAsync(Assistant assistant, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null); public virtual AsyncResultCollection CreateThreadAndRunStreamingAsync(string assistantId, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null, CancellationToken cancellationToken = default); - [Diagnostics.DebuggerStepThrough] public virtual Task> CreateThreadAsync(ThreadCreationOptions options = null, CancellationToken cancellationToken = default); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task CreateThreadAsync(BinaryContent content, RequestOptions options = null); public virtual ClientResult DeleteAssistant(Assistant assistant); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult DeleteAssistant(string assistantId, RequestOptions options); public virtual ClientResult DeleteAssistant(string assistantId, CancellationToken cancellationToken = default); public virtual Task> DeleteAssistantAsync(Assistant assistant); - [Diagnostics.DebuggerStepThrough] - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task DeleteAssistantAsync(string assistantId, RequestOptions options); - [Diagnostics.DebuggerStepThrough] public virtual Task> DeleteAssistantAsync(string assistantId, CancellationToken cancellationToken = default); public virtual ClientResult DeleteMessage(ThreadMessage message); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult DeleteMessage(string threadId, string messageId, RequestOptions options); public virtual ClientResult DeleteMessage(string threadId, string messageId, CancellationToken cancellationToken = default); public virtual Task> DeleteMessageAsync(ThreadMessage message); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task DeleteMessageAsync(string threadId, string messageId, RequestOptions options); - [Diagnostics.DebuggerStepThrough] public virtual Task> DeleteMessageAsync(string threadId, string messageId, CancellationToken cancellationToken = default); public virtual ClientResult DeleteThread(AssistantThread thread); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult DeleteThread(string threadId, RequestOptions options); public virtual ClientResult DeleteThread(string threadId, CancellationToken cancellationToken = default); public virtual Task> DeleteThreadAsync(AssistantThread thread); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task DeleteThreadAsync(string threadId, RequestOptions options); - [Diagnostics.DebuggerStepThrough] public virtual Task> DeleteThreadAsync(string threadId, CancellationToken cancellationToken = default); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult GetAssistant(string assistantId, RequestOptions options); public virtual ClientResult GetAssistant(string assistantId, CancellationToken cancellationToken = default); - [Diagnostics.DebuggerStepThrough] - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task GetAssistantAsync(string assistantId, RequestOptions options); - [Diagnostics.DebuggerStepThrough] public virtual Task> GetAssistantAsync(string assistantId, CancellationToken cancellationToken = default); public virtual PageableCollection GetAssistants(ListOrder? resultOrder = null, CancellationToken cancellationToken = default); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult GetAssistants(int? limit, string order, string after, string before, RequestOptions options); public virtual AsyncPageableCollection GetAssistantsAsync(ListOrder? resultOrder = null, CancellationToken cancellationToken = default); - [Diagnostics.DebuggerStepThrough] - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task GetAssistantsAsync(int? limit, string order, string after, string before, RequestOptions options); public virtual ClientResult GetMessage(ThreadMessage message); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult GetMessage(string threadId, string messageId, RequestOptions options); public virtual ClientResult GetMessage(string threadId, string messageId, CancellationToken cancellationToken = default); public virtual Task> GetMessageAsync(ThreadMessage message); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task GetMessageAsync(string threadId, string messageId, RequestOptions options); - [Diagnostics.DebuggerStepThrough] public virtual Task> GetMessageAsync(string threadId, string messageId, CancellationToken cancellationToken = default); public virtual PageableCollection GetMessages(AssistantThread thread, ListOrder? resultOrder = null); public virtual PageableCollection GetMessages(string threadId, ListOrder? resultOrder = null, CancellationToken cancellationToken = default); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult GetMessages(string threadId, int? limit, string order, string after, string before, RequestOptions options); public virtual AsyncPageableCollection GetMessagesAsync(AssistantThread thread, ListOrder? resultOrder = null); public virtual AsyncPageableCollection GetMessagesAsync(string threadId, ListOrder? resultOrder = null, CancellationToken cancellationToken = default); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task GetMessagesAsync(string threadId, int? limit, string order, string after, string before, RequestOptions options); public virtual ClientResult GetRun(ThreadRun run); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult GetRun(string threadId, string runId, RequestOptions options); public virtual ClientResult GetRun(string threadId, string runId, CancellationToken cancellationToken = default); public virtual Task> GetRunAsync(ThreadRun run); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task GetRunAsync(string threadId, string runId, RequestOptions options); - [Diagnostics.DebuggerStepThrough] public virtual Task> GetRunAsync(string threadId, string runId, CancellationToken cancellationToken = default); public virtual PageableCollection GetRuns(AssistantThread thread, ListOrder? resultOrder = null); public virtual PageableCollection GetRuns(string threadId, ListOrder? resultOrder = null, CancellationToken cancellationToken = default); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult GetRuns(string threadId, int? limit, string order, string after, string before, RequestOptions options); public virtual AsyncPageableCollection GetRunsAsync(AssistantThread thread, ListOrder? resultOrder = null); public virtual AsyncPageableCollection GetRunsAsync(string threadId, ListOrder? resultOrder = null, CancellationToken cancellationToken = default); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task GetRunsAsync(string threadId, int? limit, string order, string after, string before, RequestOptions options); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult GetRunStep(string threadId, string runId, string stepId, RequestOptions options); public virtual ClientResult GetRunStep(string threadId, string runId, string stepId, CancellationToken cancellationToken = default); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task GetRunStepAsync(string threadId, string runId, string stepId, RequestOptions options); - [Diagnostics.DebuggerStepThrough] public virtual Task> GetRunStepAsync(string threadId, string runId, string stepId, CancellationToken cancellationToken = default); public virtual PageableCollection GetRunSteps(ThreadRun run, ListOrder? resultOrder = null); public virtual PageableCollection GetRunSteps(string threadId, string runId, ListOrder? resultOrder = null, CancellationToken cancellationToken = default); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult GetRunSteps(string threadId, string runId, int? limit, string order, string after, string before, RequestOptions options); public virtual AsyncPageableCollection GetRunStepsAsync(ThreadRun run, ListOrder? resultOrder = null); public virtual AsyncPageableCollection GetRunStepsAsync(string threadId, string runId, ListOrder? resultOrder = null, CancellationToken cancellationToken = default); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task GetRunStepsAsync(string threadId, string runId, int? limit, string order, string after, string before, RequestOptions options); public virtual ClientResult GetThread(AssistantThread thread); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult GetThread(string threadId, RequestOptions options); public virtual ClientResult GetThread(string threadId, CancellationToken cancellationToken = default); public virtual Task> GetThreadAsync(AssistantThread thread); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task GetThreadAsync(string threadId, RequestOptions options); - [Diagnostics.DebuggerStepThrough] public virtual Task> GetThreadAsync(string threadId, CancellationToken cancellationToken = default); public virtual ClientResult ModifyAssistant(Assistant assistant, AssistantModificationOptions options); public virtual ClientResult ModifyAssistant(string assistantId, AssistantModificationOptions options, CancellationToken cancellationToken = default); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult ModifyAssistant(string assistantId, BinaryContent content, RequestOptions options = null); public virtual Task> ModifyAssistantAsync(Assistant assistant, AssistantModificationOptions options); - [Diagnostics.DebuggerStepThrough] public virtual Task> ModifyAssistantAsync(string assistantId, AssistantModificationOptions options, CancellationToken cancellationToken = default); - [Diagnostics.DebuggerStepThrough] - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task ModifyAssistantAsync(string assistantId, BinaryContent content, RequestOptions options = null); public virtual ClientResult ModifyMessage(ThreadMessage message, MessageModificationOptions options); public virtual ClientResult ModifyMessage(string threadId, string messageId, MessageModificationOptions options, CancellationToken cancellationToken = default); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult ModifyMessage(string threadId, string messageId, BinaryContent content, RequestOptions options = null); public virtual Task> ModifyMessageAsync(ThreadMessage message, MessageModificationOptions options); - [Diagnostics.DebuggerStepThrough] public virtual Task> ModifyMessageAsync(string threadId, string messageId, MessageModificationOptions options, CancellationToken cancellationToken = default); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task ModifyMessageAsync(string threadId, string messageId, BinaryContent content, RequestOptions options = null); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult ModifyRun(string threadId, string runId, BinaryContent content, RequestOptions options = null); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task ModifyRunAsync(string threadId, string runId, BinaryContent content, RequestOptions options = null); public virtual ClientResult ModifyThread(AssistantThread thread, ThreadModificationOptions options); public virtual ClientResult ModifyThread(string threadId, ThreadModificationOptions options, CancellationToken cancellationToken = default); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult ModifyThread(string threadId, BinaryContent content, RequestOptions options = null); public virtual Task> ModifyThreadAsync(AssistantThread thread, ThreadModificationOptions options); - [Diagnostics.DebuggerStepThrough] public virtual Task> ModifyThreadAsync(string threadId, ThreadModificationOptions options, CancellationToken cancellationToken = default); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task ModifyThreadAsync(string threadId, BinaryContent content, RequestOptions options = null); public virtual ClientResult SubmitToolOutputsToRun(ThreadRun run, IEnumerable toolOutputs); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult SubmitToolOutputsToRun(string threadId, string runId, BinaryContent content, RequestOptions options = null); public virtual ClientResult SubmitToolOutputsToRun(string threadId, string runId, IEnumerable toolOutputs, CancellationToken cancellationToken = default); public virtual Task> SubmitToolOutputsToRunAsync(ThreadRun run, IEnumerable toolOutputs); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task SubmitToolOutputsToRunAsync(string threadId, string runId, BinaryContent content, RequestOptions options = null); - [Diagnostics.DebuggerStepThrough] public virtual Task> SubmitToolOutputsToRunAsync(string threadId, string runId, IEnumerable toolOutputs, CancellationToken cancellationToken = default); public virtual ResultCollection SubmitToolOutputsToRunStreaming(ThreadRun run, IEnumerable toolOutputs); public virtual ResultCollection SubmitToolOutputsToRunStreaming(string threadId, string runId, IEnumerable toolOutputs, CancellationToken cancellationToken = default); @@ -313,9 +290,9 @@ namespace OpenAI.Assistants { public static AssistantResponseFormat JsonObject { get; } public static AssistantResponseFormat Text { get; } public bool Equals(AssistantResponseFormat other); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public override bool Equals(object obj); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public override int GetHashCode(); public static bool operator ==(AssistantResponseFormat left, AssistantResponseFormat right); public static implicit operator AssistantResponseFormat(string value); @@ -448,9 +425,9 @@ namespace OpenAI.Assistants { public static MessageFailureReason RunExpired { get; } public static MessageFailureReason RunFailed { get; } public readonly bool Equals(MessageFailureReason other); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public override readonly bool Equals(object obj); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public override readonly int GetHashCode(); public static bool operator ==(MessageFailureReason left, MessageFailureReason right); public static implicit operator MessageFailureReason(string value); @@ -482,9 +459,9 @@ namespace OpenAI.Assistants { public static MessageStatus Incomplete { get; } public static MessageStatus InProgress { get; } public readonly bool Equals(MessageStatus other); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public override readonly bool Equals(object obj); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public override readonly int GetHashCode(); public static bool operator ==(MessageStatus left, MessageStatus right); public static implicit operator MessageStatus(string value); @@ -542,9 +519,9 @@ namespace OpenAI.Assistants { public static RunErrorCode RateLimitExceeded { get; } public static RunErrorCode ServerError { get; } public readonly bool Equals(RunErrorCode other); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public override readonly bool Equals(object obj); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public override readonly int GetHashCode(); public static bool operator ==(RunErrorCode left, RunErrorCode right); public static implicit operator RunErrorCode(string value); @@ -566,9 +543,9 @@ namespace OpenAI.Assistants { public static RunIncompleteReason MaxCompletionTokens { get; } public static RunIncompleteReason MaxPromptTokens { get; } public readonly bool Equals(RunIncompleteReason other); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public override readonly bool Equals(object obj); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public override readonly int GetHashCode(); public static bool operator ==(RunIncompleteReason left, RunIncompleteReason right); public static implicit operator RunIncompleteReason(string value); @@ -598,9 +575,9 @@ namespace OpenAI.Assistants { public static RunStatus Queued { get; } public static RunStatus RequiresAction { get; } public readonly bool Equals(RunStatus other); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public override readonly bool Equals(object obj); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public override readonly int GetHashCode(); public static bool operator ==(RunStatus left, RunStatus right); public static implicit operator RunStatus(string value); @@ -674,9 +651,9 @@ namespace OpenAI.Assistants { public static RunStepErrorCode RateLimitExceeded { get; } public static RunStepErrorCode ServerError { get; } public readonly bool Equals(RunStepErrorCode other); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public override readonly bool Equals(object obj); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public override readonly int GetHashCode(); public static bool operator ==(RunStepErrorCode left, RunStepErrorCode right); public static implicit operator RunStepErrorCode(string value); @@ -693,9 +670,9 @@ namespace OpenAI.Assistants { public static RunStepStatus Failed { get; } public static RunStepStatus InProgress { get; } public readonly bool Equals(RunStepStatus other); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public override readonly bool Equals(object obj); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public override readonly int GetHashCode(); public static bool operator ==(RunStepStatus left, RunStepStatus right); public static implicit operator RunStepStatus(string value); @@ -739,9 +716,9 @@ namespace OpenAI.Assistants { public static RunStepType MessageCreation { get; } public static RunStepType ToolCalls { get; } public readonly bool Equals(RunStepType other); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public override readonly bool Equals(object obj); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public override readonly int GetHashCode(); public static bool operator ==(RunStepType left, RunStepType right); public static implicit operator RunStepType(string value); @@ -978,33 +955,25 @@ namespace OpenAI.Audio { public AudioClient(string model, OpenAIClientOptions options = null); public AudioClient(string model, ApiKeyCredential credential, OpenAIClientOptions options = null); public virtual ClientPipeline Pipeline { get; } - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult GenerateSpeechFromText(BinaryContent content, RequestOptions options = null); public virtual ClientResult GenerateSpeechFromText(string text, GeneratedSpeechVoice voice, SpeechGenerationOptions options = null, CancellationToken cancellationToken = default); - [Diagnostics.DebuggerStepThrough] - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task GenerateSpeechFromTextAsync(BinaryContent content, RequestOptions options = null); - [Diagnostics.DebuggerStepThrough] public virtual Task> GenerateSpeechFromTextAsync(string text, GeneratedSpeechVoice voice, SpeechGenerationOptions options = null, CancellationToken cancellationToken = default); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult TranscribeAudio(BinaryContent content, string contentType, RequestOptions options = null); public virtual ClientResult TranscribeAudio(Stream audio, string audioFilename, AudioTranscriptionOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult TranscribeAudio(string audioFilePath, AudioTranscriptionOptions options = null); - [Diagnostics.DebuggerStepThrough] - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task TranscribeAudioAsync(BinaryContent content, string contentType, RequestOptions options = null); - [Diagnostics.DebuggerStepThrough] public virtual Task> TranscribeAudioAsync(Stream audio, string audioFilename, AudioTranscriptionOptions options = null, CancellationToken cancellationToken = default); - [Diagnostics.DebuggerStepThrough] public virtual Task> TranscribeAudioAsync(string audioFilePath, AudioTranscriptionOptions options = null); public virtual ClientResult TranslateAudio(BinaryContent content, string contentType, RequestOptions options = null); public virtual ClientResult TranslateAudio(Stream audio, string audioFilename, AudioTranslationOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult TranslateAudio(string audioFilePath, AudioTranslationOptions options = null); - [Diagnostics.DebuggerStepThrough] public virtual Task TranslateAudioAsync(BinaryContent content, string contentType, RequestOptions options = null); - [Diagnostics.DebuggerStepThrough] public virtual Task> TranslateAudioAsync(Stream audio, string audioFilename, AudioTranslationOptions options = null, CancellationToken cancellationToken = default); - [Diagnostics.DebuggerStepThrough] public virtual Task> TranslateAudioAsync(string audioFilePath, AudioTranslationOptions options = null); } [Flags] @@ -1147,16 +1116,12 @@ namespace OpenAI.Batch { protected internal BatchClient(ClientPipeline pipeline, Uri endpoint, OpenAIClientOptions options); public virtual ClientPipeline Pipeline { get; } public virtual ClientResult CancelBatch(string batchId, RequestOptions options); - [Diagnostics.DebuggerStepThrough] public virtual Task CancelBatchAsync(string batchId, RequestOptions options); public virtual ClientResult CreateBatch(BinaryContent content, RequestOptions options = null); - [Diagnostics.DebuggerStepThrough] public virtual Task CreateBatchAsync(BinaryContent content, RequestOptions options = null); public virtual ClientResult GetBatch(string batchId, RequestOptions options); - [Diagnostics.DebuggerStepThrough] public virtual Task GetBatchAsync(string batchId, RequestOptions options); public virtual ClientResult GetBatches(string after, int? limit, RequestOptions options); - [Diagnostics.DebuggerStepThrough] public virtual Task GetBatchesAsync(string after, int? limit, RequestOptions options); } } @@ -1183,15 +1148,12 @@ namespace OpenAI.Chat { public ChatClient(string model, ApiKeyCredential credential, OpenAIClientOptions options = null); public virtual ClientPipeline Pipeline { get; } public virtual ClientResult CompleteChat(params ChatMessage[] messages); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult CompleteChat(BinaryContent content, RequestOptions options = null); public virtual ClientResult CompleteChat(IEnumerable messages, ChatCompletionOptions options = null, CancellationToken cancellationToken = default); - [Diagnostics.DebuggerStepThrough] public virtual Task> CompleteChatAsync(params ChatMessage[] messages); - [Diagnostics.DebuggerStepThrough] - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task CompleteChatAsync(BinaryContent content, RequestOptions options = null); - [Diagnostics.DebuggerStepThrough] public virtual Task> CompleteChatAsync(IEnumerable messages, ChatCompletionOptions options = null, CancellationToken cancellationToken = default); public virtual ResultCollection CompleteChatStreaming(params ChatMessage[] messages); public virtual ResultCollection CompleteChatStreaming(IEnumerable messages, ChatCompletionOptions options = null, CancellationToken cancellationToken = default); @@ -1325,9 +1287,9 @@ namespace OpenAI.Chat { public static ChatMessageContentPartKind Image { get; } public static ChatMessageContentPartKind Text { get; } public readonly bool Equals(ChatMessageContentPartKind other); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public override readonly bool Equals(object obj); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public override readonly int GetHashCode(); public static bool operator ==(ChatMessageContentPartKind left, ChatMessageContentPartKind right); public static implicit operator ChatMessageContentPartKind(string value); @@ -1411,9 +1373,9 @@ namespace OpenAI.Chat { public ChatToolCallKind(string value); public static ChatToolCallKind Function { get; } public readonly bool Equals(ChatToolCallKind other); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public override readonly bool Equals(object obj); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public override readonly int GetHashCode(); public static bool operator ==(ChatToolCallKind left, ChatToolCallKind right); public static implicit operator ChatToolCallKind(string value); @@ -1437,9 +1399,9 @@ namespace OpenAI.Chat { public ChatToolKind(string value); public static ChatToolKind Function { get; } public readonly bool Equals(ChatToolKind other); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public override readonly bool Equals(object obj); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public override readonly int GetHashCode(); public static bool operator ==(ChatToolKind left, ChatToolKind right); public static implicit operator ChatToolKind(string value); @@ -1465,9 +1427,9 @@ namespace OpenAI.Chat { public static ImageChatMessageContentPartDetail High { get; } public static ImageChatMessageContentPartDetail Low { get; } public readonly bool Equals(ImageChatMessageContentPartDetail other); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public override readonly bool Equals(object obj); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public override readonly int GetHashCode(); public static bool operator ==(ImageChatMessageContentPartDetail left, ImageChatMessageContentPartDetail right); public static implicit operator ImageChatMessageContentPartDetail(string value); @@ -1563,18 +1525,14 @@ namespace OpenAI.Embeddings { public EmbeddingClient(string model, ApiKeyCredential credential, OpenAIClientOptions options = null); public virtual ClientPipeline Pipeline { get; } public virtual ClientResult GenerateEmbedding(string input, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = default); - [Diagnostics.DebuggerStepThrough] public virtual Task> GenerateEmbeddingAsync(string input, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = default); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult GenerateEmbeddings(BinaryContent content, RequestOptions options = null); public virtual ClientResult GenerateEmbeddings(IEnumerable> inputs, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult GenerateEmbeddings(IEnumerable inputs, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = default); - [Diagnostics.DebuggerStepThrough] - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task GenerateEmbeddingsAsync(BinaryContent content, RequestOptions options = null); - [Diagnostics.DebuggerStepThrough] public virtual Task> GenerateEmbeddingsAsync(IEnumerable> inputs, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = default); - [Diagnostics.DebuggerStepThrough] public virtual Task> GenerateEmbeddingsAsync(IEnumerable inputs, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = default); } public class EmbeddingCollection : ObjectModel.ReadOnlyCollection, IJsonModel, IPersistableModel { @@ -1613,53 +1571,42 @@ namespace OpenAI.Files { protected internal FileClient(ClientPipeline pipeline, Uri endpoint, OpenAIClientOptions options); public virtual ClientPipeline Pipeline { get; } public virtual ClientResult DeleteFile(OpenAIFileInfo file); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult DeleteFile(string fileId, RequestOptions options); public virtual ClientResult DeleteFile(string fileId, CancellationToken cancellationToken = default); public virtual Task> DeleteFileAsync(OpenAIFileInfo file); - [Diagnostics.DebuggerStepThrough] - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task DeleteFileAsync(string fileId, RequestOptions options); - [Diagnostics.DebuggerStepThrough] public virtual Task> DeleteFileAsync(string fileId, CancellationToken cancellationToken = default); public virtual ClientResult DownloadFile(OpenAIFileInfo file); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult DownloadFile(string fileId, RequestOptions options); public virtual ClientResult DownloadFile(string fileId, CancellationToken cancellationToken = default); public virtual Task> DownloadFileAsync(OpenAIFileInfo file); - [Diagnostics.DebuggerStepThrough] - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task DownloadFileAsync(string fileId, RequestOptions options); - [Diagnostics.DebuggerStepThrough] public virtual Task> DownloadFileAsync(string fileId, CancellationToken cancellationToken = default); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult GetFile(string fileId, RequestOptions options); public virtual ClientResult GetFile(string fileId, CancellationToken cancellationToken = default); - [Diagnostics.DebuggerStepThrough] - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task GetFileAsync(string fileId, RequestOptions options); - [Diagnostics.DebuggerStepThrough] public virtual Task> GetFileAsync(string fileId, CancellationToken cancellationToken = default); public virtual ClientResult GetFiles(OpenAIFilePurpose? purpose = null, CancellationToken cancellationToken = default); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult GetFiles(string purpose, RequestOptions options); - [Diagnostics.DebuggerStepThrough] public virtual Task> GetFilesAsync(OpenAIFilePurpose? purpose = null, CancellationToken cancellationToken = default); - [Diagnostics.DebuggerStepThrough] - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task GetFilesAsync(string purpose, RequestOptions options); public virtual ClientResult UploadFile(BinaryData file, string filename, FileUploadPurpose purpose); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult UploadFile(BinaryContent content, string contentType, RequestOptions options = null); public virtual ClientResult UploadFile(Stream file, string filename, FileUploadPurpose purpose, CancellationToken cancellationToken = default); public virtual ClientResult UploadFile(string filePath, FileUploadPurpose purpose); public virtual Task> UploadFileAsync(BinaryData file, string filename, FileUploadPurpose purpose); - [Diagnostics.DebuggerStepThrough] - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task UploadFileAsync(BinaryContent content, string contentType, RequestOptions options = null); - [Diagnostics.DebuggerStepThrough] public virtual Task> UploadFileAsync(Stream file, string filename, FileUploadPurpose purpose, CancellationToken cancellationToken = default); - [Diagnostics.DebuggerStepThrough] public virtual Task> UploadFileAsync(string filePath, FileUploadPurpose purpose); } public readonly partial struct FileUploadPurpose : IEquatable { @@ -1671,9 +1618,9 @@ namespace OpenAI.Files { public static FileUploadPurpose FineTune { get; } public static FileUploadPurpose Vision { get; } public readonly bool Equals(FileUploadPurpose other); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public override readonly bool Equals(object obj); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public override readonly int GetHashCode(); public static bool operator ==(FileUploadPurpose left, FileUploadPurpose right); public static implicit operator FileUploadPurpose(string value); @@ -1713,9 +1660,9 @@ namespace OpenAI.Files { public static OpenAIFilePurpose FineTuneResults { get; } public static OpenAIFilePurpose Vision { get; } public readonly bool Equals(OpenAIFilePurpose other); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public override readonly bool Equals(object obj); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public override readonly int GetHashCode(); public static bool operator ==(OpenAIFilePurpose left, OpenAIFilePurpose right); public static implicit operator OpenAIFilePurpose(string value); @@ -1730,9 +1677,9 @@ namespace OpenAI.Files { public static OpenAIFileStatus Processed { get; } public static OpenAIFileStatus Uploaded { get; } public readonly bool Equals(OpenAIFileStatus other); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public override readonly bool Equals(object obj); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public override readonly int GetHashCode(); public static bool operator ==(OpenAIFileStatus left, OpenAIFileStatus right); public static implicit operator OpenAIFileStatus(string value); @@ -1748,22 +1695,16 @@ namespace OpenAI.FineTuning { protected internal FineTuningClient(ClientPipeline pipeline, Uri endpoint, OpenAIClientOptions options); public virtual ClientPipeline Pipeline { get; } public virtual ClientResult CancelJob(string jobId, RequestOptions options); - [Diagnostics.DebuggerStepThrough] public virtual Task CancelJobAsync(string jobId, RequestOptions options); public virtual ClientResult CreateJob(BinaryContent content, RequestOptions options = null); - [Diagnostics.DebuggerStepThrough] public virtual Task CreateJobAsync(BinaryContent content, RequestOptions options = null); public virtual ClientResult GetJob(string jobId, RequestOptions options); - [Diagnostics.DebuggerStepThrough] public virtual Task GetJobAsync(string jobId, RequestOptions options); public virtual ClientResult GetJobCheckpoints(string fineTuningJobId, string after, int? limit, RequestOptions options); - [Diagnostics.DebuggerStepThrough] public virtual Task GetJobCheckpointsAsync(string fineTuningJobId, string after, int? limit, RequestOptions options); public virtual ClientResult GetJobEvents(string jobId, string after, int? limit, RequestOptions options); - [Diagnostics.DebuggerStepThrough] public virtual Task GetJobEventsAsync(string jobId, string after, int? limit, RequestOptions options); public virtual ClientResult GetJobs(string after, int? limit, RequestOptions options); - [Diagnostics.DebuggerStepThrough] public virtual Task GetJobsAsync(string after, int? limit, RequestOptions options); } } @@ -1805,9 +1746,9 @@ namespace OpenAI.Images { public static readonly GeneratedImageSize W512xH512; public GeneratedImageSize(int width, int height); public readonly bool Equals(GeneratedImageSize other); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public override readonly bool Equals(object obj); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public override readonly int GetHashCode(); public static bool operator ==(GeneratedImageSize left, GeneratedImageSize right); public static bool operator !=(GeneratedImageSize left, GeneratedImageSize right); @@ -1824,61 +1765,44 @@ namespace OpenAI.Images { public ImageClient(string model, ApiKeyCredential credential, OpenAIClientOptions options = null); public virtual ClientPipeline Pipeline { get; } public virtual ClientResult GenerateImage(string prompt, ImageGenerationOptions options = null, CancellationToken cancellationToken = default); - [Diagnostics.DebuggerStepThrough] public virtual Task> GenerateImageAsync(string prompt, ImageGenerationOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult GenerateImageEdit(Stream image, string imageFilename, string prompt, ImageEditOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult GenerateImageEdit(Stream image, string imageFilename, string prompt, Stream mask, string maskFilename, ImageEditOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult GenerateImageEdit(string imageFilePath, string prompt, ImageEditOptions options = null); public virtual ClientResult GenerateImageEdit(string imageFilePath, string prompt, string maskFilePath, ImageEditOptions options = null); - [Diagnostics.DebuggerStepThrough] public virtual Task> GenerateImageEditAsync(Stream image, string imageFilename, string prompt, ImageEditOptions options = null, CancellationToken cancellationToken = default); - [Diagnostics.DebuggerStepThrough] public virtual Task> GenerateImageEditAsync(Stream image, string imageFilename, string prompt, Stream mask, string maskFilename, ImageEditOptions options = null, CancellationToken cancellationToken = default); - [Diagnostics.DebuggerStepThrough] public virtual Task> GenerateImageEditAsync(string imageFilePath, string prompt, ImageEditOptions options = null); - [Diagnostics.DebuggerStepThrough] public virtual Task> GenerateImageEditAsync(string imageFilePath, string prompt, string maskFilePath, ImageEditOptions options = null); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult GenerateImageEdits(BinaryContent content, string contentType, RequestOptions options = null); public virtual ClientResult GenerateImageEdits(Stream image, string imageFilename, string prompt, int imageCount, ImageEditOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult GenerateImageEdits(Stream image, string imageFilename, string prompt, Stream mask, string maskFilename, int imageCount, ImageEditOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult GenerateImageEdits(string imageFilePath, string prompt, int imageCount, ImageEditOptions options = null); public virtual ClientResult GenerateImageEdits(string imageFilePath, string prompt, string maskFilePath, int imageCount, ImageEditOptions options = null); - [Diagnostics.DebuggerStepThrough] - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task GenerateImageEditsAsync(BinaryContent content, string contentType, RequestOptions options = null); - [Diagnostics.DebuggerStepThrough] public virtual Task> GenerateImageEditsAsync(Stream image, string imageFilename, string prompt, int imageCount, ImageEditOptions options = null, CancellationToken cancellationToken = default); - [Diagnostics.DebuggerStepThrough] public virtual Task> GenerateImageEditsAsync(Stream image, string imageFilename, string prompt, Stream mask, string maskFilename, int imageCount, ImageEditOptions options = null, CancellationToken cancellationToken = default); - [Diagnostics.DebuggerStepThrough] public virtual Task> GenerateImageEditsAsync(string imageFilePath, string prompt, int imageCount, ImageEditOptions options = null); - [Diagnostics.DebuggerStepThrough] public virtual Task> GenerateImageEditsAsync(string imageFilePath, string prompt, string maskFilePath, int imageCount, ImageEditOptions options = null); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult GenerateImages(BinaryContent content, RequestOptions options = null); public virtual ClientResult GenerateImages(string prompt, int imageCount, ImageGenerationOptions options = null, CancellationToken cancellationToken = default); - [Diagnostics.DebuggerStepThrough] - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task GenerateImagesAsync(BinaryContent content, RequestOptions options = null); - [Diagnostics.DebuggerStepThrough] public virtual Task> GenerateImagesAsync(string prompt, int imageCount, ImageGenerationOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult GenerateImageVariation(Stream image, string imageFilename, ImageVariationOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult GenerateImageVariation(string imageFilePath, ImageVariationOptions options = null); - [Diagnostics.DebuggerStepThrough] public virtual Task> GenerateImageVariationAsync(Stream image, string imageFilename, ImageVariationOptions options = null, CancellationToken cancellationToken = default); - [Diagnostics.DebuggerStepThrough] public virtual Task> GenerateImageVariationAsync(string imageFilePath, ImageVariationOptions options = null); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult GenerateImageVariations(BinaryContent content, string contentType, RequestOptions options = null); public virtual ClientResult GenerateImageVariations(Stream image, string imageFilename, int imageCount, ImageVariationOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult GenerateImageVariations(string imageFilePath, int imageCount, ImageVariationOptions options = null); - [Diagnostics.DebuggerStepThrough] - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task GenerateImageVariationsAsync(BinaryContent content, string contentType, RequestOptions options = null); - [Diagnostics.DebuggerStepThrough] public virtual Task> GenerateImageVariationsAsync(Stream image, string imageFilename, int imageCount, ImageVariationOptions options = null, CancellationToken cancellationToken = default); - [Diagnostics.DebuggerStepThrough] public virtual Task> GenerateImageVariationsAsync(string imageFilePath, int imageCount, ImageVariationOptions options = null); } public class ImageEditOptions : IJsonModel, IPersistableModel { @@ -1921,29 +1845,23 @@ namespace OpenAI.Models { public ModelClient(ApiKeyCredential credential, OpenAIClientOptions options = null); protected internal ModelClient(ClientPipeline pipeline, Uri endpoint, OpenAIClientOptions options); public virtual ClientPipeline Pipeline { get; } - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult DeleteModel(string model, RequestOptions options); public virtual ClientResult DeleteModel(string model); - [Diagnostics.DebuggerStepThrough] - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task DeleteModelAsync(string model, RequestOptions options); - [Diagnostics.DebuggerStepThrough] public virtual Task> DeleteModelAsync(string model); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult GetModel(string model, RequestOptions options); public virtual ClientResult GetModel(string model); - [Diagnostics.DebuggerStepThrough] - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task GetModelAsync(string model, RequestOptions options); - [Diagnostics.DebuggerStepThrough] public virtual Task> GetModelAsync(string model); public virtual ClientResult GetModels(); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult GetModels(RequestOptions options); - [Diagnostics.DebuggerStepThrough] public virtual Task> GetModelsAsync(); - [Diagnostics.DebuggerStepThrough] - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task GetModelsAsync(RequestOptions options); } public class OpenAIModelInfo : IJsonModel, IPersistableModel { @@ -2008,15 +1926,12 @@ namespace OpenAI.Moderations { public ModerationClient(string model, ApiKeyCredential credential, OpenAIClientOptions options = null); public virtual ClientPipeline Pipeline { get; } public virtual ClientResult ClassifyTextInput(string input, CancellationToken cancellationToken = default); - [Diagnostics.DebuggerStepThrough] public virtual Task> ClassifyTextInputAsync(string input, CancellationToken cancellationToken = default); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult ClassifyTextInputs(BinaryContent content, RequestOptions options = null); public virtual ClientResult ClassifyTextInputs(IEnumerable inputs, CancellationToken cancellationToken = default); - [Diagnostics.DebuggerStepThrough] - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task ClassifyTextInputsAsync(BinaryContent content, RequestOptions options = null); - [Diagnostics.DebuggerStepThrough] public virtual Task> ClassifyTextInputsAsync(IEnumerable inputs, CancellationToken cancellationToken = default); } public class ModerationCollection : ObjectModel.ReadOnlyCollection, IJsonModel, IPersistableModel { @@ -2098,9 +2013,9 @@ namespace OpenAI.VectorStores { public static VectorStoreBatchFileJobStatus Failed { get; } public static VectorStoreBatchFileJobStatus InProgress { get; } public readonly bool Equals(VectorStoreBatchFileJobStatus other); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public override readonly bool Equals(object obj); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public override readonly int GetHashCode(); public static bool operator ==(VectorStoreBatchFileJobStatus left, VectorStoreBatchFileJobStatus right); public static implicit operator VectorStoreBatchFileJobStatus(string value); @@ -2114,126 +2029,103 @@ namespace OpenAI.VectorStores { protected internal VectorStoreClient(ClientPipeline pipeline, Uri endpoint, OpenAIClientOptions options); public virtual ClientPipeline Pipeline { get; } public virtual ClientResult AddFileToVectorStore(VectorStore vectorStore, Files.OpenAIFileInfo file); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult AddFileToVectorStore(string vectorStoreId, BinaryContent content, RequestOptions options = null); public virtual ClientResult AddFileToVectorStore(string vectorStoreId, string fileId, CancellationToken cancellationToken = default); public virtual Task> AddFileToVectorStoreAsync(VectorStore vectorStore, Files.OpenAIFileInfo file); - [Diagnostics.DebuggerStepThrough] - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task AddFileToVectorStoreAsync(string vectorStoreId, BinaryContent content, RequestOptions options = null); - [Diagnostics.DebuggerStepThrough] public virtual Task> AddFileToVectorStoreAsync(string vectorStoreId, string fileId, CancellationToken cancellationToken = default); public virtual ClientResult CancelBatchFileJob(VectorStoreBatchFileJob batchJob); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult CancelBatchFileJob(string vectorStoreId, string batchId, RequestOptions options); public virtual ClientResult CancelBatchFileJob(string vectorStoreId, string batchJobId, CancellationToken cancellationToken = default); public virtual Task> CancelBatchFileJobAsync(VectorStoreBatchFileJob batchJob); - [Diagnostics.DebuggerStepThrough] - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task CancelBatchFileJobAsync(string vectorStoreId, string batchId, RequestOptions options); - [Diagnostics.DebuggerStepThrough] public virtual Task> CancelBatchFileJobAsync(string vectorStoreId, string batchJobId, CancellationToken cancellationToken = default); public virtual ClientResult CreateBatchFileJob(VectorStore vectorStore, IEnumerable files); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult CreateBatchFileJob(string vectorStoreId, BinaryContent content, RequestOptions options = null); public virtual ClientResult CreateBatchFileJob(string vectorStoreId, IEnumerable fileIds, CancellationToken cancellationToken = default); public virtual Task> CreateBatchFileJobAsync(VectorStore vectorStore, IEnumerable files); - [Diagnostics.DebuggerStepThrough] - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task CreateBatchFileJobAsync(string vectorStoreId, BinaryContent content, RequestOptions options = null); - [Diagnostics.DebuggerStepThrough] public virtual Task> CreateBatchFileJobAsync(string vectorStoreId, IEnumerable fileIds, CancellationToken cancellationToken = default); public virtual ClientResult CreateVectorStore(VectorStoreCreationOptions vectorStore = null, CancellationToken cancellationToken = default); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult CreateVectorStore(BinaryContent content, RequestOptions options = null); - [Diagnostics.DebuggerStepThrough] public virtual Task> CreateVectorStoreAsync(VectorStoreCreationOptions vectorStore = null, CancellationToken cancellationToken = default); - [Diagnostics.DebuggerStepThrough] public virtual Task CreateVectorStoreAsync(BinaryContent content, RequestOptions options = null); public virtual ClientResult DeleteVectorStore(VectorStore vectorStore); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult DeleteVectorStore(string vectorStoreId, RequestOptions options); public virtual ClientResult DeleteVectorStore(string vectorStoreId, CancellationToken cancellationToken = default); public virtual Task> DeleteVectorStoreAsync(VectorStore vectorStore); - [Diagnostics.DebuggerStepThrough] - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task DeleteVectorStoreAsync(string vectorStoreId, RequestOptions options); - [Diagnostics.DebuggerStepThrough] public virtual Task> DeleteVectorStoreAsync(string vectorStoreId, CancellationToken cancellationToken = default); public virtual ClientResult GetBatchFileJob(VectorStoreBatchFileJob batchJob); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult GetBatchFileJob(string vectorStoreId, string batchId, RequestOptions options); public virtual ClientResult GetBatchFileJob(string vectorStoreId, string batchJobId, CancellationToken cancellationToken = default); public virtual Task> GetBatchFileJobAsync(VectorStoreBatchFileJob batchJob); - [Diagnostics.DebuggerStepThrough] - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task GetBatchFileJobAsync(string vectorStoreId, string batchId, RequestOptions options); - [Diagnostics.DebuggerStepThrough] public virtual Task> GetBatchFileJobAsync(string vectorStoreId, string batchJobId, CancellationToken cancellationToken = default); public virtual ClientResult GetFileAssociation(VectorStore vectorStore, Files.OpenAIFileInfo file); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult GetFileAssociation(string vectorStoreId, string fileId, RequestOptions options); public virtual ClientResult GetFileAssociation(string vectorStoreId, string fileId, CancellationToken cancellationToken = default); public virtual Task> GetFileAssociationAsync(VectorStore vectorStore, Files.OpenAIFileInfo file); - [Diagnostics.DebuggerStepThrough] - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task GetFileAssociationAsync(string vectorStoreId, string fileId, RequestOptions options); - [Diagnostics.DebuggerStepThrough] public virtual Task> GetFileAssociationAsync(string vectorStoreId, string fileId, CancellationToken cancellationToken = default); public virtual PageableCollection GetFileAssociations(VectorStore vectorStore, ListOrder? resultOrder = null, VectorStoreFileStatusFilter? filter = null); public virtual PageableCollection GetFileAssociations(VectorStoreBatchFileJob batchJob, ListOrder? resultOrder = null, VectorStoreFileStatusFilter? filter = null); public virtual PageableCollection GetFileAssociations(string vectorStoreId, ListOrder? resultOrder = null, VectorStoreFileStatusFilter? filter = null, CancellationToken cancellationToken = default); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult GetFileAssociations(string vectorStoreId, int? limit, string order, string after, string before, string filter, RequestOptions options); public virtual PageableCollection GetFileAssociations(string vectorStoreId, string batchJobId, ListOrder? resultOrder = null, VectorStoreFileStatusFilter? filter = null, CancellationToken cancellationToken = default); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult GetFileAssociations(string vectorStoreId, string batchId, int? limit, string order, string after, string before, string filter, RequestOptions options); public virtual AsyncPageableCollection GetFileAssociationsAsync(VectorStore vectorStore, ListOrder? resultOrder = null, VectorStoreFileStatusFilter? filter = null); public virtual AsyncPageableCollection GetFileAssociationsAsync(VectorStoreBatchFileJob batchJob, ListOrder? resultOrder = null, VectorStoreFileStatusFilter? filter = null); public virtual AsyncPageableCollection GetFileAssociationsAsync(string vectorStoreId, ListOrder? resultOrder = null, VectorStoreFileStatusFilter? filter = null, CancellationToken cancellationToken = default); - [Diagnostics.DebuggerStepThrough] - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task GetFileAssociationsAsync(string vectorStoreId, int? limit, string order, string after, string before, string filter, RequestOptions options); public virtual AsyncPageableCollection GetFileAssociationsAsync(string vectorStoreId, string batchJobId, ListOrder? resultOrder = null, VectorStoreFileStatusFilter? filter = null, CancellationToken cancellationToken = default); - [Diagnostics.DebuggerStepThrough] - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task GetFileAssociationsAsync(string vectorStoreId, string batchId, int? limit, string order, string after, string before, string filter, RequestOptions options); public virtual ClientResult GetVectorStore(VectorStore vectorStore); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult GetVectorStore(string vectorStoreId, RequestOptions options); public virtual ClientResult GetVectorStore(string vectorStoreId, CancellationToken cancellationToken = default); public virtual Task> GetVectorStoreAsync(VectorStore vectorStore); - [Diagnostics.DebuggerStepThrough] - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task GetVectorStoreAsync(string vectorStoreId, RequestOptions options); - [Diagnostics.DebuggerStepThrough] public virtual Task> GetVectorStoreAsync(string vectorStoreId, CancellationToken cancellationToken = default); public virtual PageableCollection GetVectorStores(ListOrder? resultOrder = null, CancellationToken cancellationToken = default); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult GetVectorStores(int? limit, string order, string after, string before, RequestOptions options); public virtual AsyncPageableCollection GetVectorStoresAsync(ListOrder? resultOrder = null, CancellationToken cancellationToken = default); - [Diagnostics.DebuggerStepThrough] - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task GetVectorStoresAsync(int? limit, string order, string after, string before, RequestOptions options); public virtual ClientResult ModifyVectorStore(VectorStore vectorStore, VectorStoreModificationOptions options); public virtual ClientResult ModifyVectorStore(string vectorStoreId, VectorStoreModificationOptions vectorStore, CancellationToken cancellationToken = default); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult ModifyVectorStore(string vectorStoreId, BinaryContent content, RequestOptions options = null); public virtual Task> ModifyVectorStoreAsync(VectorStore vectorStore, VectorStoreModificationOptions options); - [Diagnostics.DebuggerStepThrough] public virtual Task> ModifyVectorStoreAsync(string vectorStoreId, VectorStoreModificationOptions vectorStore, CancellationToken cancellationToken = default); - [Diagnostics.DebuggerStepThrough] - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task ModifyVectorStoreAsync(string vectorStoreId, BinaryContent content, RequestOptions options = null); public virtual ClientResult RemoveFileFromStore(VectorStore vectorStore, Files.OpenAIFileInfo file); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult RemoveFileFromStore(string vectorStoreId, string fileId, RequestOptions options); public virtual ClientResult RemoveFileFromStore(string vectorStoreId, string fileId, CancellationToken cancellationToken = default); public virtual Task> RemoveFileFromStoreAsync(VectorStore vectorStore, Files.OpenAIFileInfo file); - [Diagnostics.DebuggerStepThrough] - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task RemoveFileFromStoreAsync(string vectorStoreId, string fileId, RequestOptions options); - [Diagnostics.DebuggerStepThrough] public virtual Task> RemoveFileFromStoreAsync(string vectorStoreId, string fileId, CancellationToken cancellationToken = default); } public class VectorStoreCreationOptions : IJsonModel, IPersistableModel { @@ -2302,9 +2194,9 @@ namespace OpenAI.VectorStores { public static VectorStoreFileAssociationErrorCode ParsingError { get; } public static VectorStoreFileAssociationErrorCode UnhandledMimeType { get; } public readonly bool Equals(VectorStoreFileAssociationErrorCode other); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public override readonly bool Equals(object obj); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public override readonly int GetHashCode(); public static bool operator ==(VectorStoreFileAssociationErrorCode left, VectorStoreFileAssociationErrorCode right); public static implicit operator VectorStoreFileAssociationErrorCode(string value); @@ -2346,9 +2238,9 @@ namespace OpenAI.VectorStores { public static VectorStoreFileStatusFilter Failed { get; } public static VectorStoreFileStatusFilter InProgress { get; } public readonly bool Equals(VectorStoreFileStatusFilter other); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public override readonly bool Equals(object obj); - [ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)] + [EditorBrowsable(EditorBrowsableState.Never)] public override readonly int GetHashCode(); public static bool operator ==(VectorStoreFileStatusFilter left, VectorStoreFileStatusFilter right); public static implicit operator VectorStoreFileStatusFilter(string value); diff --git a/.scripts/Generate-Api.ps1 b/.scripts/Generate-Api.ps1 index d6c26d1af..19e123e37 100644 --- a/.scripts/Generate-Api.ps1 +++ b/.scripts/Generate-Api.ps1 @@ -19,6 +19,9 @@ $content = Get-Content $outputPath -Raw $content = $content -replace '//.*\r?\n', '' $content = $content -replace '\r?\n\r?\n', "`n" +$content = $content -replace '.*Diagnostics.DebuggerStepThrough.*\n', '' +$content = $content -replace 'ComponentModel.', '' + $content = $content -replace 'System.ClientModel.Primitives.', '' $content = $content -replace 'System.ClientModel.', '' $content = $content -replace 'System.Collections.Generic.', '' From d84ae71749a6759b8b6201310803bd79438ea1df Mon Sep 17 00:00:00 2001 From: Jose Arriaga Maldonado Date: Thu, 1 Aug 2024 16:08:27 -0700 Subject: [PATCH 6/7] Add dotnet build --- .dotnet/api/OpenAI.netstandard2.0.cs | 439 +++++++++++++++------------ .dotnet/api/api.md | 439 +++++++++++++++------------ .scripts/Export-API.ps1 | 70 +++++ .scripts/Generate-Api.ps1 | 49 --- 4 files changed, 546 insertions(+), 451 deletions(-) create mode 100644 .scripts/Export-API.ps1 delete mode 100644 .scripts/Generate-Api.ps1 diff --git a/.dotnet/api/OpenAI.netstandard2.0.cs b/.dotnet/api/OpenAI.netstandard2.0.cs index 6e0c7d042..24d7c45a5 100644 --- a/.dotnet/api/OpenAI.netstandard2.0.cs +++ b/.dotnet/api/OpenAI.netstandard2.0.cs @@ -35,10 +35,10 @@ public class OpenAIClient { public virtual VectorStoreClient GetVectorStoreClient(); } public class OpenAIClientOptions : ClientPipelineOptions { - public string ApplicationId { get; init; } - public Uri Endpoint { get; init; } - public string OrganizationId { get; init; } - public string ProjectId { get; init; } + public string ApplicationId { get; set; } + public Uri Endpoint { get; set; } + public string OrganizationId { get; set; } + public string ProjectId { get; set; } } } namespace OpenAI.Assistants { @@ -97,10 +97,10 @@ public class AssistantClient { [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task CreateRunAsync(string threadId, BinaryContent content, RequestOptions options = null); public virtual Task> CreateRunAsync(string threadId, string assistantId, RunCreationOptions options = null, CancellationToken cancellationToken = default); - public virtual ResultCollection CreateRunStreaming(AssistantThread thread, Assistant assistant, RunCreationOptions options = null); - public virtual ResultCollection CreateRunStreaming(string threadId, string assistantId, RunCreationOptions options = null, CancellationToken cancellationToken = default); - public virtual AsyncResultCollection CreateRunStreamingAsync(AssistantThread thread, Assistant assistant, RunCreationOptions options = null); - public virtual AsyncResultCollection CreateRunStreamingAsync(string threadId, string assistantId, RunCreationOptions options = null, CancellationToken cancellationToken = default); + public virtual CollectionResult CreateRunStreaming(AssistantThread thread, Assistant assistant, RunCreationOptions options = null); + public virtual CollectionResult CreateRunStreaming(string threadId, string assistantId, RunCreationOptions options = null, CancellationToken cancellationToken = default); + public virtual AsyncCollectionResult CreateRunStreamingAsync(AssistantThread thread, Assistant assistant, RunCreationOptions options = null); + public virtual AsyncCollectionResult CreateRunStreamingAsync(string threadId, string assistantId, RunCreationOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult CreateThread(ThreadCreationOptions options = null, CancellationToken cancellationToken = default); [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult CreateThread(BinaryContent content, RequestOptions options = null); @@ -112,10 +112,10 @@ public class AssistantClient { [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task CreateThreadAndRunAsync(BinaryContent content, RequestOptions options = null); public virtual Task> CreateThreadAndRunAsync(string assistantId, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null, CancellationToken cancellationToken = default); - public virtual ResultCollection CreateThreadAndRunStreaming(Assistant assistant, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null); - public virtual ResultCollection CreateThreadAndRunStreaming(string assistantId, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null, CancellationToken cancellationToken = default); - public virtual AsyncResultCollection CreateThreadAndRunStreamingAsync(Assistant assistant, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null); - public virtual AsyncResultCollection CreateThreadAndRunStreamingAsync(string assistantId, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null, CancellationToken cancellationToken = default); + public virtual CollectionResult CreateThreadAndRunStreaming(Assistant assistant, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null); + public virtual CollectionResult CreateThreadAndRunStreaming(string assistantId, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null, CancellationToken cancellationToken = default); + public virtual AsyncCollectionResult CreateThreadAndRunStreamingAsync(Assistant assistant, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null); + public virtual AsyncCollectionResult CreateThreadAndRunStreamingAsync(string assistantId, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null, CancellationToken cancellationToken = default); public virtual Task> CreateThreadAsync(ThreadCreationOptions options = null, CancellationToken cancellationToken = default); [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task CreateThreadAsync(BinaryContent content, RequestOptions options = null); @@ -149,12 +149,14 @@ public class AssistantClient { [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task GetAssistantAsync(string assistantId, RequestOptions options); public virtual Task> GetAssistantAsync(string assistantId, CancellationToken cancellationToken = default); - public virtual PageableCollection GetAssistants(ListOrder? resultOrder = null, CancellationToken cancellationToken = default); + public virtual PageCollection GetAssistants(AssistantCollectionOptions options = null, CancellationToken cancellationToken = default); + public virtual PageCollection GetAssistants(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); [EditorBrowsable(EditorBrowsableState.Never)] - public virtual ClientResult GetAssistants(int? limit, string order, string after, string before, RequestOptions options); - public virtual AsyncPageableCollection GetAssistantsAsync(ListOrder? resultOrder = null, CancellationToken cancellationToken = default); + public virtual IEnumerable GetAssistants(int? limit, string order, string after, string before, RequestOptions options); + public virtual AsyncPageCollection GetAssistantsAsync(AssistantCollectionOptions options = null, CancellationToken cancellationToken = default); + public virtual AsyncPageCollection GetAssistantsAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); [EditorBrowsable(EditorBrowsableState.Never)] - public virtual Task GetAssistantsAsync(int? limit, string order, string after, string before, RequestOptions options); + public virtual IAsyncEnumerable GetAssistantsAsync(int? limit, string order, string after, string before, RequestOptions options); public virtual ClientResult GetMessage(ThreadMessage message); [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult GetMessage(string threadId, string messageId, RequestOptions options); @@ -163,14 +165,16 @@ public class AssistantClient { [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task GetMessageAsync(string threadId, string messageId, RequestOptions options); public virtual Task> GetMessageAsync(string threadId, string messageId, CancellationToken cancellationToken = default); - public virtual PageableCollection GetMessages(AssistantThread thread, ListOrder? resultOrder = null); - public virtual PageableCollection GetMessages(string threadId, ListOrder? resultOrder = null, CancellationToken cancellationToken = default); + public virtual PageCollection GetMessages(AssistantThread thread, MessageCollectionOptions options = null); + public virtual PageCollection GetMessages(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); + public virtual PageCollection GetMessages(string threadId, MessageCollectionOptions options = null, CancellationToken cancellationToken = default); [EditorBrowsable(EditorBrowsableState.Never)] - public virtual ClientResult GetMessages(string threadId, int? limit, string order, string after, string before, RequestOptions options); - public virtual AsyncPageableCollection GetMessagesAsync(AssistantThread thread, ListOrder? resultOrder = null); - public virtual AsyncPageableCollection GetMessagesAsync(string threadId, ListOrder? resultOrder = null, CancellationToken cancellationToken = default); + public virtual IEnumerable GetMessages(string threadId, int? limit, string order, string after, string before, RequestOptions options); + public virtual AsyncPageCollection GetMessagesAsync(AssistantThread thread, MessageCollectionOptions options = null); + public virtual AsyncPageCollection GetMessagesAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); + public virtual AsyncPageCollection GetMessagesAsync(string threadId, MessageCollectionOptions options = null, CancellationToken cancellationToken = default); [EditorBrowsable(EditorBrowsableState.Never)] - public virtual Task GetMessagesAsync(string threadId, int? limit, string order, string after, string before, RequestOptions options); + public virtual IAsyncEnumerable GetMessagesAsync(string threadId, int? limit, string order, string after, string before, RequestOptions options); public virtual ClientResult GetRun(ThreadRun run); [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult GetRun(string threadId, string runId, RequestOptions options); @@ -179,28 +183,32 @@ public class AssistantClient { [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task GetRunAsync(string threadId, string runId, RequestOptions options); public virtual Task> GetRunAsync(string threadId, string runId, CancellationToken cancellationToken = default); - public virtual PageableCollection GetRuns(AssistantThread thread, ListOrder? resultOrder = null); - public virtual PageableCollection GetRuns(string threadId, ListOrder? resultOrder = null, CancellationToken cancellationToken = default); + public virtual PageCollection GetRuns(AssistantThread thread, RunCollectionOptions options = null); + public virtual PageCollection GetRuns(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); + public virtual PageCollection GetRuns(string threadId, RunCollectionOptions options = null, CancellationToken cancellationToken = default); [EditorBrowsable(EditorBrowsableState.Never)] - public virtual ClientResult GetRuns(string threadId, int? limit, string order, string after, string before, RequestOptions options); - public virtual AsyncPageableCollection GetRunsAsync(AssistantThread thread, ListOrder? resultOrder = null); - public virtual AsyncPageableCollection GetRunsAsync(string threadId, ListOrder? resultOrder = null, CancellationToken cancellationToken = default); + public virtual IEnumerable GetRuns(string threadId, int? limit, string order, string after, string before, RequestOptions options); + public virtual AsyncPageCollection GetRunsAsync(AssistantThread thread, RunCollectionOptions options = null); + public virtual AsyncPageCollection GetRunsAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); + public virtual AsyncPageCollection GetRunsAsync(string threadId, RunCollectionOptions options = null, CancellationToken cancellationToken = default); [EditorBrowsable(EditorBrowsableState.Never)] - public virtual Task GetRunsAsync(string threadId, int? limit, string order, string after, string before, RequestOptions options); + public virtual IAsyncEnumerable GetRunsAsync(string threadId, int? limit, string order, string after, string before, RequestOptions options); [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult GetRunStep(string threadId, string runId, string stepId, RequestOptions options); public virtual ClientResult GetRunStep(string threadId, string runId, string stepId, CancellationToken cancellationToken = default); [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task GetRunStepAsync(string threadId, string runId, string stepId, RequestOptions options); public virtual Task> GetRunStepAsync(string threadId, string runId, string stepId, CancellationToken cancellationToken = default); - public virtual PageableCollection GetRunSteps(ThreadRun run, ListOrder? resultOrder = null); - public virtual PageableCollection GetRunSteps(string threadId, string runId, ListOrder? resultOrder = null, CancellationToken cancellationToken = default); + public virtual PageCollection GetRunSteps(ThreadRun run, RunStepCollectionOptions options = null); + public virtual PageCollection GetRunSteps(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); + public virtual PageCollection GetRunSteps(string threadId, string runId, RunStepCollectionOptions options = null, CancellationToken cancellationToken = default); [EditorBrowsable(EditorBrowsableState.Never)] - public virtual ClientResult GetRunSteps(string threadId, string runId, int? limit, string order, string after, string before, RequestOptions options); - public virtual AsyncPageableCollection GetRunStepsAsync(ThreadRun run, ListOrder? resultOrder = null); - public virtual AsyncPageableCollection GetRunStepsAsync(string threadId, string runId, ListOrder? resultOrder = null, CancellationToken cancellationToken = default); + public virtual IEnumerable GetRunSteps(string threadId, string runId, int? limit, string order, string after, string before, RequestOptions options); + public virtual AsyncPageCollection GetRunStepsAsync(ThreadRun run, RunStepCollectionOptions options = null); + public virtual AsyncPageCollection GetRunStepsAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); + public virtual AsyncPageCollection GetRunStepsAsync(string threadId, string runId, RunStepCollectionOptions options = null, CancellationToken cancellationToken = default); [EditorBrowsable(EditorBrowsableState.Never)] - public virtual Task GetRunStepsAsync(string threadId, string runId, int? limit, string order, string after, string before, RequestOptions options); + public virtual IAsyncEnumerable GetRunStepsAsync(string threadId, string runId, int? limit, string order, string after, string before, RequestOptions options); public virtual ClientResult GetThread(AssistantThread thread); [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult GetThread(string threadId, RequestOptions options); @@ -245,20 +253,26 @@ public class AssistantClient { [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task SubmitToolOutputsToRunAsync(string threadId, string runId, BinaryContent content, RequestOptions options = null); public virtual Task> SubmitToolOutputsToRunAsync(string threadId, string runId, IEnumerable toolOutputs, CancellationToken cancellationToken = default); - public virtual ResultCollection SubmitToolOutputsToRunStreaming(ThreadRun run, IEnumerable toolOutputs); - public virtual ResultCollection SubmitToolOutputsToRunStreaming(string threadId, string runId, IEnumerable toolOutputs, CancellationToken cancellationToken = default); - public virtual AsyncResultCollection SubmitToolOutputsToRunStreamingAsync(ThreadRun run, IEnumerable toolOutputs); - public virtual AsyncResultCollection SubmitToolOutputsToRunStreamingAsync(string threadId, string runId, IEnumerable toolOutputs, CancellationToken cancellationToken = default); + public virtual CollectionResult SubmitToolOutputsToRunStreaming(ThreadRun run, IEnumerable toolOutputs); + public virtual CollectionResult SubmitToolOutputsToRunStreaming(string threadId, string runId, IEnumerable toolOutputs, CancellationToken cancellationToken = default); + public virtual AsyncCollectionResult SubmitToolOutputsToRunStreamingAsync(ThreadRun run, IEnumerable toolOutputs); + public virtual AsyncCollectionResult SubmitToolOutputsToRunStreamingAsync(string threadId, string runId, IEnumerable toolOutputs, CancellationToken cancellationToken = default); + } + public class AssistantCollectionOptions { + public string AfterId { get; set; } + public string BeforeId { get; set; } + public ListOrder? Order { get; set; } + public int? PageSize { get; set; } } public class AssistantCreationOptions : IJsonModel, IPersistableModel { - public string Description { get; init; } - public string Instructions { get; init; } - public IDictionary Metadata { get; } - public string Name { get; init; } - public float? NucleusSamplingFactor { get; init; } - public AssistantResponseFormat ResponseFormat { get; init; } - public float? Temperature { get; init; } - public ToolResources ToolResources { get; init; } + public string Description { get; set; } + public string Instructions { get; set; } + public IDictionary Metadata { get; set; } + public string Name { get; set; } + public float? NucleusSamplingFactor { get; set; } + public AssistantResponseFormat ResponseFormat { get; set; } + public float? Temperature { get; set; } + public ToolResources ToolResources { get; set; } public IList Tools { get; } AssistantCreationOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); @@ -267,16 +281,16 @@ public class AssistantCreationOptions : IJsonModel, IP BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } public class AssistantModificationOptions : IJsonModel, IPersistableModel { - public IList DefaultTools { get; init; } - public string Description { get; init; } - public string Instructions { get; init; } - public IDictionary Metadata { get; } - public string Model { get; init; } - public string Name { get; init; } - public float? NucleusSamplingFactor { get; init; } - public AssistantResponseFormat ResponseFormat { get; init; } - public float? Temperature { get; init; } - public ToolResources ToolResources { get; init; } + public IList DefaultTools { get; set; } + public string Description { get; set; } + public string Instructions { get; set; } + public IDictionary Metadata { get; set; } + public string Model { get; set; } + public string Name { get; set; } + public float? NucleusSamplingFactor { get; set; } + public AssistantResponseFormat ResponseFormat { get; set; } + public float? Temperature { get; set; } + public ToolResources ToolResources { get; set; } AssistantModificationOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); AssistantModificationOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); @@ -323,7 +337,7 @@ public class CodeInterpreterToolDefinition : ToolDefinition, IJsonModel, IPersistableModel { - public IList FileIds { get; init; } + public IList FileIds { get; set; } CodeInterpreterToolResources IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); CodeInterpreterToolResources IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); @@ -331,7 +345,7 @@ public class CodeInterpreterToolResources : IJsonModel.Write(ModelReaderWriterOptions options); } public class FileSearchToolDefinition : ToolDefinition, IJsonModel, IPersistableModel { - public int? MaxResults { get; init; } + public int? MaxResults { get; set; } FileSearchToolDefinition IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); FileSearchToolDefinition IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); @@ -341,7 +355,7 @@ public class FileSearchToolDefinition : ToolDefinition, IJsonModel, IPersistableModel { public IList NewVectorStores { get; } - public IList VectorStoreIds { get; init; } + public IList VectorStoreIds { get; set; } FileSearchToolResources IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); FileSearchToolResources IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); @@ -351,9 +365,9 @@ public class FileSearchToolResources : IJsonModel, IPer public class FunctionToolDefinition : ToolDefinition, IJsonModel, IPersistableModel { public FunctionToolDefinition(); public FunctionToolDefinition(string name, string description = null, BinaryData parameters = null); - public string Description { get; init; } - public required string FunctionName { get; init; } - public BinaryData Parameters { get; init; } + public string Description { get; set; } + public required string FunctionName { get; set; } + public BinaryData Parameters { get; set; } FunctionToolDefinition IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); FunctionToolDefinition IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); @@ -361,6 +375,12 @@ public class FunctionToolDefinition : ToolDefinition, IJsonModel.Write(ModelReaderWriterOptions options); protected override void WriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options); } + public class MessageCollectionOptions { + public string AfterId { get; set; } + public string BeforeId { get; set; } + public ListOrder? Order { get; set; } + public int? PageSize { get; set; } + } public abstract class MessageContent : IJsonModel, IPersistableModel { public MessageImageDetail? ImageDetail { get; } public string ImageFileId { get; } @@ -398,8 +418,8 @@ public class MessageCreationAttachment : IJsonModel, BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } public class MessageCreationOptions : IJsonModel, IPersistableModel { - public IList Attachments { get; } - public IDictionary Metadata { get; } + public IList Attachments { get; set; } + public IDictionary Metadata { get; set; } MessageCreationOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); MessageCreationOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); @@ -439,7 +459,7 @@ public enum MessageImageDetail { High = 2 } public class MessageModificationOptions : IJsonModel, IPersistableModel { - public IDictionary Metadata { get; } + public IDictionary Metadata { get; set; } MessageModificationOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); MessageModificationOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); @@ -474,27 +494,33 @@ public abstract class RequiredAction { public string FunctionName { get; } public string ToolCallId { get; } } - public class RequiredActionUpdate : StreamingUpdate { + public class RequiredActionUpdate : RunUpdate { public string FunctionArguments { get; } public string FunctionName { get; } public string ToolCallId { get; } public ThreadRun GetThreadRun(); } + public class RunCollectionOptions { + public string AfterId { get; set; } + public string BeforeId { get; set; } + public ListOrder? Order { get; set; } + public int? PageSize { get; set; } + } public class RunCreationOptions : IJsonModel, IPersistableModel { - public string AdditionalInstructions { get; init; } + public string AdditionalInstructions { get; set; } public IList AdditionalMessages { get; } - public string InstructionsOverride { get; init; } - public int? MaxCompletionTokens { get; init; } - public int? MaxPromptTokens { get; init; } + public string InstructionsOverride { get; set; } + public int? MaxCompletionTokens { get; set; } + public int? MaxPromptTokens { get; set; } public IDictionary Metadata { get; } - public string ModelOverride { get; init; } - public float? NucleusSamplingFactor { get; init; } - public bool? ParallelToolCallsEnabled { get; init; } - public AssistantResponseFormat ResponseFormat { get; init; } - public float? Temperature { get; init; } - public ToolConstraint ToolConstraint { get; init; } + public string ModelOverride { get; set; } + public float? NucleusSamplingFactor { get; set; } + public bool? ParallelToolCallsEnabled { get; set; } + public AssistantResponseFormat ResponseFormat { get; set; } + public float? Temperature { get; set; } + public ToolConstraint ToolConstraint { get; set; } public IList ToolsOverride { get; } - public RunTruncationStrategy TruncationStrategy { get; init; } + public RunTruncationStrategy TruncationStrategy { get; set; } RunCreationOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); RunCreationOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); @@ -552,7 +578,7 @@ public class RunIncompleteDetails : IJsonModel, IPersistab public override readonly string ToString(); } public class RunModificationOptions : IJsonModel, IPersistableModel { - public IDictionary Metadata { get; } + public IDictionary Metadata { get; set; } RunModificationOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); RunModificationOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); @@ -614,6 +640,12 @@ public abstract class RunStepCodeInterpreterOutput : IJsonModel.GetFormatFromOptions(ModelReaderWriterOptions options); BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } + public class RunStepCollectionOptions { + public string AfterId { get; set; } + public string BeforeId { get; set; } + public ListOrder? Order { get; set; } + public int? PageSize { get; set; } + } public abstract class RunStepDetails : IJsonModel, IPersistableModel { public string CreatedMessageId { get; } public IReadOnlyList ToolCalls { get; } @@ -810,8 +842,8 @@ public class TextAnnotationUpdate { } public class ThreadCreationOptions : IJsonModel, IPersistableModel { public IList InitialMessages { get; } - public IDictionary Metadata { get; } - public ToolResources ToolResources { get; init; } + public IDictionary Metadata { get; set; } + public ToolResources ToolResources { get; set; } ThreadCreationOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); ThreadCreationOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); @@ -843,8 +875,8 @@ public class ThreadMessage : IJsonModel, IPersistableModel.Write(ModelReaderWriterOptions options); } public class ThreadModificationOptions : IJsonModel, IPersistableModel { - public IDictionary Metadata { get; } - public ToolResources ToolResources { get; init; } + public IDictionary Metadata { get; set; } + public ToolResources ToolResources { get; set; } ThreadModificationOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); ThreadModificationOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); @@ -867,7 +899,7 @@ public class ThreadRun : IJsonModel, IPersistableModel { public IReadOnlyDictionary Metadata { get; } public string Model { get; } public float? NucleusSamplingFactor { get; } - public bool? ParallelToolCallsEnabled { get; init; } + public bool? ParallelToolCallsEnabled { get; } public IReadOnlyList RequiredActions { get; } public AssistantResponseFormat ResponseFormat { get; } public DateTimeOffset? StartedAt { get; } @@ -917,8 +949,8 @@ public abstract class ToolDefinition : IJsonModel, IPersistableM public class ToolOutput : IJsonModel, IPersistableModel { public ToolOutput(); public ToolOutput(string toolCallId, string output); - public string Output { get; init; } - public string ToolCallId { get; init; } + public string Output { get; set; } + public string ToolCallId { get; set; } ToolOutput IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); ToolOutput IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); @@ -926,8 +958,8 @@ public class ToolOutput : IJsonModel, IPersistableModel BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } public class ToolResources : IJsonModel, IPersistableModel { - public CodeInterpreterToolResources CodeInterpreter { get; init; } - public FileSearchToolResources FileSearch { get; init; } + public CodeInterpreterToolResources CodeInterpreter { get; set; } + public FileSearchToolResources FileSearch { get; set; } ToolResources IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); ToolResources IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); @@ -936,7 +968,7 @@ public class ToolResources : IJsonModel, IPersistableModel, IPersistableModel { public VectorStoreCreationHelper(); - public VectorStoreCreationHelper(IEnumerable files, IDictionary metadata = null); + public VectorStoreCreationHelper(IEnumerable files, IDictionary metadata = null); public VectorStoreCreationHelper(IEnumerable fileIds, IDictionary metadata = null); public IList FileIds { get; } public IDictionary Metadata { get; } @@ -1001,11 +1033,11 @@ public enum AudioTranscriptionFormat { Vtt = 4 } public class AudioTranscriptionOptions : IJsonModel, IPersistableModel { - public AudioTimestampGranularities Granularities { get; init; } - public string Language { get; init; } - public string Prompt { get; init; } - public AudioTranscriptionFormat? ResponseFormat { get; init; } - public float? Temperature { get; init; } + public AudioTimestampGranularities Granularities { get; set; } + public string Language { get; set; } + public string Prompt { get; set; } + public AudioTranscriptionFormat? ResponseFormat { get; set; } + public float? Temperature { get; set; } AudioTranscriptionOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); AudioTranscriptionOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); @@ -1031,9 +1063,9 @@ public enum AudioTranslationFormat { Vtt = 4 } public class AudioTranslationOptions : IJsonModel, IPersistableModel { - public string Prompt { get; init; } - public AudioTranslationFormat? ResponseFormat { get; init; } - public float? Temperature { get; init; } + public string Prompt { get; set; } + public AudioTranslationFormat? ResponseFormat { get; set; } + public float? Temperature { get; set; } AudioTranslationOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); AudioTranslationOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); @@ -1057,8 +1089,8 @@ public enum GeneratedSpeechVoice { Shimmer = 5 } public class SpeechGenerationOptions : IJsonModel, IPersistableModel { - public GeneratedSpeechFormat? ResponseFormat { get; init; } - public float? Speed { get; init; } + public GeneratedSpeechFormat? ResponseFormat { get; set; } + public float? Speed { get; set; } SpeechGenerationOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); SpeechGenerationOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); @@ -1130,8 +1162,8 @@ public class AssistantChatMessage : ChatMessage, IJsonModel toolCalls, string content = null); public AssistantChatMessage(string content); - public ChatFunctionCall FunctionCall { get; init; } - public string ParticipantName { get; init; } + public ChatFunctionCall FunctionCall { get; set; } + public string ParticipantName { get; set; } public IList ToolCalls { get; } AssistantChatMessage IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); @@ -1154,10 +1186,10 @@ public class ChatClient { [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task CompleteChatAsync(BinaryContent content, RequestOptions options = null); public virtual Task> CompleteChatAsync(IEnumerable messages, ChatCompletionOptions options = null, CancellationToken cancellationToken = default); - public virtual ResultCollection CompleteChatStreaming(params ChatMessage[] messages); - public virtual ResultCollection CompleteChatStreaming(IEnumerable messages, ChatCompletionOptions options = null, CancellationToken cancellationToken = default); - public virtual AsyncResultCollection CompleteChatStreamingAsync(params ChatMessage[] messages); - public virtual AsyncResultCollection CompleteChatStreamingAsync(IEnumerable messages, ChatCompletionOptions options = null, CancellationToken cancellationToken = default); + public virtual CollectionResult CompleteChatStreaming(params ChatMessage[] messages); + public virtual CollectionResult CompleteChatStreaming(IEnumerable messages, ChatCompletionOptions options = null, CancellationToken cancellationToken = default); + public virtual AsyncCollectionResult CompleteChatStreamingAsync(params ChatMessage[] messages); + public virtual AsyncCollectionResult CompleteChatStreamingAsync(IEnumerable messages, ChatCompletionOptions options = null, CancellationToken cancellationToken = default); } public class ChatCompletion : IJsonModel, IPersistableModel { public IReadOnlyList Content { get; } @@ -1179,23 +1211,23 @@ public class ChatCompletion : IJsonModel, IPersistableModel, IPersistableModel { - public float? FrequencyPenalty { get; init; } - public ChatFunctionChoice FunctionChoice { get; init; } + public float? FrequencyPenalty { get; set; } + public ChatFunctionChoice FunctionChoice { get; set; } public IList Functions { get; } - public bool? IncludeLogProbabilities { get; init; } + public bool? IncludeLogProbabilities { get; set; } public IDictionary LogitBiases { get; } - public int? MaxTokens { get; init; } - public bool? ParallelToolCallsEnabled { get; init; } - public float? PresencePenalty { get; init; } - public ChatResponseFormat ResponseFormat { get; init; } - public long? Seed { get; init; } + public int? MaxTokens { get; set; } + public bool? ParallelToolCallsEnabled { get; set; } + public float? PresencePenalty { get; set; } + public ChatResponseFormat ResponseFormat { get; set; } + public long? Seed { get; set; } public IList StopSequences { get; } - public float? Temperature { get; init; } - public ChatToolChoice ToolChoice { get; init; } + public float? Temperature { get; set; } + public ChatToolChoice ToolChoice { get; set; } public IList Tools { get; } - public int? TopLogProbabilityCount { get; init; } - public float? TopP { get; init; } - public string User { get; init; } + public int? TopLogProbabilityCount { get; set; } + public float? TopP { get; set; } + public string User { get; set; } ChatCompletionOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); ChatCompletionOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); @@ -1212,9 +1244,9 @@ public enum ChatFinishReason { [Obsolete("This field is marked as deprecated.")] public class ChatFunction : IJsonModel, IPersistableModel { public ChatFunction(string functionName, string functionDescription = null, BinaryData functionParameters = null); - public string FunctionDescription { get; init; } + public string FunctionDescription { get; set; } public string FunctionName { get; } - public BinaryData FunctionParameters { get; init; } + public BinaryData FunctionParameters { get; set; } ChatFunction IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); ChatFunction IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); @@ -1242,7 +1274,7 @@ public class ChatFunctionChoice : IJsonModel, IPersistableMo BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } public abstract class ChatMessage : IJsonModel, IPersistableModel { - public IList Content { get; protected init; } + public IList Content { get; protected set; } public static AssistantChatMessage CreateAssistantMessage(ChatCompletion chatCompletion); public static AssistantChatMessage CreateAssistantMessage(ChatFunctionCall functionCall, string content = null); public static AssistantChatMessage CreateAssistantMessage(IEnumerable toolCalls, string content = null); @@ -1357,7 +1389,7 @@ public class ChatTool : IJsonModel, IPersistableModel { public class ChatToolCall : IJsonModel, IPersistableModel { public string FunctionArguments { get; } public string FunctionName { get; } - public string Id { get; init; } + public string Id { get; set; } public ChatToolCallKind Kind { get; } public static ChatToolCall CreateFunctionToolCall(string toolCallId, string functionName, string functionArguments); ChatToolCall IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); @@ -1476,7 +1508,7 @@ public class StreamingChatToolCallUpdate : IJsonModel, IPersistableModel { public SystemChatMessage(string content); - public string ParticipantName { get; init; } + public string ParticipantName { get; set; } SystemChatMessage IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); SystemChatMessage IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); @@ -1498,7 +1530,7 @@ public class UserChatMessage : ChatMessage, IJsonModel, IPersis public UserChatMessage(params ChatMessageContentPart[] content); public UserChatMessage(IEnumerable content); public UserChatMessage(string content); - public string ParticipantName { get; init; } + public string ParticipantName { get; set; } UserChatMessage IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); UserChatMessage IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); @@ -1544,8 +1576,8 @@ public class EmbeddingCollection : ObjectModel.ReadOnlyCollection, IJ BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } public class EmbeddingGenerationOptions : IJsonModel, IPersistableModel { - public int? Dimensions { get; init; } - public string User { get; init; } + public int? Dimensions { get; set; } + public string User { get; set; } EmbeddingGenerationOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); EmbeddingGenerationOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); @@ -1805,9 +1837,9 @@ public class ImageClient { public virtual Task> GenerateImageVariationsAsync(string imageFilePath, int imageCount, ImageVariationOptions options = null); } public class ImageEditOptions : IJsonModel, IPersistableModel { - public GeneratedImageFormat? ResponseFormat { get; init; } - public GeneratedImageSize? Size { get; init; } - public string User { get; init; } + public GeneratedImageFormat? ResponseFormat { get; set; } + public GeneratedImageSize? Size { get; set; } + public string User { get; set; } ImageEditOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); ImageEditOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); @@ -1815,11 +1847,11 @@ public class ImageEditOptions : IJsonModel, IPersistableModel< BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } public class ImageGenerationOptions : IJsonModel, IPersistableModel { - public GeneratedImageQuality? Quality { get; init; } - public GeneratedImageFormat? ResponseFormat { get; init; } - public GeneratedImageSize? Size { get; init; } - public GeneratedImageStyle? Style { get; init; } - public string User { get; init; } + public GeneratedImageQuality? Quality { get; set; } + public GeneratedImageFormat? ResponseFormat { get; set; } + public GeneratedImageSize? Size { get; set; } + public GeneratedImageStyle? Style { get; set; } + public string User { get; set; } ImageGenerationOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); ImageGenerationOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); @@ -1827,9 +1859,9 @@ public class ImageGenerationOptions : IJsonModel, IPersi BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } public class ImageVariationOptions : IJsonModel, IPersistableModel { - public GeneratedImageFormat? ResponseFormat { get; init; } - public GeneratedImageSize? Size { get; init; } - public string User { get; init; } + public GeneratedImageFormat? ResponseFormat { get; set; } + public GeneratedImageSize? Size { get; set; } + public string User { get; set; } ImageVariationOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); ImageVariationOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); @@ -2027,11 +2059,11 @@ public class VectorStoreClient { public VectorStoreClient(ApiKeyCredential credential, OpenAIClientOptions options = null); protected internal VectorStoreClient(ClientPipeline pipeline, Uri endpoint, OpenAIClientOptions options); public virtual ClientPipeline Pipeline { get; } - public virtual ClientResult AddFileToVectorStore(VectorStore vectorStore, Files.OpenAIFileInfo file); + public virtual ClientResult AddFileToVectorStore(VectorStore vectorStore, OpenAIFileInfo file); [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult AddFileToVectorStore(string vectorStoreId, BinaryContent content, RequestOptions options = null); public virtual ClientResult AddFileToVectorStore(string vectorStoreId, string fileId, CancellationToken cancellationToken = default); - public virtual Task> AddFileToVectorStoreAsync(VectorStore vectorStore, Files.OpenAIFileInfo file); + public virtual Task> AddFileToVectorStoreAsync(VectorStore vectorStore, OpenAIFileInfo file); [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task AddFileToVectorStoreAsync(string vectorStoreId, BinaryContent content, RequestOptions options = null); public virtual Task> AddFileToVectorStoreAsync(string vectorStoreId, string fileId, CancellationToken cancellationToken = default); @@ -2043,11 +2075,11 @@ public class VectorStoreClient { [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task CancelBatchFileJobAsync(string vectorStoreId, string batchId, RequestOptions options); public virtual Task> CancelBatchFileJobAsync(string vectorStoreId, string batchJobId, CancellationToken cancellationToken = default); - public virtual ClientResult CreateBatchFileJob(VectorStore vectorStore, IEnumerable files); + public virtual ClientResult CreateBatchFileJob(VectorStore vectorStore, IEnumerable files); [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult CreateBatchFileJob(string vectorStoreId, BinaryContent content, RequestOptions options = null); public virtual ClientResult CreateBatchFileJob(string vectorStoreId, IEnumerable fileIds, CancellationToken cancellationToken = default); - public virtual Task> CreateBatchFileJobAsync(VectorStore vectorStore, IEnumerable files); + public virtual Task> CreateBatchFileJobAsync(VectorStore vectorStore, IEnumerable files); [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task CreateBatchFileJobAsync(string vectorStoreId, BinaryContent content, RequestOptions options = null); public virtual Task> CreateBatchFileJobAsync(string vectorStoreId, IEnumerable fileIds, CancellationToken cancellationToken = default); @@ -2072,30 +2104,34 @@ public class VectorStoreClient { [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task GetBatchFileJobAsync(string vectorStoreId, string batchId, RequestOptions options); public virtual Task> GetBatchFileJobAsync(string vectorStoreId, string batchJobId, CancellationToken cancellationToken = default); - public virtual ClientResult GetFileAssociation(VectorStore vectorStore, Files.OpenAIFileInfo file); + public virtual ClientResult GetFileAssociation(VectorStore vectorStore, OpenAIFileInfo file); [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult GetFileAssociation(string vectorStoreId, string fileId, RequestOptions options); public virtual ClientResult GetFileAssociation(string vectorStoreId, string fileId, CancellationToken cancellationToken = default); - public virtual Task> GetFileAssociationAsync(VectorStore vectorStore, Files.OpenAIFileInfo file); + public virtual Task> GetFileAssociationAsync(VectorStore vectorStore, OpenAIFileInfo file); [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task GetFileAssociationAsync(string vectorStoreId, string fileId, RequestOptions options); public virtual Task> GetFileAssociationAsync(string vectorStoreId, string fileId, CancellationToken cancellationToken = default); - public virtual PageableCollection GetFileAssociations(VectorStore vectorStore, ListOrder? resultOrder = null, VectorStoreFileStatusFilter? filter = null); - public virtual PageableCollection GetFileAssociations(VectorStoreBatchFileJob batchJob, ListOrder? resultOrder = null, VectorStoreFileStatusFilter? filter = null); - public virtual PageableCollection GetFileAssociations(string vectorStoreId, ListOrder? resultOrder = null, VectorStoreFileStatusFilter? filter = null, CancellationToken cancellationToken = default); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual ClientResult GetFileAssociations(string vectorStoreId, int? limit, string order, string after, string before, string filter, RequestOptions options); - public virtual PageableCollection GetFileAssociations(string vectorStoreId, string batchJobId, ListOrder? resultOrder = null, VectorStoreFileStatusFilter? filter = null, CancellationToken cancellationToken = default); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual ClientResult GetFileAssociations(string vectorStoreId, string batchId, int? limit, string order, string after, string before, string filter, RequestOptions options); - public virtual AsyncPageableCollection GetFileAssociationsAsync(VectorStore vectorStore, ListOrder? resultOrder = null, VectorStoreFileStatusFilter? filter = null); - public virtual AsyncPageableCollection GetFileAssociationsAsync(VectorStoreBatchFileJob batchJob, ListOrder? resultOrder = null, VectorStoreFileStatusFilter? filter = null); - public virtual AsyncPageableCollection GetFileAssociationsAsync(string vectorStoreId, ListOrder? resultOrder = null, VectorStoreFileStatusFilter? filter = null, CancellationToken cancellationToken = default); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual Task GetFileAssociationsAsync(string vectorStoreId, int? limit, string order, string after, string before, string filter, RequestOptions options); - public virtual AsyncPageableCollection GetFileAssociationsAsync(string vectorStoreId, string batchJobId, ListOrder? resultOrder = null, VectorStoreFileStatusFilter? filter = null, CancellationToken cancellationToken = default); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual Task GetFileAssociationsAsync(string vectorStoreId, string batchId, int? limit, string order, string after, string before, string filter, RequestOptions options); + public virtual PageCollection GetFileAssociations(VectorStore vectorStore, VectorStoreFileAssociationCollectionOptions options = null); + public virtual PageCollection GetFileAssociations(VectorStoreBatchFileJob batchJob, VectorStoreFileAssociationCollectionOptions options = null); + public virtual PageCollection GetFileAssociations(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); + public virtual PageCollection GetFileAssociations(string vectorStoreId, VectorStoreFileAssociationCollectionOptions options = null, CancellationToken cancellationToken = default); + [EditorBrowsable(EditorBrowsableState.Never)] + public virtual IEnumerable GetFileAssociations(string vectorStoreId, int? limit, string order, string after, string before, string filter, RequestOptions options); + public virtual PageCollection GetFileAssociations(string vectorStoreId, string batchJobId, VectorStoreFileAssociationCollectionOptions options = null, CancellationToken cancellationToken = default); + public virtual PageCollection GetFileAssociations(string vectorStoreId, string batchJobId, ContinuationToken firstPageToken, CancellationToken cancellationToken = default); + [EditorBrowsable(EditorBrowsableState.Never)] + public virtual IEnumerable GetFileAssociations(string vectorStoreId, string batchId, int? limit, string order, string after, string before, string filter, RequestOptions options); + public virtual AsyncPageCollection GetFileAssociationsAsync(VectorStore vectorStore, VectorStoreFileAssociationCollectionOptions options = null); + public virtual AsyncPageCollection GetFileAssociationsAsync(VectorStoreBatchFileJob batchJob, VectorStoreFileAssociationCollectionOptions options = null); + public virtual AsyncPageCollection GetFileAssociationsAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); + public virtual AsyncPageCollection GetFileAssociationsAsync(string vectorStoreId, VectorStoreFileAssociationCollectionOptions options = null, CancellationToken cancellationToken = default); + [EditorBrowsable(EditorBrowsableState.Never)] + public virtual IAsyncEnumerable GetFileAssociationsAsync(string vectorStoreId, int? limit, string order, string after, string before, string filter, RequestOptions options); + public virtual AsyncPageCollection GetFileAssociationsAsync(string vectorStoreId, string batchJobId, VectorStoreFileAssociationCollectionOptions options = null, CancellationToken cancellationToken = default); + public virtual AsyncPageCollection GetFileAssociationsAsync(string vectorStoreId, string batchJobId, ContinuationToken firstPageToken, CancellationToken cancellationToken = default); + [EditorBrowsable(EditorBrowsableState.Never)] + public virtual IAsyncEnumerable GetFileAssociationsAsync(string vectorStoreId, string batchId, int? limit, string order, string after, string before, string filter, RequestOptions options); public virtual ClientResult GetVectorStore(VectorStore vectorStore); [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult GetVectorStore(string vectorStoreId, RequestOptions options); @@ -2104,12 +2140,14 @@ public class VectorStoreClient { [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task GetVectorStoreAsync(string vectorStoreId, RequestOptions options); public virtual Task> GetVectorStoreAsync(string vectorStoreId, CancellationToken cancellationToken = default); - public virtual PageableCollection GetVectorStores(ListOrder? resultOrder = null, CancellationToken cancellationToken = default); + public virtual PageCollection GetVectorStores(VectorStoreCollectionOptions options = null, CancellationToken cancellationToken = default); + public virtual PageCollection GetVectorStores(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); [EditorBrowsable(EditorBrowsableState.Never)] - public virtual ClientResult GetVectorStores(int? limit, string order, string after, string before, RequestOptions options); - public virtual AsyncPageableCollection GetVectorStoresAsync(ListOrder? resultOrder = null, CancellationToken cancellationToken = default); + public virtual IEnumerable GetVectorStores(int? limit, string order, string after, string before, RequestOptions options); + public virtual AsyncPageCollection GetVectorStoresAsync(VectorStoreCollectionOptions options = null, CancellationToken cancellationToken = default); + public virtual AsyncPageCollection GetVectorStoresAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); [EditorBrowsable(EditorBrowsableState.Never)] - public virtual Task GetVectorStoresAsync(int? limit, string order, string after, string before, RequestOptions options); + public virtual IAsyncEnumerable GetVectorStoresAsync(int? limit, string order, string after, string before, RequestOptions options); public virtual ClientResult ModifyVectorStore(VectorStore vectorStore, VectorStoreModificationOptions options); public virtual ClientResult ModifyVectorStore(string vectorStoreId, VectorStoreModificationOptions vectorStore, CancellationToken cancellationToken = default); [EditorBrowsable(EditorBrowsableState.Never)] @@ -2118,21 +2156,27 @@ public class VectorStoreClient { public virtual Task> ModifyVectorStoreAsync(string vectorStoreId, VectorStoreModificationOptions vectorStore, CancellationToken cancellationToken = default); [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task ModifyVectorStoreAsync(string vectorStoreId, BinaryContent content, RequestOptions options = null); - public virtual ClientResult RemoveFileFromStore(VectorStore vectorStore, Files.OpenAIFileInfo file); + public virtual ClientResult RemoveFileFromStore(VectorStore vectorStore, OpenAIFileInfo file); [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult RemoveFileFromStore(string vectorStoreId, string fileId, RequestOptions options); public virtual ClientResult RemoveFileFromStore(string vectorStoreId, string fileId, CancellationToken cancellationToken = default); - public virtual Task> RemoveFileFromStoreAsync(VectorStore vectorStore, Files.OpenAIFileInfo file); + public virtual Task> RemoveFileFromStoreAsync(VectorStore vectorStore, OpenAIFileInfo file); [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task RemoveFileFromStoreAsync(string vectorStoreId, string fileId, RequestOptions options); public virtual Task> RemoveFileFromStoreAsync(string vectorStoreId, string fileId, CancellationToken cancellationToken = default); } + public class VectorStoreCollectionOptions { + public string AfterId { get; set; } + public string BeforeId { get; set; } + public ListOrder? Order { get; set; } + public int? PageSize { get; set; } + } public class VectorStoreCreationOptions : IJsonModel, IPersistableModel { - public FileChunkingStrategy ChunkingStrategy { get; init; } - public VectorStoreExpirationPolicy ExpirationPolicy { get; init; } - public IList FileIds { get; init; } - public IDictionary Metadata { get; } - public string Name { get; init; } + public FileChunkingStrategy ChunkingStrategy { get; set; } + public VectorStoreExpirationPolicy ExpirationPolicy { get; set; } + public IList FileIds { get; set; } + public IDictionary Metadata { get; set; } + public string Name { get; set; } VectorStoreCreationOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); VectorStoreCreationOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); @@ -2146,8 +2190,8 @@ public enum VectorStoreExpirationAnchor { public class VectorStoreExpirationPolicy : IJsonModel, IPersistableModel { public VectorStoreExpirationPolicy(); public VectorStoreExpirationPolicy(VectorStoreExpirationAnchor anchor, int days); - public required VectorStoreExpirationAnchor Anchor { get; init; } - public required int Days { get; init; } + public required VectorStoreExpirationAnchor Anchor { get; set; } + public required int Days { get; set; } VectorStoreExpirationPolicy IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); VectorStoreExpirationPolicy IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); @@ -2158,7 +2202,7 @@ public class VectorStoreFileAssociation : IJsonModel public FileChunkingStrategy ChunkingStrategy { get; } public DateTimeOffset CreatedAt { get; } public string FileId { get; } - public VectorStoreFileAssociationError? LastError { get; } + public VectorStoreFileAssociationError LastError { get; } public int Size { get; } public VectorStoreFileAssociationStatus Status { get; } public string VectorStoreId { get; } @@ -2168,21 +2212,21 @@ public class VectorStoreFileAssociation : IJsonModel string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public readonly partial struct VectorStoreFileAssociationError : IJsonModel, IPersistableModel, IJsonModel, IPersistableModel { - private readonly object _dummy; - private readonly int _dummyPrimitive; + public class VectorStoreFileAssociationCollectionOptions { + public string AfterId { get; set; } + public string BeforeId { get; set; } + public VectorStoreFileStatusFilter? Filter { get; set; } + public ListOrder? Order { get; set; } + public int? PageSize { get; set; } + } + public class VectorStoreFileAssociationError : IJsonModel, IPersistableModel { public VectorStoreFileAssociationErrorCode Code { get; } public string Message { get; } - readonly VectorStoreFileAssociationError IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - readonly void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - readonly object IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - readonly void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - readonly VectorStoreFileAssociationError IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - readonly string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - readonly BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - readonly object IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - readonly string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - readonly BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); + VectorStoreFileAssociationError IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + VectorStoreFileAssociationError IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } public readonly partial struct VectorStoreFileAssociationErrorCode : IEquatable { private readonly object _dummy; @@ -2209,24 +2253,17 @@ public enum VectorStoreFileAssociationStatus { Cancelled = 3, Failed = 4 } - public readonly partial struct VectorStoreFileCounts : IJsonModel, IPersistableModel, IJsonModel, IPersistableModel { - private readonly object _dummy; - private readonly int _dummyPrimitive; + public class VectorStoreFileCounts : IJsonModel, IPersistableModel { public int Cancelled { get; } public int Completed { get; } public int Failed { get; } public int InProgress { get; } public int Total { get; } - readonly VectorStoreFileCounts IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - readonly void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - readonly object IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - readonly void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - readonly VectorStoreFileCounts IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - readonly string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - readonly BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - readonly object IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - readonly string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - readonly BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); + VectorStoreFileCounts IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + VectorStoreFileCounts IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } public readonly partial struct VectorStoreFileStatusFilter : IEquatable { private readonly object _dummy; @@ -2247,9 +2284,9 @@ public enum VectorStoreFileAssociationStatus { public override readonly string ToString(); } public class VectorStoreModificationOptions : IJsonModel, IPersistableModel { - public VectorStoreExpirationPolicy ExpirationPolicy { get; init; } - public IDictionary Metadata { get; } - public string Name { get; init; } + public VectorStoreExpirationPolicy ExpirationPolicy { get; set; } + public IDictionary Metadata { get; set; } + public string Name { get; set; } VectorStoreModificationOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); VectorStoreModificationOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); diff --git a/.dotnet/api/api.md b/.dotnet/api/api.md index 846baaeee..6b47f75f9 100644 --- a/.dotnet/api/api.md +++ b/.dotnet/api/api.md @@ -36,10 +36,10 @@ namespace OpenAI { public virtual VectorStoreClient GetVectorStoreClient(); } public class OpenAIClientOptions : ClientPipelineOptions { - public string ApplicationId { get; init; } - public Uri Endpoint { get; init; } - public string OrganizationId { get; init; } - public string ProjectId { get; init; } + public string ApplicationId { get; set; } + public Uri Endpoint { get; set; } + public string OrganizationId { get; set; } + public string ProjectId { get; set; } } } namespace OpenAI.Assistants { @@ -98,10 +98,10 @@ namespace OpenAI.Assistants { [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task CreateRunAsync(string threadId, BinaryContent content, RequestOptions options = null); public virtual Task> CreateRunAsync(string threadId, string assistantId, RunCreationOptions options = null, CancellationToken cancellationToken = default); - public virtual ResultCollection CreateRunStreaming(AssistantThread thread, Assistant assistant, RunCreationOptions options = null); - public virtual ResultCollection CreateRunStreaming(string threadId, string assistantId, RunCreationOptions options = null, CancellationToken cancellationToken = default); - public virtual AsyncResultCollection CreateRunStreamingAsync(AssistantThread thread, Assistant assistant, RunCreationOptions options = null); - public virtual AsyncResultCollection CreateRunStreamingAsync(string threadId, string assistantId, RunCreationOptions options = null, CancellationToken cancellationToken = default); + public virtual CollectionResult CreateRunStreaming(AssistantThread thread, Assistant assistant, RunCreationOptions options = null); + public virtual CollectionResult CreateRunStreaming(string threadId, string assistantId, RunCreationOptions options = null, CancellationToken cancellationToken = default); + public virtual AsyncCollectionResult CreateRunStreamingAsync(AssistantThread thread, Assistant assistant, RunCreationOptions options = null); + public virtual AsyncCollectionResult CreateRunStreamingAsync(string threadId, string assistantId, RunCreationOptions options = null, CancellationToken cancellationToken = default); public virtual ClientResult CreateThread(ThreadCreationOptions options = null, CancellationToken cancellationToken = default); [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult CreateThread(BinaryContent content, RequestOptions options = null); @@ -113,10 +113,10 @@ namespace OpenAI.Assistants { [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task CreateThreadAndRunAsync(BinaryContent content, RequestOptions options = null); public virtual Task> CreateThreadAndRunAsync(string assistantId, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null, CancellationToken cancellationToken = default); - public virtual ResultCollection CreateThreadAndRunStreaming(Assistant assistant, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null); - public virtual ResultCollection CreateThreadAndRunStreaming(string assistantId, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null, CancellationToken cancellationToken = default); - public virtual AsyncResultCollection CreateThreadAndRunStreamingAsync(Assistant assistant, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null); - public virtual AsyncResultCollection CreateThreadAndRunStreamingAsync(string assistantId, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null, CancellationToken cancellationToken = default); + public virtual CollectionResult CreateThreadAndRunStreaming(Assistant assistant, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null); + public virtual CollectionResult CreateThreadAndRunStreaming(string assistantId, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null, CancellationToken cancellationToken = default); + public virtual AsyncCollectionResult CreateThreadAndRunStreamingAsync(Assistant assistant, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null); + public virtual AsyncCollectionResult CreateThreadAndRunStreamingAsync(string assistantId, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null, CancellationToken cancellationToken = default); public virtual Task> CreateThreadAsync(ThreadCreationOptions options = null, CancellationToken cancellationToken = default); [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task CreateThreadAsync(BinaryContent content, RequestOptions options = null); @@ -150,12 +150,14 @@ namespace OpenAI.Assistants { [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task GetAssistantAsync(string assistantId, RequestOptions options); public virtual Task> GetAssistantAsync(string assistantId, CancellationToken cancellationToken = default); - public virtual PageableCollection GetAssistants(ListOrder? resultOrder = null, CancellationToken cancellationToken = default); + public virtual PageCollection GetAssistants(AssistantCollectionOptions options = null, CancellationToken cancellationToken = default); + public virtual PageCollection GetAssistants(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); [EditorBrowsable(EditorBrowsableState.Never)] - public virtual ClientResult GetAssistants(int? limit, string order, string after, string before, RequestOptions options); - public virtual AsyncPageableCollection GetAssistantsAsync(ListOrder? resultOrder = null, CancellationToken cancellationToken = default); + public virtual IEnumerable GetAssistants(int? limit, string order, string after, string before, RequestOptions options); + public virtual AsyncPageCollection GetAssistantsAsync(AssistantCollectionOptions options = null, CancellationToken cancellationToken = default); + public virtual AsyncPageCollection GetAssistantsAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); [EditorBrowsable(EditorBrowsableState.Never)] - public virtual Task GetAssistantsAsync(int? limit, string order, string after, string before, RequestOptions options); + public virtual IAsyncEnumerable GetAssistantsAsync(int? limit, string order, string after, string before, RequestOptions options); public virtual ClientResult GetMessage(ThreadMessage message); [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult GetMessage(string threadId, string messageId, RequestOptions options); @@ -164,14 +166,16 @@ namespace OpenAI.Assistants { [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task GetMessageAsync(string threadId, string messageId, RequestOptions options); public virtual Task> GetMessageAsync(string threadId, string messageId, CancellationToken cancellationToken = default); - public virtual PageableCollection GetMessages(AssistantThread thread, ListOrder? resultOrder = null); - public virtual PageableCollection GetMessages(string threadId, ListOrder? resultOrder = null, CancellationToken cancellationToken = default); + public virtual PageCollection GetMessages(AssistantThread thread, MessageCollectionOptions options = null); + public virtual PageCollection GetMessages(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); + public virtual PageCollection GetMessages(string threadId, MessageCollectionOptions options = null, CancellationToken cancellationToken = default); [EditorBrowsable(EditorBrowsableState.Never)] - public virtual ClientResult GetMessages(string threadId, int? limit, string order, string after, string before, RequestOptions options); - public virtual AsyncPageableCollection GetMessagesAsync(AssistantThread thread, ListOrder? resultOrder = null); - public virtual AsyncPageableCollection GetMessagesAsync(string threadId, ListOrder? resultOrder = null, CancellationToken cancellationToken = default); + public virtual IEnumerable GetMessages(string threadId, int? limit, string order, string after, string before, RequestOptions options); + public virtual AsyncPageCollection GetMessagesAsync(AssistantThread thread, MessageCollectionOptions options = null); + public virtual AsyncPageCollection GetMessagesAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); + public virtual AsyncPageCollection GetMessagesAsync(string threadId, MessageCollectionOptions options = null, CancellationToken cancellationToken = default); [EditorBrowsable(EditorBrowsableState.Never)] - public virtual Task GetMessagesAsync(string threadId, int? limit, string order, string after, string before, RequestOptions options); + public virtual IAsyncEnumerable GetMessagesAsync(string threadId, int? limit, string order, string after, string before, RequestOptions options); public virtual ClientResult GetRun(ThreadRun run); [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult GetRun(string threadId, string runId, RequestOptions options); @@ -180,28 +184,32 @@ namespace OpenAI.Assistants { [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task GetRunAsync(string threadId, string runId, RequestOptions options); public virtual Task> GetRunAsync(string threadId, string runId, CancellationToken cancellationToken = default); - public virtual PageableCollection GetRuns(AssistantThread thread, ListOrder? resultOrder = null); - public virtual PageableCollection GetRuns(string threadId, ListOrder? resultOrder = null, CancellationToken cancellationToken = default); + public virtual PageCollection GetRuns(AssistantThread thread, RunCollectionOptions options = null); + public virtual PageCollection GetRuns(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); + public virtual PageCollection GetRuns(string threadId, RunCollectionOptions options = null, CancellationToken cancellationToken = default); [EditorBrowsable(EditorBrowsableState.Never)] - public virtual ClientResult GetRuns(string threadId, int? limit, string order, string after, string before, RequestOptions options); - public virtual AsyncPageableCollection GetRunsAsync(AssistantThread thread, ListOrder? resultOrder = null); - public virtual AsyncPageableCollection GetRunsAsync(string threadId, ListOrder? resultOrder = null, CancellationToken cancellationToken = default); + public virtual IEnumerable GetRuns(string threadId, int? limit, string order, string after, string before, RequestOptions options); + public virtual AsyncPageCollection GetRunsAsync(AssistantThread thread, RunCollectionOptions options = null); + public virtual AsyncPageCollection GetRunsAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); + public virtual AsyncPageCollection GetRunsAsync(string threadId, RunCollectionOptions options = null, CancellationToken cancellationToken = default); [EditorBrowsable(EditorBrowsableState.Never)] - public virtual Task GetRunsAsync(string threadId, int? limit, string order, string after, string before, RequestOptions options); + public virtual IAsyncEnumerable GetRunsAsync(string threadId, int? limit, string order, string after, string before, RequestOptions options); [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult GetRunStep(string threadId, string runId, string stepId, RequestOptions options); public virtual ClientResult GetRunStep(string threadId, string runId, string stepId, CancellationToken cancellationToken = default); [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task GetRunStepAsync(string threadId, string runId, string stepId, RequestOptions options); public virtual Task> GetRunStepAsync(string threadId, string runId, string stepId, CancellationToken cancellationToken = default); - public virtual PageableCollection GetRunSteps(ThreadRun run, ListOrder? resultOrder = null); - public virtual PageableCollection GetRunSteps(string threadId, string runId, ListOrder? resultOrder = null, CancellationToken cancellationToken = default); + public virtual PageCollection GetRunSteps(ThreadRun run, RunStepCollectionOptions options = null); + public virtual PageCollection GetRunSteps(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); + public virtual PageCollection GetRunSteps(string threadId, string runId, RunStepCollectionOptions options = null, CancellationToken cancellationToken = default); [EditorBrowsable(EditorBrowsableState.Never)] - public virtual ClientResult GetRunSteps(string threadId, string runId, int? limit, string order, string after, string before, RequestOptions options); - public virtual AsyncPageableCollection GetRunStepsAsync(ThreadRun run, ListOrder? resultOrder = null); - public virtual AsyncPageableCollection GetRunStepsAsync(string threadId, string runId, ListOrder? resultOrder = null, CancellationToken cancellationToken = default); + public virtual IEnumerable GetRunSteps(string threadId, string runId, int? limit, string order, string after, string before, RequestOptions options); + public virtual AsyncPageCollection GetRunStepsAsync(ThreadRun run, RunStepCollectionOptions options = null); + public virtual AsyncPageCollection GetRunStepsAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); + public virtual AsyncPageCollection GetRunStepsAsync(string threadId, string runId, RunStepCollectionOptions options = null, CancellationToken cancellationToken = default); [EditorBrowsable(EditorBrowsableState.Never)] - public virtual Task GetRunStepsAsync(string threadId, string runId, int? limit, string order, string after, string before, RequestOptions options); + public virtual IAsyncEnumerable GetRunStepsAsync(string threadId, string runId, int? limit, string order, string after, string before, RequestOptions options); public virtual ClientResult GetThread(AssistantThread thread); [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult GetThread(string threadId, RequestOptions options); @@ -246,20 +254,26 @@ namespace OpenAI.Assistants { [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task SubmitToolOutputsToRunAsync(string threadId, string runId, BinaryContent content, RequestOptions options = null); public virtual Task> SubmitToolOutputsToRunAsync(string threadId, string runId, IEnumerable toolOutputs, CancellationToken cancellationToken = default); - public virtual ResultCollection SubmitToolOutputsToRunStreaming(ThreadRun run, IEnumerable toolOutputs); - public virtual ResultCollection SubmitToolOutputsToRunStreaming(string threadId, string runId, IEnumerable toolOutputs, CancellationToken cancellationToken = default); - public virtual AsyncResultCollection SubmitToolOutputsToRunStreamingAsync(ThreadRun run, IEnumerable toolOutputs); - public virtual AsyncResultCollection SubmitToolOutputsToRunStreamingAsync(string threadId, string runId, IEnumerable toolOutputs, CancellationToken cancellationToken = default); + public virtual CollectionResult SubmitToolOutputsToRunStreaming(ThreadRun run, IEnumerable toolOutputs); + public virtual CollectionResult SubmitToolOutputsToRunStreaming(string threadId, string runId, IEnumerable toolOutputs, CancellationToken cancellationToken = default); + public virtual AsyncCollectionResult SubmitToolOutputsToRunStreamingAsync(ThreadRun run, IEnumerable toolOutputs); + public virtual AsyncCollectionResult SubmitToolOutputsToRunStreamingAsync(string threadId, string runId, IEnumerable toolOutputs, CancellationToken cancellationToken = default); + } + public class AssistantCollectionOptions { + public string AfterId { get; set; } + public string BeforeId { get; set; } + public ListOrder? Order { get; set; } + public int? PageSize { get; set; } } public class AssistantCreationOptions : IJsonModel, IPersistableModel { - public string Description { get; init; } - public string Instructions { get; init; } - public IDictionary Metadata { get; } - public string Name { get; init; } - public float? NucleusSamplingFactor { get; init; } - public AssistantResponseFormat ResponseFormat { get; init; } - public float? Temperature { get; init; } - public ToolResources ToolResources { get; init; } + public string Description { get; set; } + public string Instructions { get; set; } + public IDictionary Metadata { get; set; } + public string Name { get; set; } + public float? NucleusSamplingFactor { get; set; } + public AssistantResponseFormat ResponseFormat { get; set; } + public float? Temperature { get; set; } + public ToolResources ToolResources { get; set; } public IList Tools { get; } AssistantCreationOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); @@ -268,16 +282,16 @@ namespace OpenAI.Assistants { BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } public class AssistantModificationOptions : IJsonModel, IPersistableModel { - public IList DefaultTools { get; init; } - public string Description { get; init; } - public string Instructions { get; init; } - public IDictionary Metadata { get; } - public string Model { get; init; } - public string Name { get; init; } - public float? NucleusSamplingFactor { get; init; } - public AssistantResponseFormat ResponseFormat { get; init; } - public float? Temperature { get; init; } - public ToolResources ToolResources { get; init; } + public IList DefaultTools { get; set; } + public string Description { get; set; } + public string Instructions { get; set; } + public IDictionary Metadata { get; set; } + public string Model { get; set; } + public string Name { get; set; } + public float? NucleusSamplingFactor { get; set; } + public AssistantResponseFormat ResponseFormat { get; set; } + public float? Temperature { get; set; } + public ToolResources ToolResources { get; set; } AssistantModificationOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); AssistantModificationOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); @@ -324,7 +338,7 @@ namespace OpenAI.Assistants { protected override void WriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options); } public class CodeInterpreterToolResources : IJsonModel, IPersistableModel { - public IList FileIds { get; init; } + public IList FileIds { get; set; } CodeInterpreterToolResources IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); CodeInterpreterToolResources IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); @@ -332,7 +346,7 @@ namespace OpenAI.Assistants { BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } public class FileSearchToolDefinition : ToolDefinition, IJsonModel, IPersistableModel { - public int? MaxResults { get; init; } + public int? MaxResults { get; set; } FileSearchToolDefinition IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); FileSearchToolDefinition IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); @@ -342,7 +356,7 @@ namespace OpenAI.Assistants { } public class FileSearchToolResources : IJsonModel, IPersistableModel { public IList NewVectorStores { get; } - public IList VectorStoreIds { get; init; } + public IList VectorStoreIds { get; set; } FileSearchToolResources IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); FileSearchToolResources IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); @@ -352,9 +366,9 @@ namespace OpenAI.Assistants { public class FunctionToolDefinition : ToolDefinition, IJsonModel, IPersistableModel { public FunctionToolDefinition(); public FunctionToolDefinition(string name, string description = null, BinaryData parameters = null); - public string Description { get; init; } - public required string FunctionName { get; init; } - public BinaryData Parameters { get; init; } + public string Description { get; set; } + public required string FunctionName { get; set; } + public BinaryData Parameters { get; set; } FunctionToolDefinition IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); FunctionToolDefinition IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); @@ -362,6 +376,12 @@ namespace OpenAI.Assistants { BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); protected override void WriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options); } + public class MessageCollectionOptions { + public string AfterId { get; set; } + public string BeforeId { get; set; } + public ListOrder? Order { get; set; } + public int? PageSize { get; set; } + } public abstract class MessageContent : IJsonModel, IPersistableModel { public MessageImageDetail? ImageDetail { get; } public string ImageFileId { get; } @@ -399,8 +419,8 @@ namespace OpenAI.Assistants { BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } public class MessageCreationOptions : IJsonModel, IPersistableModel { - public IList Attachments { get; } - public IDictionary Metadata { get; } + public IList Attachments { get; set; } + public IDictionary Metadata { get; set; } MessageCreationOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); MessageCreationOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); @@ -440,7 +460,7 @@ namespace OpenAI.Assistants { High = 2 } public class MessageModificationOptions : IJsonModel, IPersistableModel { - public IDictionary Metadata { get; } + public IDictionary Metadata { get; set; } MessageModificationOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); MessageModificationOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); @@ -475,27 +495,33 @@ namespace OpenAI.Assistants { public string FunctionName { get; } public string ToolCallId { get; } } - public class RequiredActionUpdate : StreamingUpdate { + public class RequiredActionUpdate : RunUpdate { public string FunctionArguments { get; } public string FunctionName { get; } public string ToolCallId { get; } public ThreadRun GetThreadRun(); } + public class RunCollectionOptions { + public string AfterId { get; set; } + public string BeforeId { get; set; } + public ListOrder? Order { get; set; } + public int? PageSize { get; set; } + } public class RunCreationOptions : IJsonModel, IPersistableModel { - public string AdditionalInstructions { get; init; } + public string AdditionalInstructions { get; set; } public IList AdditionalMessages { get; } - public string InstructionsOverride { get; init; } - public int? MaxCompletionTokens { get; init; } - public int? MaxPromptTokens { get; init; } + public string InstructionsOverride { get; set; } + public int? MaxCompletionTokens { get; set; } + public int? MaxPromptTokens { get; set; } public IDictionary Metadata { get; } - public string ModelOverride { get; init; } - public float? NucleusSamplingFactor { get; init; } - public bool? ParallelToolCallsEnabled { get; init; } - public AssistantResponseFormat ResponseFormat { get; init; } - public float? Temperature { get; init; } - public ToolConstraint ToolConstraint { get; init; } + public string ModelOverride { get; set; } + public float? NucleusSamplingFactor { get; set; } + public bool? ParallelToolCallsEnabled { get; set; } + public AssistantResponseFormat ResponseFormat { get; set; } + public float? Temperature { get; set; } + public ToolConstraint ToolConstraint { get; set; } public IList ToolsOverride { get; } - public RunTruncationStrategy TruncationStrategy { get; init; } + public RunTruncationStrategy TruncationStrategy { get; set; } RunCreationOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); RunCreationOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); @@ -553,7 +579,7 @@ namespace OpenAI.Assistants { public override readonly string ToString(); } public class RunModificationOptions : IJsonModel, IPersistableModel { - public IDictionary Metadata { get; } + public IDictionary Metadata { get; set; } RunModificationOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); RunModificationOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); @@ -615,6 +641,12 @@ namespace OpenAI.Assistants { string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } + public class RunStepCollectionOptions { + public string AfterId { get; set; } + public string BeforeId { get; set; } + public ListOrder? Order { get; set; } + public int? PageSize { get; set; } + } public abstract class RunStepDetails : IJsonModel, IPersistableModel { public string CreatedMessageId { get; } public IReadOnlyList ToolCalls { get; } @@ -811,8 +843,8 @@ namespace OpenAI.Assistants { } public class ThreadCreationOptions : IJsonModel, IPersistableModel { public IList InitialMessages { get; } - public IDictionary Metadata { get; } - public ToolResources ToolResources { get; init; } + public IDictionary Metadata { get; set; } + public ToolResources ToolResources { get; set; } ThreadCreationOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); ThreadCreationOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); @@ -844,8 +876,8 @@ namespace OpenAI.Assistants { BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } public class ThreadModificationOptions : IJsonModel, IPersistableModel { - public IDictionary Metadata { get; } - public ToolResources ToolResources { get; init; } + public IDictionary Metadata { get; set; } + public ToolResources ToolResources { get; set; } ThreadModificationOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); ThreadModificationOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); @@ -868,7 +900,7 @@ namespace OpenAI.Assistants { public IReadOnlyDictionary Metadata { get; } public string Model { get; } public float? NucleusSamplingFactor { get; } - public bool? ParallelToolCallsEnabled { get; init; } + public bool? ParallelToolCallsEnabled { get; } public IReadOnlyList RequiredActions { get; } public AssistantResponseFormat ResponseFormat { get; } public DateTimeOffset? StartedAt { get; } @@ -918,8 +950,8 @@ namespace OpenAI.Assistants { public class ToolOutput : IJsonModel, IPersistableModel { public ToolOutput(); public ToolOutput(string toolCallId, string output); - public string Output { get; init; } - public string ToolCallId { get; init; } + public string Output { get; set; } + public string ToolCallId { get; set; } ToolOutput IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); ToolOutput IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); @@ -927,8 +959,8 @@ namespace OpenAI.Assistants { BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } public class ToolResources : IJsonModel, IPersistableModel { - public CodeInterpreterToolResources CodeInterpreter { get; init; } - public FileSearchToolResources FileSearch { get; init; } + public CodeInterpreterToolResources CodeInterpreter { get; set; } + public FileSearchToolResources FileSearch { get; set; } ToolResources IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); ToolResources IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); @@ -937,7 +969,7 @@ namespace OpenAI.Assistants { } public class VectorStoreCreationHelper : IJsonModel, IPersistableModel { public VectorStoreCreationHelper(); - public VectorStoreCreationHelper(IEnumerable files, IDictionary metadata = null); + public VectorStoreCreationHelper(IEnumerable files, IDictionary metadata = null); public VectorStoreCreationHelper(IEnumerable fileIds, IDictionary metadata = null); public IList FileIds { get; } public IDictionary Metadata { get; } @@ -1002,11 +1034,11 @@ namespace OpenAI.Audio { Vtt = 4 } public class AudioTranscriptionOptions : IJsonModel, IPersistableModel { - public AudioTimestampGranularities Granularities { get; init; } - public string Language { get; init; } - public string Prompt { get; init; } - public AudioTranscriptionFormat? ResponseFormat { get; init; } - public float? Temperature { get; init; } + public AudioTimestampGranularities Granularities { get; set; } + public string Language { get; set; } + public string Prompt { get; set; } + public AudioTranscriptionFormat? ResponseFormat { get; set; } + public float? Temperature { get; set; } AudioTranscriptionOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); AudioTranscriptionOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); @@ -1032,9 +1064,9 @@ namespace OpenAI.Audio { Vtt = 4 } public class AudioTranslationOptions : IJsonModel, IPersistableModel { - public string Prompt { get; init; } - public AudioTranslationFormat? ResponseFormat { get; init; } - public float? Temperature { get; init; } + public string Prompt { get; set; } + public AudioTranslationFormat? ResponseFormat { get; set; } + public float? Temperature { get; set; } AudioTranslationOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); AudioTranslationOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); @@ -1058,8 +1090,8 @@ namespace OpenAI.Audio { Shimmer = 5 } public class SpeechGenerationOptions : IJsonModel, IPersistableModel { - public GeneratedSpeechFormat? ResponseFormat { get; init; } - public float? Speed { get; init; } + public GeneratedSpeechFormat? ResponseFormat { get; set; } + public float? Speed { get; set; } SpeechGenerationOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); SpeechGenerationOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); @@ -1131,8 +1163,8 @@ namespace OpenAI.Chat { public AssistantChatMessage(ChatFunctionCall functionCall, string content = null); public AssistantChatMessage(IEnumerable toolCalls, string content = null); public AssistantChatMessage(string content); - public ChatFunctionCall FunctionCall { get; init; } - public string ParticipantName { get; init; } + public ChatFunctionCall FunctionCall { get; set; } + public string ParticipantName { get; set; } public IList ToolCalls { get; } AssistantChatMessage IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); @@ -1155,10 +1187,10 @@ namespace OpenAI.Chat { [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task CompleteChatAsync(BinaryContent content, RequestOptions options = null); public virtual Task> CompleteChatAsync(IEnumerable messages, ChatCompletionOptions options = null, CancellationToken cancellationToken = default); - public virtual ResultCollection CompleteChatStreaming(params ChatMessage[] messages); - public virtual ResultCollection CompleteChatStreaming(IEnumerable messages, ChatCompletionOptions options = null, CancellationToken cancellationToken = default); - public virtual AsyncResultCollection CompleteChatStreamingAsync(params ChatMessage[] messages); - public virtual AsyncResultCollection CompleteChatStreamingAsync(IEnumerable messages, ChatCompletionOptions options = null, CancellationToken cancellationToken = default); + public virtual CollectionResult CompleteChatStreaming(params ChatMessage[] messages); + public virtual CollectionResult CompleteChatStreaming(IEnumerable messages, ChatCompletionOptions options = null, CancellationToken cancellationToken = default); + public virtual AsyncCollectionResult CompleteChatStreamingAsync(params ChatMessage[] messages); + public virtual AsyncCollectionResult CompleteChatStreamingAsync(IEnumerable messages, ChatCompletionOptions options = null, CancellationToken cancellationToken = default); } public class ChatCompletion : IJsonModel, IPersistableModel { public IReadOnlyList Content { get; } @@ -1180,23 +1212,23 @@ namespace OpenAI.Chat { public override string ToString(); } public class ChatCompletionOptions : IJsonModel, IPersistableModel { - public float? FrequencyPenalty { get; init; } - public ChatFunctionChoice FunctionChoice { get; init; } + public float? FrequencyPenalty { get; set; } + public ChatFunctionChoice FunctionChoice { get; set; } public IList Functions { get; } - public bool? IncludeLogProbabilities { get; init; } + public bool? IncludeLogProbabilities { get; set; } public IDictionary LogitBiases { get; } - public int? MaxTokens { get; init; } - public bool? ParallelToolCallsEnabled { get; init; } - public float? PresencePenalty { get; init; } - public ChatResponseFormat ResponseFormat { get; init; } - public long? Seed { get; init; } + public int? MaxTokens { get; set; } + public bool? ParallelToolCallsEnabled { get; set; } + public float? PresencePenalty { get; set; } + public ChatResponseFormat ResponseFormat { get; set; } + public long? Seed { get; set; } public IList StopSequences { get; } - public float? Temperature { get; init; } - public ChatToolChoice ToolChoice { get; init; } + public float? Temperature { get; set; } + public ChatToolChoice ToolChoice { get; set; } public IList Tools { get; } - public int? TopLogProbabilityCount { get; init; } - public float? TopP { get; init; } - public string User { get; init; } + public int? TopLogProbabilityCount { get; set; } + public float? TopP { get; set; } + public string User { get; set; } ChatCompletionOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); ChatCompletionOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); @@ -1213,9 +1245,9 @@ namespace OpenAI.Chat { [Obsolete("This field is marked as deprecated.")] public class ChatFunction : IJsonModel, IPersistableModel { public ChatFunction(string functionName, string functionDescription = null, BinaryData functionParameters = null); - public string FunctionDescription { get; init; } + public string FunctionDescription { get; set; } public string FunctionName { get; } - public BinaryData FunctionParameters { get; init; } + public BinaryData FunctionParameters { get; set; } ChatFunction IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); ChatFunction IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); @@ -1243,7 +1275,7 @@ namespace OpenAI.Chat { BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } public abstract class ChatMessage : IJsonModel, IPersistableModel { - public IList Content { get; protected init; } + public IList Content { get; protected set; } public static AssistantChatMessage CreateAssistantMessage(ChatCompletion chatCompletion); public static AssistantChatMessage CreateAssistantMessage(ChatFunctionCall functionCall, string content = null); public static AssistantChatMessage CreateAssistantMessage(IEnumerable toolCalls, string content = null); @@ -1358,7 +1390,7 @@ namespace OpenAI.Chat { public class ChatToolCall : IJsonModel, IPersistableModel { public string FunctionArguments { get; } public string FunctionName { get; } - public string Id { get; init; } + public string Id { get; set; } public ChatToolCallKind Kind { get; } public static ChatToolCall CreateFunctionToolCall(string toolCallId, string functionName, string functionArguments); ChatToolCall IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); @@ -1477,7 +1509,7 @@ namespace OpenAI.Chat { } public class SystemChatMessage : ChatMessage, IJsonModel, IPersistableModel { public SystemChatMessage(string content); - public string ParticipantName { get; init; } + public string ParticipantName { get; set; } SystemChatMessage IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); SystemChatMessage IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); @@ -1499,7 +1531,7 @@ namespace OpenAI.Chat { public UserChatMessage(params ChatMessageContentPart[] content); public UserChatMessage(IEnumerable content); public UserChatMessage(string content); - public string ParticipantName { get; init; } + public string ParticipantName { get; set; } UserChatMessage IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); UserChatMessage IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); @@ -1545,8 +1577,8 @@ namespace OpenAI.Embeddings { BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } public class EmbeddingGenerationOptions : IJsonModel, IPersistableModel { - public int? Dimensions { get; init; } - public string User { get; init; } + public int? Dimensions { get; set; } + public string User { get; set; } EmbeddingGenerationOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); EmbeddingGenerationOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); @@ -1806,9 +1838,9 @@ namespace OpenAI.Images { public virtual Task> GenerateImageVariationsAsync(string imageFilePath, int imageCount, ImageVariationOptions options = null); } public class ImageEditOptions : IJsonModel, IPersistableModel { - public GeneratedImageFormat? ResponseFormat { get; init; } - public GeneratedImageSize? Size { get; init; } - public string User { get; init; } + public GeneratedImageFormat? ResponseFormat { get; set; } + public GeneratedImageSize? Size { get; set; } + public string User { get; set; } ImageEditOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); ImageEditOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); @@ -1816,11 +1848,11 @@ namespace OpenAI.Images { BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } public class ImageGenerationOptions : IJsonModel, IPersistableModel { - public GeneratedImageQuality? Quality { get; init; } - public GeneratedImageFormat? ResponseFormat { get; init; } - public GeneratedImageSize? Size { get; init; } - public GeneratedImageStyle? Style { get; init; } - public string User { get; init; } + public GeneratedImageQuality? Quality { get; set; } + public GeneratedImageFormat? ResponseFormat { get; set; } + public GeneratedImageSize? Size { get; set; } + public GeneratedImageStyle? Style { get; set; } + public string User { get; set; } ImageGenerationOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); ImageGenerationOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); @@ -1828,9 +1860,9 @@ namespace OpenAI.Images { BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } public class ImageVariationOptions : IJsonModel, IPersistableModel { - public GeneratedImageFormat? ResponseFormat { get; init; } - public GeneratedImageSize? Size { get; init; } - public string User { get; init; } + public GeneratedImageFormat? ResponseFormat { get; set; } + public GeneratedImageSize? Size { get; set; } + public string User { get; set; } ImageVariationOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); ImageVariationOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); @@ -2028,11 +2060,11 @@ namespace OpenAI.VectorStores { public VectorStoreClient(ApiKeyCredential credential, OpenAIClientOptions options = null); protected internal VectorStoreClient(ClientPipeline pipeline, Uri endpoint, OpenAIClientOptions options); public virtual ClientPipeline Pipeline { get; } - public virtual ClientResult AddFileToVectorStore(VectorStore vectorStore, Files.OpenAIFileInfo file); + public virtual ClientResult AddFileToVectorStore(VectorStore vectorStore, OpenAIFileInfo file); [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult AddFileToVectorStore(string vectorStoreId, BinaryContent content, RequestOptions options = null); public virtual ClientResult AddFileToVectorStore(string vectorStoreId, string fileId, CancellationToken cancellationToken = default); - public virtual Task> AddFileToVectorStoreAsync(VectorStore vectorStore, Files.OpenAIFileInfo file); + public virtual Task> AddFileToVectorStoreAsync(VectorStore vectorStore, OpenAIFileInfo file); [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task AddFileToVectorStoreAsync(string vectorStoreId, BinaryContent content, RequestOptions options = null); public virtual Task> AddFileToVectorStoreAsync(string vectorStoreId, string fileId, CancellationToken cancellationToken = default); @@ -2044,11 +2076,11 @@ namespace OpenAI.VectorStores { [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task CancelBatchFileJobAsync(string vectorStoreId, string batchId, RequestOptions options); public virtual Task> CancelBatchFileJobAsync(string vectorStoreId, string batchJobId, CancellationToken cancellationToken = default); - public virtual ClientResult CreateBatchFileJob(VectorStore vectorStore, IEnumerable files); + public virtual ClientResult CreateBatchFileJob(VectorStore vectorStore, IEnumerable files); [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult CreateBatchFileJob(string vectorStoreId, BinaryContent content, RequestOptions options = null); public virtual ClientResult CreateBatchFileJob(string vectorStoreId, IEnumerable fileIds, CancellationToken cancellationToken = default); - public virtual Task> CreateBatchFileJobAsync(VectorStore vectorStore, IEnumerable files); + public virtual Task> CreateBatchFileJobAsync(VectorStore vectorStore, IEnumerable files); [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task CreateBatchFileJobAsync(string vectorStoreId, BinaryContent content, RequestOptions options = null); public virtual Task> CreateBatchFileJobAsync(string vectorStoreId, IEnumerable fileIds, CancellationToken cancellationToken = default); @@ -2073,30 +2105,34 @@ namespace OpenAI.VectorStores { [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task GetBatchFileJobAsync(string vectorStoreId, string batchId, RequestOptions options); public virtual Task> GetBatchFileJobAsync(string vectorStoreId, string batchJobId, CancellationToken cancellationToken = default); - public virtual ClientResult GetFileAssociation(VectorStore vectorStore, Files.OpenAIFileInfo file); + public virtual ClientResult GetFileAssociation(VectorStore vectorStore, OpenAIFileInfo file); [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult GetFileAssociation(string vectorStoreId, string fileId, RequestOptions options); public virtual ClientResult GetFileAssociation(string vectorStoreId, string fileId, CancellationToken cancellationToken = default); - public virtual Task> GetFileAssociationAsync(VectorStore vectorStore, Files.OpenAIFileInfo file); + public virtual Task> GetFileAssociationAsync(VectorStore vectorStore, OpenAIFileInfo file); [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task GetFileAssociationAsync(string vectorStoreId, string fileId, RequestOptions options); public virtual Task> GetFileAssociationAsync(string vectorStoreId, string fileId, CancellationToken cancellationToken = default); - public virtual PageableCollection GetFileAssociations(VectorStore vectorStore, ListOrder? resultOrder = null, VectorStoreFileStatusFilter? filter = null); - public virtual PageableCollection GetFileAssociations(VectorStoreBatchFileJob batchJob, ListOrder? resultOrder = null, VectorStoreFileStatusFilter? filter = null); - public virtual PageableCollection GetFileAssociations(string vectorStoreId, ListOrder? resultOrder = null, VectorStoreFileStatusFilter? filter = null, CancellationToken cancellationToken = default); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual ClientResult GetFileAssociations(string vectorStoreId, int? limit, string order, string after, string before, string filter, RequestOptions options); - public virtual PageableCollection GetFileAssociations(string vectorStoreId, string batchJobId, ListOrder? resultOrder = null, VectorStoreFileStatusFilter? filter = null, CancellationToken cancellationToken = default); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual ClientResult GetFileAssociations(string vectorStoreId, string batchId, int? limit, string order, string after, string before, string filter, RequestOptions options); - public virtual AsyncPageableCollection GetFileAssociationsAsync(VectorStore vectorStore, ListOrder? resultOrder = null, VectorStoreFileStatusFilter? filter = null); - public virtual AsyncPageableCollection GetFileAssociationsAsync(VectorStoreBatchFileJob batchJob, ListOrder? resultOrder = null, VectorStoreFileStatusFilter? filter = null); - public virtual AsyncPageableCollection GetFileAssociationsAsync(string vectorStoreId, ListOrder? resultOrder = null, VectorStoreFileStatusFilter? filter = null, CancellationToken cancellationToken = default); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual Task GetFileAssociationsAsync(string vectorStoreId, int? limit, string order, string after, string before, string filter, RequestOptions options); - public virtual AsyncPageableCollection GetFileAssociationsAsync(string vectorStoreId, string batchJobId, ListOrder? resultOrder = null, VectorStoreFileStatusFilter? filter = null, CancellationToken cancellationToken = default); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual Task GetFileAssociationsAsync(string vectorStoreId, string batchId, int? limit, string order, string after, string before, string filter, RequestOptions options); + public virtual PageCollection GetFileAssociations(VectorStore vectorStore, VectorStoreFileAssociationCollectionOptions options = null); + public virtual PageCollection GetFileAssociations(VectorStoreBatchFileJob batchJob, VectorStoreFileAssociationCollectionOptions options = null); + public virtual PageCollection GetFileAssociations(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); + public virtual PageCollection GetFileAssociations(string vectorStoreId, VectorStoreFileAssociationCollectionOptions options = null, CancellationToken cancellationToken = default); + [EditorBrowsable(EditorBrowsableState.Never)] + public virtual IEnumerable GetFileAssociations(string vectorStoreId, int? limit, string order, string after, string before, string filter, RequestOptions options); + public virtual PageCollection GetFileAssociations(string vectorStoreId, string batchJobId, VectorStoreFileAssociationCollectionOptions options = null, CancellationToken cancellationToken = default); + public virtual PageCollection GetFileAssociations(string vectorStoreId, string batchJobId, ContinuationToken firstPageToken, CancellationToken cancellationToken = default); + [EditorBrowsable(EditorBrowsableState.Never)] + public virtual IEnumerable GetFileAssociations(string vectorStoreId, string batchId, int? limit, string order, string after, string before, string filter, RequestOptions options); + public virtual AsyncPageCollection GetFileAssociationsAsync(VectorStore vectorStore, VectorStoreFileAssociationCollectionOptions options = null); + public virtual AsyncPageCollection GetFileAssociationsAsync(VectorStoreBatchFileJob batchJob, VectorStoreFileAssociationCollectionOptions options = null); + public virtual AsyncPageCollection GetFileAssociationsAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); + public virtual AsyncPageCollection GetFileAssociationsAsync(string vectorStoreId, VectorStoreFileAssociationCollectionOptions options = null, CancellationToken cancellationToken = default); + [EditorBrowsable(EditorBrowsableState.Never)] + public virtual IAsyncEnumerable GetFileAssociationsAsync(string vectorStoreId, int? limit, string order, string after, string before, string filter, RequestOptions options); + public virtual AsyncPageCollection GetFileAssociationsAsync(string vectorStoreId, string batchJobId, VectorStoreFileAssociationCollectionOptions options = null, CancellationToken cancellationToken = default); + public virtual AsyncPageCollection GetFileAssociationsAsync(string vectorStoreId, string batchJobId, ContinuationToken firstPageToken, CancellationToken cancellationToken = default); + [EditorBrowsable(EditorBrowsableState.Never)] + public virtual IAsyncEnumerable GetFileAssociationsAsync(string vectorStoreId, string batchId, int? limit, string order, string after, string before, string filter, RequestOptions options); public virtual ClientResult GetVectorStore(VectorStore vectorStore); [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult GetVectorStore(string vectorStoreId, RequestOptions options); @@ -2105,12 +2141,14 @@ namespace OpenAI.VectorStores { [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task GetVectorStoreAsync(string vectorStoreId, RequestOptions options); public virtual Task> GetVectorStoreAsync(string vectorStoreId, CancellationToken cancellationToken = default); - public virtual PageableCollection GetVectorStores(ListOrder? resultOrder = null, CancellationToken cancellationToken = default); + public virtual PageCollection GetVectorStores(VectorStoreCollectionOptions options = null, CancellationToken cancellationToken = default); + public virtual PageCollection GetVectorStores(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); [EditorBrowsable(EditorBrowsableState.Never)] - public virtual ClientResult GetVectorStores(int? limit, string order, string after, string before, RequestOptions options); - public virtual AsyncPageableCollection GetVectorStoresAsync(ListOrder? resultOrder = null, CancellationToken cancellationToken = default); + public virtual IEnumerable GetVectorStores(int? limit, string order, string after, string before, RequestOptions options); + public virtual AsyncPageCollection GetVectorStoresAsync(VectorStoreCollectionOptions options = null, CancellationToken cancellationToken = default); + public virtual AsyncPageCollection GetVectorStoresAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); [EditorBrowsable(EditorBrowsableState.Never)] - public virtual Task GetVectorStoresAsync(int? limit, string order, string after, string before, RequestOptions options); + public virtual IAsyncEnumerable GetVectorStoresAsync(int? limit, string order, string after, string before, RequestOptions options); public virtual ClientResult ModifyVectorStore(VectorStore vectorStore, VectorStoreModificationOptions options); public virtual ClientResult ModifyVectorStore(string vectorStoreId, VectorStoreModificationOptions vectorStore, CancellationToken cancellationToken = default); [EditorBrowsable(EditorBrowsableState.Never)] @@ -2119,21 +2157,27 @@ namespace OpenAI.VectorStores { public virtual Task> ModifyVectorStoreAsync(string vectorStoreId, VectorStoreModificationOptions vectorStore, CancellationToken cancellationToken = default); [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task ModifyVectorStoreAsync(string vectorStoreId, BinaryContent content, RequestOptions options = null); - public virtual ClientResult RemoveFileFromStore(VectorStore vectorStore, Files.OpenAIFileInfo file); + public virtual ClientResult RemoveFileFromStore(VectorStore vectorStore, OpenAIFileInfo file); [EditorBrowsable(EditorBrowsableState.Never)] public virtual ClientResult RemoveFileFromStore(string vectorStoreId, string fileId, RequestOptions options); public virtual ClientResult RemoveFileFromStore(string vectorStoreId, string fileId, CancellationToken cancellationToken = default); - public virtual Task> RemoveFileFromStoreAsync(VectorStore vectorStore, Files.OpenAIFileInfo file); + public virtual Task> RemoveFileFromStoreAsync(VectorStore vectorStore, OpenAIFileInfo file); [EditorBrowsable(EditorBrowsableState.Never)] public virtual Task RemoveFileFromStoreAsync(string vectorStoreId, string fileId, RequestOptions options); public virtual Task> RemoveFileFromStoreAsync(string vectorStoreId, string fileId, CancellationToken cancellationToken = default); } + public class VectorStoreCollectionOptions { + public string AfterId { get; set; } + public string BeforeId { get; set; } + public ListOrder? Order { get; set; } + public int? PageSize { get; set; } + } public class VectorStoreCreationOptions : IJsonModel, IPersistableModel { - public FileChunkingStrategy ChunkingStrategy { get; init; } - public VectorStoreExpirationPolicy ExpirationPolicy { get; init; } - public IList FileIds { get; init; } - public IDictionary Metadata { get; } - public string Name { get; init; } + public FileChunkingStrategy ChunkingStrategy { get; set; } + public VectorStoreExpirationPolicy ExpirationPolicy { get; set; } + public IList FileIds { get; set; } + public IDictionary Metadata { get; set; } + public string Name { get; set; } VectorStoreCreationOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); VectorStoreCreationOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); @@ -2147,8 +2191,8 @@ namespace OpenAI.VectorStores { public class VectorStoreExpirationPolicy : IJsonModel, IPersistableModel { public VectorStoreExpirationPolicy(); public VectorStoreExpirationPolicy(VectorStoreExpirationAnchor anchor, int days); - public required VectorStoreExpirationAnchor Anchor { get; init; } - public required int Days { get; init; } + public required VectorStoreExpirationAnchor Anchor { get; set; } + public required int Days { get; set; } VectorStoreExpirationPolicy IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); VectorStoreExpirationPolicy IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); @@ -2159,7 +2203,7 @@ namespace OpenAI.VectorStores { public FileChunkingStrategy ChunkingStrategy { get; } public DateTimeOffset CreatedAt { get; } public string FileId { get; } - public VectorStoreFileAssociationError? LastError { get; } + public VectorStoreFileAssociationError LastError { get; } public int Size { get; } public VectorStoreFileAssociationStatus Status { get; } public string VectorStoreId { get; } @@ -2169,21 +2213,21 @@ namespace OpenAI.VectorStores { string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } - public readonly partial struct VectorStoreFileAssociationError : IJsonModel, IPersistableModel, IJsonModel, IPersistableModel { - private readonly object _dummy; - private readonly int _dummyPrimitive; + public class VectorStoreFileAssociationCollectionOptions { + public string AfterId { get; set; } + public string BeforeId { get; set; } + public VectorStoreFileStatusFilter? Filter { get; set; } + public ListOrder? Order { get; set; } + public int? PageSize { get; set; } + } + public class VectorStoreFileAssociationError : IJsonModel, IPersistableModel { public VectorStoreFileAssociationErrorCode Code { get; } public string Message { get; } - readonly VectorStoreFileAssociationError IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - readonly void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - readonly object IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - readonly void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - readonly VectorStoreFileAssociationError IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - readonly string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - readonly BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - readonly object IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - readonly string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - readonly BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); + VectorStoreFileAssociationError IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + VectorStoreFileAssociationError IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } public readonly partial struct VectorStoreFileAssociationErrorCode : IEquatable { private readonly object _dummy; @@ -2210,24 +2254,17 @@ namespace OpenAI.VectorStores { Cancelled = 3, Failed = 4 } - public readonly partial struct VectorStoreFileCounts : IJsonModel, IPersistableModel, IJsonModel, IPersistableModel { - private readonly object _dummy; - private readonly int _dummyPrimitive; + public class VectorStoreFileCounts : IJsonModel, IPersistableModel { public int Cancelled { get; } public int Completed { get; } public int Failed { get; } public int InProgress { get; } public int Total { get; } - readonly VectorStoreFileCounts IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - readonly void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - readonly object IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - readonly void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - readonly VectorStoreFileCounts IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - readonly string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - readonly BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - readonly object IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - readonly string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - readonly BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); + VectorStoreFileCounts IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); + void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); + VectorStoreFileCounts IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); + string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); + BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); } public readonly partial struct VectorStoreFileStatusFilter : IEquatable { private readonly object _dummy; @@ -2248,9 +2285,9 @@ namespace OpenAI.VectorStores { public override readonly string ToString(); } public class VectorStoreModificationOptions : IJsonModel, IPersistableModel { - public VectorStoreExpirationPolicy ExpirationPolicy { get; init; } - public IDictionary Metadata { get; } - public string Name { get; init; } + public VectorStoreExpirationPolicy ExpirationPolicy { get; set; } + public IDictionary Metadata { get; set; } + public string Name { get; set; } VectorStoreModificationOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); VectorStoreModificationOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); diff --git a/.scripts/Export-API.ps1 b/.scripts/Export-API.ps1 new file mode 100644 index 000000000..6e1551639 --- /dev/null +++ b/.scripts/Export-API.ps1 @@ -0,0 +1,70 @@ +$repoRoot = Join-Path $PSScriptRoot .. -Resolve +$sourceFolder = Join-Path $repoRoot .dotnet\src +$apiFolder = Join-Path $repoRoot .dotnet\api + +$platformTarget = "netstandard2.0" +$projectPath = Join-Path $sourceFolder OpenAI.csproj +$assemblyPath = Join-Path $sourceFolder bin\Debug $platformTarget OpenAI.dll +$outputPath = Join-Path $apiFolder "OpenAI.$($platformTarget).cs" + +Write-Output "Building OpenAI.dll" + +dotnet build $projectPath + +Write-Output "Generating OpenAI.netstandard2.0.cs" + +genapi --assembly $assemblyPath --output-path $outputPath ` + --assembly-reference "$($env:ProgramFiles)\dotnet\packs\Microsoft.NETCore.App.Ref\8.0.7\ref\net8.0" ` + --assembly-reference "$($env:UserProfile)\.nuget\packages\system.memory.data\1.0.2\lib\netstandard2.0" ` + --assembly-reference "$($env:UserProfile)\.nuget\packages\system.clientmodel\1.1.0-beta.5\lib\netstandard2.0" ` + --assembly-reference "$($env:UserProfile)\.nuget\packages\microsoft.bcl.asyncinterfaces\1.1.0\lib\netstandard2.0" + +Write-Output "Cleaning up OpenAI.netstandard2.0.cs" + +$content = Get-Content $outputPath -Raw + +# Remove empty lines. +$content = $content -creplace '//.*\r?\n', '' +$content = $content -creplace '\r?\n\r?\n', "`n" +$content = $content -creplace '\r?\n *{', " {" + +# Remove fully-qualified names. +$content = $content -creplace "System\.ComponentModel\.", "" +$content = $content -creplace "System\.ClientModel.Primitives\.", "" +$content = $content -creplace "System\.ClientModel\.", "" +$content = $content -creplace "System\.Collections\.Generic\.", "" +$content = $content -creplace "System\.Collections\.", "" +$content = $content -creplace "System\.Threading.Tasks\.", "" +$content = $content -creplace "System\.Threading\.", "" +$content = $content -creplace "System\.Text.Json\.", "" +$content = $content -creplace "System\.Text\.", "" +$content = $content -creplace "System\.IO\.", "" +$content = $content -creplace "System\.", "" +$content = $content -creplace "Assistants\.", "" +$content = $content -creplace "Audio\.", "" +$content = $content -creplace "Batch\.", "" +$content = $content -creplace "Chat\.", "" +$content = $content -creplace "Embeddings\.", "" +$content = $content -creplace "Files\.", "" +$content = $content -creplace "FineTuning\.", "" +$content = $content -creplace "Images\.", "" +$content = $content -creplace "Models\.", "" +$content = $content -creplace "Moderations\.", "" +$content = $content -creplace "VectorStores\.", "" + +# Remove Diagnostics.DebuggerStepThrough attribute. +$content = $content -creplace ".*Diagnostics.DebuggerStepThrough.*\n", "" + +# Remove internal APIs. +$content = $content -creplace " * internal.*`n", "" + +# Other cosmestic simplifications. +$content = $content -creplace "partial class", "class" +$content = $content -creplace " { throw null; }", ";" +$content = $content -creplace " { }", ";" + +Set-Content -Path $outputPath -Value $content -NoNewline + +# For PR diff only +$markdownContent = "``````csharp`n$($content)`n``````" +Set-Content -Path "$($apiFolder)\api.md" -Value $markdownContent -NoNewline \ No newline at end of file diff --git a/.scripts/Generate-Api.ps1 b/.scripts/Generate-Api.ps1 deleted file mode 100644 index 19e123e37..000000000 --- a/.scripts/Generate-Api.ps1 +++ /dev/null @@ -1,49 +0,0 @@ -$repoRoot = Join-Path $PSScriptRoot .. -Resolve -$dotnetFolder = Join-Path $repoRoot .dotnet\src -$apiFolder = Join-Path $repoRoot .dotnet\api - -$platformTarget = "netstandard2.0" - -$assemblyPath = Join-Path $dotnetFolder bin\Debug $platformTarget OpenAI.dll -$outputPath = Join-Path $apiFolder "OpenAI.$($platformTarget).cs" - -genapi --assembly $assemblyPath --output-path $outputPath ` - --assembly-reference "$($env:ProgramFiles)\dotnet\packs\Microsoft.NETCore.App.Ref\8.0.5\ref\net8.0" ` - --assembly-reference "$($env:ProgramFiles)\dotnet\packs\Microsoft.NETCore.App.Ref\8.0.7\ref\net8.0" ` - --assembly-reference "$($env:UserProfile)\.nuget\packages\system.memory.data\1.0.2\lib\netstandard2.0" ` - --assembly-reference "$($env:UserProfile)\.nuget\packages\system.clientmodel\1.1.0-beta.5\lib\netstandard2.0" ` - --assembly-reference "$($env:UserProfile)\.nuget\packages\microsoft.bcl.asyncinterfaces\1.1.0\lib\netstandard2.0" - -$content = Get-Content $outputPath -Raw - -$content = $content -replace '//.*\r?\n', '' -$content = $content -replace '\r?\n\r?\n', "`n" - -$content = $content -replace '.*Diagnostics.DebuggerStepThrough.*\n', '' -$content = $content -replace 'ComponentModel.', '' - -$content = $content -replace 'System.ClientModel.Primitives.', '' -$content = $content -replace 'System.ClientModel.', '' -$content = $content -replace 'System.Collections.Generic.', '' -$content = $content -replace 'System.Collections.', '' -$content = $content -replace 'System.Threading.Tasks.', '' -$content = $content -replace 'System.Threading.', '' -$content = $content -replace 'System.Text.Json.', '' -$content = $content -replace 'System.Text.', '' -$content = $content -replace 'System.IO.', '' -$content = $content -replace 'System\.', '' - -$content = $content -replace "partial class", "class" -$content = $content -replace '\r?\n *{', " {" -$content = $content -replace 'throw null;', '' -$content = $content -replace ' { *}', ';' -$content = $content -replace ' *public int value__;\r?\n', '' -$content = $content -replace " * internal.*`n", "" -$content = $content -replace '(virtual )[^ \.]*\.', '$1' -$content = $content -replace "cancellationToken = null", "cancellationToken = default" - -Set-Content -Path $outputPath -Value $content -NoNewline - -# For PR diff only -$markdownContent = "``````csharp`n$($content)`n``````" -Set-Content -Path "$($apiFolder)\api.md" -Value $markdownContent -NoNewline \ No newline at end of file From 92d2889e401767a8cfef99cd9689e835dc1b268f Mon Sep 17 00:00:00 2001 From: Jose Arriaga Maldonado Date: Thu, 1 Aug 2024 16:10:18 -0700 Subject: [PATCH 7/7] Delete old api.md file --- .dotnet/api/api.md | 2304 --------------------------------------- .scripts/Export-API.ps1 | 8 +- 2 files changed, 2 insertions(+), 2310 deletions(-) delete mode 100644 .dotnet/api/api.md diff --git a/.dotnet/api/api.md b/.dotnet/api/api.md deleted file mode 100644 index 6b47f75f9..000000000 --- a/.dotnet/api/api.md +++ /dev/null @@ -1,2304 +0,0 @@ -```csharp -namespace OpenAI { - public readonly partial struct ListOrder : IEquatable { - private readonly object _dummy; - private readonly int _dummyPrimitive; - public ListOrder(string value); - public static ListOrder NewestFirst { get; } - public static ListOrder OldestFirst { get; } - public readonly bool Equals(ListOrder other); - [EditorBrowsable(EditorBrowsableState.Never)] - public override readonly bool Equals(object obj); - [EditorBrowsable(EditorBrowsableState.Never)] - public override readonly int GetHashCode(); - public static bool operator ==(ListOrder left, ListOrder right); - public static implicit operator ListOrder(string value); - public static bool operator !=(ListOrder left, ListOrder right); - public override readonly string ToString(); - } - public class OpenAIClient { - protected OpenAIClient(); - public OpenAIClient(OpenAIClientOptions options = null); - public OpenAIClient(ApiKeyCredential credential, OpenAIClientOptions options = null); - protected OpenAIClient(ClientPipeline pipeline, Uri endpoint, OpenAIClientOptions options); - protected Uri Endpoint { get; } - public virtual ClientPipeline Pipeline { get; } - public virtual AssistantClient GetAssistantClient(); - public virtual AudioClient GetAudioClient(string model); - public virtual BatchClient GetBatchClient(); - public virtual ChatClient GetChatClient(string model); - public virtual EmbeddingClient GetEmbeddingClient(string model); - public virtual FileClient GetFileClient(); - public virtual FineTuningClient GetFineTuningClient(); - public virtual ImageClient GetImageClient(string model); - public virtual ModelClient GetModelClient(); - public virtual ModerationClient GetModerationClient(string model); - public virtual VectorStoreClient GetVectorStoreClient(); - } - public class OpenAIClientOptions : ClientPipelineOptions { - public string ApplicationId { get; set; } - public Uri Endpoint { get; set; } - public string OrganizationId { get; set; } - public string ProjectId { get; set; } - } -} -namespace OpenAI.Assistants { - public class Assistant : IJsonModel, IPersistableModel { - public DateTimeOffset CreatedAt { get; } - public string Description { get; } - public string Id { get; } - public string Instructions { get; } - public IReadOnlyDictionary Metadata { get; } - public string Model { get; } - public string Name { get; } - public float? NucleusSamplingFactor { get; } - public AssistantResponseFormat ResponseFormat { get; } - public float? Temperature { get; } - public ToolResources ToolResources { get; } - public IReadOnlyList Tools { get; } - Assistant IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - Assistant IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } - public class AssistantClient { - protected AssistantClient(); - public AssistantClient(OpenAIClientOptions options = null); - public AssistantClient(ApiKeyCredential credential, OpenAIClientOptions options = null); - protected internal AssistantClient(ClientPipeline pipeline, Uri endpoint, OpenAIClientOptions options); - public virtual ClientPipeline Pipeline { get; } - public virtual ClientResult CancelRun(ThreadRun run); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual ClientResult CancelRun(string threadId, string runId, RequestOptions options); - public virtual ClientResult CancelRun(string threadId, string runId, CancellationToken cancellationToken = default); - public virtual Task> CancelRunAsync(ThreadRun run); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual Task CancelRunAsync(string threadId, string runId, RequestOptions options); - public virtual Task> CancelRunAsync(string threadId, string runId, CancellationToken cancellationToken = default); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual ClientResult CreateAssistant(BinaryContent content, RequestOptions options = null); - public virtual ClientResult CreateAssistant(string model, AssistantCreationOptions options = null, CancellationToken cancellationToken = default); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual Task CreateAssistantAsync(BinaryContent content, RequestOptions options = null); - public virtual Task> CreateAssistantAsync(string model, AssistantCreationOptions options = null, CancellationToken cancellationToken = default); - public virtual ClientResult CreateMessage(AssistantThread thread, MessageRole role, IEnumerable content, MessageCreationOptions options = null); - public virtual ClientResult CreateMessage(string threadId, MessageRole role, IEnumerable content, MessageCreationOptions options = null, CancellationToken cancellationToken = default); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual ClientResult CreateMessage(string threadId, BinaryContent content, RequestOptions options = null); - public virtual Task> CreateMessageAsync(AssistantThread thread, MessageRole role, IEnumerable content, MessageCreationOptions options = null); - public virtual Task> CreateMessageAsync(string threadId, MessageRole role, IEnumerable content, MessageCreationOptions options = null, CancellationToken cancellationToken = default); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual Task CreateMessageAsync(string threadId, BinaryContent content, RequestOptions options = null); - public virtual ClientResult CreateRun(AssistantThread thread, Assistant assistant, RunCreationOptions options = null); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual ClientResult CreateRun(string threadId, BinaryContent content, RequestOptions options = null); - public virtual ClientResult CreateRun(string threadId, string assistantId, RunCreationOptions options = null, CancellationToken cancellationToken = default); - public virtual Task> CreateRunAsync(AssistantThread thread, Assistant assistant, RunCreationOptions options = null); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual Task CreateRunAsync(string threadId, BinaryContent content, RequestOptions options = null); - public virtual Task> CreateRunAsync(string threadId, string assistantId, RunCreationOptions options = null, CancellationToken cancellationToken = default); - public virtual CollectionResult CreateRunStreaming(AssistantThread thread, Assistant assistant, RunCreationOptions options = null); - public virtual CollectionResult CreateRunStreaming(string threadId, string assistantId, RunCreationOptions options = null, CancellationToken cancellationToken = default); - public virtual AsyncCollectionResult CreateRunStreamingAsync(AssistantThread thread, Assistant assistant, RunCreationOptions options = null); - public virtual AsyncCollectionResult CreateRunStreamingAsync(string threadId, string assistantId, RunCreationOptions options = null, CancellationToken cancellationToken = default); - public virtual ClientResult CreateThread(ThreadCreationOptions options = null, CancellationToken cancellationToken = default); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual ClientResult CreateThread(BinaryContent content, RequestOptions options = null); - public virtual ClientResult CreateThreadAndRun(Assistant assistant, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual ClientResult CreateThreadAndRun(BinaryContent content, RequestOptions options = null); - public virtual ClientResult CreateThreadAndRun(string assistantId, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null, CancellationToken cancellationToken = default); - public virtual Task> CreateThreadAndRunAsync(Assistant assistant, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual Task CreateThreadAndRunAsync(BinaryContent content, RequestOptions options = null); - public virtual Task> CreateThreadAndRunAsync(string assistantId, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null, CancellationToken cancellationToken = default); - public virtual CollectionResult CreateThreadAndRunStreaming(Assistant assistant, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null); - public virtual CollectionResult CreateThreadAndRunStreaming(string assistantId, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null, CancellationToken cancellationToken = default); - public virtual AsyncCollectionResult CreateThreadAndRunStreamingAsync(Assistant assistant, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null); - public virtual AsyncCollectionResult CreateThreadAndRunStreamingAsync(string assistantId, ThreadCreationOptions threadOptions = null, RunCreationOptions runOptions = null, CancellationToken cancellationToken = default); - public virtual Task> CreateThreadAsync(ThreadCreationOptions options = null, CancellationToken cancellationToken = default); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual Task CreateThreadAsync(BinaryContent content, RequestOptions options = null); - public virtual ClientResult DeleteAssistant(Assistant assistant); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual ClientResult DeleteAssistant(string assistantId, RequestOptions options); - public virtual ClientResult DeleteAssistant(string assistantId, CancellationToken cancellationToken = default); - public virtual Task> DeleteAssistantAsync(Assistant assistant); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual Task DeleteAssistantAsync(string assistantId, RequestOptions options); - public virtual Task> DeleteAssistantAsync(string assistantId, CancellationToken cancellationToken = default); - public virtual ClientResult DeleteMessage(ThreadMessage message); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual ClientResult DeleteMessage(string threadId, string messageId, RequestOptions options); - public virtual ClientResult DeleteMessage(string threadId, string messageId, CancellationToken cancellationToken = default); - public virtual Task> DeleteMessageAsync(ThreadMessage message); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual Task DeleteMessageAsync(string threadId, string messageId, RequestOptions options); - public virtual Task> DeleteMessageAsync(string threadId, string messageId, CancellationToken cancellationToken = default); - public virtual ClientResult DeleteThread(AssistantThread thread); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual ClientResult DeleteThread(string threadId, RequestOptions options); - public virtual ClientResult DeleteThread(string threadId, CancellationToken cancellationToken = default); - public virtual Task> DeleteThreadAsync(AssistantThread thread); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual Task DeleteThreadAsync(string threadId, RequestOptions options); - public virtual Task> DeleteThreadAsync(string threadId, CancellationToken cancellationToken = default); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual ClientResult GetAssistant(string assistantId, RequestOptions options); - public virtual ClientResult GetAssistant(string assistantId, CancellationToken cancellationToken = default); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual Task GetAssistantAsync(string assistantId, RequestOptions options); - public virtual Task> GetAssistantAsync(string assistantId, CancellationToken cancellationToken = default); - public virtual PageCollection GetAssistants(AssistantCollectionOptions options = null, CancellationToken cancellationToken = default); - public virtual PageCollection GetAssistants(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual IEnumerable GetAssistants(int? limit, string order, string after, string before, RequestOptions options); - public virtual AsyncPageCollection GetAssistantsAsync(AssistantCollectionOptions options = null, CancellationToken cancellationToken = default); - public virtual AsyncPageCollection GetAssistantsAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual IAsyncEnumerable GetAssistantsAsync(int? limit, string order, string after, string before, RequestOptions options); - public virtual ClientResult GetMessage(ThreadMessage message); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual ClientResult GetMessage(string threadId, string messageId, RequestOptions options); - public virtual ClientResult GetMessage(string threadId, string messageId, CancellationToken cancellationToken = default); - public virtual Task> GetMessageAsync(ThreadMessage message); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual Task GetMessageAsync(string threadId, string messageId, RequestOptions options); - public virtual Task> GetMessageAsync(string threadId, string messageId, CancellationToken cancellationToken = default); - public virtual PageCollection GetMessages(AssistantThread thread, MessageCollectionOptions options = null); - public virtual PageCollection GetMessages(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); - public virtual PageCollection GetMessages(string threadId, MessageCollectionOptions options = null, CancellationToken cancellationToken = default); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual IEnumerable GetMessages(string threadId, int? limit, string order, string after, string before, RequestOptions options); - public virtual AsyncPageCollection GetMessagesAsync(AssistantThread thread, MessageCollectionOptions options = null); - public virtual AsyncPageCollection GetMessagesAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); - public virtual AsyncPageCollection GetMessagesAsync(string threadId, MessageCollectionOptions options = null, CancellationToken cancellationToken = default); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual IAsyncEnumerable GetMessagesAsync(string threadId, int? limit, string order, string after, string before, RequestOptions options); - public virtual ClientResult GetRun(ThreadRun run); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual ClientResult GetRun(string threadId, string runId, RequestOptions options); - public virtual ClientResult GetRun(string threadId, string runId, CancellationToken cancellationToken = default); - public virtual Task> GetRunAsync(ThreadRun run); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual Task GetRunAsync(string threadId, string runId, RequestOptions options); - public virtual Task> GetRunAsync(string threadId, string runId, CancellationToken cancellationToken = default); - public virtual PageCollection GetRuns(AssistantThread thread, RunCollectionOptions options = null); - public virtual PageCollection GetRuns(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); - public virtual PageCollection GetRuns(string threadId, RunCollectionOptions options = null, CancellationToken cancellationToken = default); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual IEnumerable GetRuns(string threadId, int? limit, string order, string after, string before, RequestOptions options); - public virtual AsyncPageCollection GetRunsAsync(AssistantThread thread, RunCollectionOptions options = null); - public virtual AsyncPageCollection GetRunsAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); - public virtual AsyncPageCollection GetRunsAsync(string threadId, RunCollectionOptions options = null, CancellationToken cancellationToken = default); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual IAsyncEnumerable GetRunsAsync(string threadId, int? limit, string order, string after, string before, RequestOptions options); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual ClientResult GetRunStep(string threadId, string runId, string stepId, RequestOptions options); - public virtual ClientResult GetRunStep(string threadId, string runId, string stepId, CancellationToken cancellationToken = default); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual Task GetRunStepAsync(string threadId, string runId, string stepId, RequestOptions options); - public virtual Task> GetRunStepAsync(string threadId, string runId, string stepId, CancellationToken cancellationToken = default); - public virtual PageCollection GetRunSteps(ThreadRun run, RunStepCollectionOptions options = null); - public virtual PageCollection GetRunSteps(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); - public virtual PageCollection GetRunSteps(string threadId, string runId, RunStepCollectionOptions options = null, CancellationToken cancellationToken = default); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual IEnumerable GetRunSteps(string threadId, string runId, int? limit, string order, string after, string before, RequestOptions options); - public virtual AsyncPageCollection GetRunStepsAsync(ThreadRun run, RunStepCollectionOptions options = null); - public virtual AsyncPageCollection GetRunStepsAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); - public virtual AsyncPageCollection GetRunStepsAsync(string threadId, string runId, RunStepCollectionOptions options = null, CancellationToken cancellationToken = default); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual IAsyncEnumerable GetRunStepsAsync(string threadId, string runId, int? limit, string order, string after, string before, RequestOptions options); - public virtual ClientResult GetThread(AssistantThread thread); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual ClientResult GetThread(string threadId, RequestOptions options); - public virtual ClientResult GetThread(string threadId, CancellationToken cancellationToken = default); - public virtual Task> GetThreadAsync(AssistantThread thread); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual Task GetThreadAsync(string threadId, RequestOptions options); - public virtual Task> GetThreadAsync(string threadId, CancellationToken cancellationToken = default); - public virtual ClientResult ModifyAssistant(Assistant assistant, AssistantModificationOptions options); - public virtual ClientResult ModifyAssistant(string assistantId, AssistantModificationOptions options, CancellationToken cancellationToken = default); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual ClientResult ModifyAssistant(string assistantId, BinaryContent content, RequestOptions options = null); - public virtual Task> ModifyAssistantAsync(Assistant assistant, AssistantModificationOptions options); - public virtual Task> ModifyAssistantAsync(string assistantId, AssistantModificationOptions options, CancellationToken cancellationToken = default); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual Task ModifyAssistantAsync(string assistantId, BinaryContent content, RequestOptions options = null); - public virtual ClientResult ModifyMessage(ThreadMessage message, MessageModificationOptions options); - public virtual ClientResult ModifyMessage(string threadId, string messageId, MessageModificationOptions options, CancellationToken cancellationToken = default); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual ClientResult ModifyMessage(string threadId, string messageId, BinaryContent content, RequestOptions options = null); - public virtual Task> ModifyMessageAsync(ThreadMessage message, MessageModificationOptions options); - public virtual Task> ModifyMessageAsync(string threadId, string messageId, MessageModificationOptions options, CancellationToken cancellationToken = default); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual Task ModifyMessageAsync(string threadId, string messageId, BinaryContent content, RequestOptions options = null); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual ClientResult ModifyRun(string threadId, string runId, BinaryContent content, RequestOptions options = null); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual Task ModifyRunAsync(string threadId, string runId, BinaryContent content, RequestOptions options = null); - public virtual ClientResult ModifyThread(AssistantThread thread, ThreadModificationOptions options); - public virtual ClientResult ModifyThread(string threadId, ThreadModificationOptions options, CancellationToken cancellationToken = default); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual ClientResult ModifyThread(string threadId, BinaryContent content, RequestOptions options = null); - public virtual Task> ModifyThreadAsync(AssistantThread thread, ThreadModificationOptions options); - public virtual Task> ModifyThreadAsync(string threadId, ThreadModificationOptions options, CancellationToken cancellationToken = default); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual Task ModifyThreadAsync(string threadId, BinaryContent content, RequestOptions options = null); - public virtual ClientResult SubmitToolOutputsToRun(ThreadRun run, IEnumerable toolOutputs); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual ClientResult SubmitToolOutputsToRun(string threadId, string runId, BinaryContent content, RequestOptions options = null); - public virtual ClientResult SubmitToolOutputsToRun(string threadId, string runId, IEnumerable toolOutputs, CancellationToken cancellationToken = default); - public virtual Task> SubmitToolOutputsToRunAsync(ThreadRun run, IEnumerable toolOutputs); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual Task SubmitToolOutputsToRunAsync(string threadId, string runId, BinaryContent content, RequestOptions options = null); - public virtual Task> SubmitToolOutputsToRunAsync(string threadId, string runId, IEnumerable toolOutputs, CancellationToken cancellationToken = default); - public virtual CollectionResult SubmitToolOutputsToRunStreaming(ThreadRun run, IEnumerable toolOutputs); - public virtual CollectionResult SubmitToolOutputsToRunStreaming(string threadId, string runId, IEnumerable toolOutputs, CancellationToken cancellationToken = default); - public virtual AsyncCollectionResult SubmitToolOutputsToRunStreamingAsync(ThreadRun run, IEnumerable toolOutputs); - public virtual AsyncCollectionResult SubmitToolOutputsToRunStreamingAsync(string threadId, string runId, IEnumerable toolOutputs, CancellationToken cancellationToken = default); - } - public class AssistantCollectionOptions { - public string AfterId { get; set; } - public string BeforeId { get; set; } - public ListOrder? Order { get; set; } - public int? PageSize { get; set; } - } - public class AssistantCreationOptions : IJsonModel, IPersistableModel { - public string Description { get; set; } - public string Instructions { get; set; } - public IDictionary Metadata { get; set; } - public string Name { get; set; } - public float? NucleusSamplingFactor { get; set; } - public AssistantResponseFormat ResponseFormat { get; set; } - public float? Temperature { get; set; } - public ToolResources ToolResources { get; set; } - public IList Tools { get; } - AssistantCreationOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - AssistantCreationOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } - public class AssistantModificationOptions : IJsonModel, IPersistableModel { - public IList DefaultTools { get; set; } - public string Description { get; set; } - public string Instructions { get; set; } - public IDictionary Metadata { get; set; } - public string Model { get; set; } - public string Name { get; set; } - public float? NucleusSamplingFactor { get; set; } - public AssistantResponseFormat ResponseFormat { get; set; } - public float? Temperature { get; set; } - public ToolResources ToolResources { get; set; } - AssistantModificationOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - AssistantModificationOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } - public class AssistantResponseFormat : IJsonModel, IPersistableModel { - protected AssistantResponseFormat(); - public static AssistantResponseFormat Auto { get; } - public static AssistantResponseFormat JsonObject { get; } - public static AssistantResponseFormat Text { get; } - public bool Equals(AssistantResponseFormat other); - [EditorBrowsable(EditorBrowsableState.Never)] - public override bool Equals(object obj); - [EditorBrowsable(EditorBrowsableState.Never)] - public override int GetHashCode(); - public static bool operator ==(AssistantResponseFormat left, AssistantResponseFormat right); - public static implicit operator AssistantResponseFormat(string value); - public static bool operator !=(AssistantResponseFormat left, AssistantResponseFormat right); - AssistantResponseFormat IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - AssistantResponseFormat IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - public override string ToString(); - } - public class AssistantThread : IJsonModel, IPersistableModel { - public DateTimeOffset CreatedAt { get; } - public string Id { get; } - public IReadOnlyDictionary Metadata { get; } - public ToolResources ToolResources { get; } - AssistantThread IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - AssistantThread IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } - public class CodeInterpreterToolDefinition : ToolDefinition, IJsonModel, IPersistableModel { - CodeInterpreterToolDefinition IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - CodeInterpreterToolDefinition IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - protected override void WriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options); - } - public class CodeInterpreterToolResources : IJsonModel, IPersistableModel { - public IList FileIds { get; set; } - CodeInterpreterToolResources IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - CodeInterpreterToolResources IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } - public class FileSearchToolDefinition : ToolDefinition, IJsonModel, IPersistableModel { - public int? MaxResults { get; set; } - FileSearchToolDefinition IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - FileSearchToolDefinition IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - protected override void WriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options); - } - public class FileSearchToolResources : IJsonModel, IPersistableModel { - public IList NewVectorStores { get; } - public IList VectorStoreIds { get; set; } - FileSearchToolResources IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - FileSearchToolResources IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } - public class FunctionToolDefinition : ToolDefinition, IJsonModel, IPersistableModel { - public FunctionToolDefinition(); - public FunctionToolDefinition(string name, string description = null, BinaryData parameters = null); - public string Description { get; set; } - public required string FunctionName { get; set; } - public BinaryData Parameters { get; set; } - FunctionToolDefinition IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - FunctionToolDefinition IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - protected override void WriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options); - } - public class MessageCollectionOptions { - public string AfterId { get; set; } - public string BeforeId { get; set; } - public ListOrder? Order { get; set; } - public int? PageSize { get; set; } - } - public abstract class MessageContent : IJsonModel, IPersistableModel { - public MessageImageDetail? ImageDetail { get; } - public string ImageFileId { get; } - public Uri ImageUrl { get; } - public string Text { get; } - public IReadOnlyList TextAnnotations { get; } - public static MessageContent FromImageFileId(string imageFileId, MessageImageDetail? detail = null); - public static MessageContent FromImageUrl(Uri imageUri, MessageImageDetail? detail = null); - public static MessageContent FromText(string text); - public static implicit operator MessageContent(string value); - MessageContent IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - MessageContent IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - protected abstract void WriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options); - } - public class MessageContentUpdate : StreamingUpdate { - public MessageImageDetail? ImageDetail { get; } - public string ImageFileId { get; } - public string MessageId { get; } - public int MessageIndex { get; } - public MessageRole? Role { get; } - public string Text { get; } - public TextAnnotationUpdate TextAnnotation { get; } - } - public class MessageCreationAttachment : IJsonModel, IPersistableModel { - public MessageCreationAttachment(string fileId, IEnumerable tools); - public string FileId { get; } - public IReadOnlyList Tools { get; } - MessageCreationAttachment IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - MessageCreationAttachment IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } - public class MessageCreationOptions : IJsonModel, IPersistableModel { - public IList Attachments { get; set; } - public IDictionary Metadata { get; set; } - MessageCreationOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - MessageCreationOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } - public class MessageFailureDetails : IJsonModel, IPersistableModel { - public MessageFailureReason Reason { get; } - MessageFailureDetails IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - MessageFailureDetails IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } - public readonly partial struct MessageFailureReason : IEquatable { - private readonly object _dummy; - private readonly int _dummyPrimitive; - public MessageFailureReason(string value); - public static MessageFailureReason ContentFilter { get; } - public static MessageFailureReason MaxTokens { get; } - public static MessageFailureReason RunCancelled { get; } - public static MessageFailureReason RunExpired { get; } - public static MessageFailureReason RunFailed { get; } - public readonly bool Equals(MessageFailureReason other); - [EditorBrowsable(EditorBrowsableState.Never)] - public override readonly bool Equals(object obj); - [EditorBrowsable(EditorBrowsableState.Never)] - public override readonly int GetHashCode(); - public static bool operator ==(MessageFailureReason left, MessageFailureReason right); - public static implicit operator MessageFailureReason(string value); - public static bool operator !=(MessageFailureReason left, MessageFailureReason right); - public override readonly string ToString(); - } - public enum MessageImageDetail { - Auto = 0, - Low = 1, - High = 2 - } - public class MessageModificationOptions : IJsonModel, IPersistableModel { - public IDictionary Metadata { get; set; } - MessageModificationOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - MessageModificationOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } - public enum MessageRole { - User = 0, - Assistant = 1 - } - public readonly partial struct MessageStatus : IEquatable { - private readonly object _dummy; - private readonly int _dummyPrimitive; - public MessageStatus(string value); - public static MessageStatus Completed { get; } - public static MessageStatus Incomplete { get; } - public static MessageStatus InProgress { get; } - public readonly bool Equals(MessageStatus other); - [EditorBrowsable(EditorBrowsableState.Never)] - public override readonly bool Equals(object obj); - [EditorBrowsable(EditorBrowsableState.Never)] - public override readonly int GetHashCode(); - public static bool operator ==(MessageStatus left, MessageStatus right); - public static implicit operator MessageStatus(string value); - public static bool operator !=(MessageStatus left, MessageStatus right); - public override readonly string ToString(); - } - public class MessageStatusUpdate : StreamingUpdate { - } - public abstract class RequiredAction { - public string FunctionArguments { get; } - public string FunctionName { get; } - public string ToolCallId { get; } - } - public class RequiredActionUpdate : RunUpdate { - public string FunctionArguments { get; } - public string FunctionName { get; } - public string ToolCallId { get; } - public ThreadRun GetThreadRun(); - } - public class RunCollectionOptions { - public string AfterId { get; set; } - public string BeforeId { get; set; } - public ListOrder? Order { get; set; } - public int? PageSize { get; set; } - } - public class RunCreationOptions : IJsonModel, IPersistableModel { - public string AdditionalInstructions { get; set; } - public IList AdditionalMessages { get; } - public string InstructionsOverride { get; set; } - public int? MaxCompletionTokens { get; set; } - public int? MaxPromptTokens { get; set; } - public IDictionary Metadata { get; } - public string ModelOverride { get; set; } - public float? NucleusSamplingFactor { get; set; } - public bool? ParallelToolCallsEnabled { get; set; } - public AssistantResponseFormat ResponseFormat { get; set; } - public float? Temperature { get; set; } - public ToolConstraint ToolConstraint { get; set; } - public IList ToolsOverride { get; } - public RunTruncationStrategy TruncationStrategy { get; set; } - RunCreationOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - RunCreationOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } - public class RunError : IJsonModel, IPersistableModel { - public RunErrorCode Code { get; } - public string Message { get; } - RunError IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - RunError IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } - public readonly partial struct RunErrorCode : IEquatable { - private readonly object _dummy; - private readonly int _dummyPrimitive; - public RunErrorCode(string value); - public static RunErrorCode InvalidPrompt { get; } - public static RunErrorCode RateLimitExceeded { get; } - public static RunErrorCode ServerError { get; } - public readonly bool Equals(RunErrorCode other); - [EditorBrowsable(EditorBrowsableState.Never)] - public override readonly bool Equals(object obj); - [EditorBrowsable(EditorBrowsableState.Never)] - public override readonly int GetHashCode(); - public static bool operator ==(RunErrorCode left, RunErrorCode right); - public static implicit operator RunErrorCode(string value); - public static bool operator !=(RunErrorCode left, RunErrorCode right); - public override readonly string ToString(); - } - public class RunIncompleteDetails : IJsonModel, IPersistableModel { - public RunIncompleteReason? Reason { get; } - RunIncompleteDetails IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - RunIncompleteDetails IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } - public readonly partial struct RunIncompleteReason : IEquatable { - private readonly object _dummy; - private readonly int _dummyPrimitive; - public RunIncompleteReason(string value); - public static RunIncompleteReason MaxCompletionTokens { get; } - public static RunIncompleteReason MaxPromptTokens { get; } - public readonly bool Equals(RunIncompleteReason other); - [EditorBrowsable(EditorBrowsableState.Never)] - public override readonly bool Equals(object obj); - [EditorBrowsable(EditorBrowsableState.Never)] - public override readonly int GetHashCode(); - public static bool operator ==(RunIncompleteReason left, RunIncompleteReason right); - public static implicit operator RunIncompleteReason(string value); - public static bool operator !=(RunIncompleteReason left, RunIncompleteReason right); - public override readonly string ToString(); - } - public class RunModificationOptions : IJsonModel, IPersistableModel { - public IDictionary Metadata { get; set; } - RunModificationOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - RunModificationOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } - public readonly partial struct RunStatus : IEquatable { - private readonly object _dummy; - private readonly int _dummyPrimitive; - public RunStatus(string value); - public static RunStatus Cancelled { get; } - public static RunStatus Cancelling { get; } - public static RunStatus Completed { get; } - public static RunStatus Expired { get; } - public static RunStatus Failed { get; } - public static RunStatus Incomplete { get; } - public static RunStatus InProgress { get; } - public bool IsTerminal { get; } - public static RunStatus Queued { get; } - public static RunStatus RequiresAction { get; } - public readonly bool Equals(RunStatus other); - [EditorBrowsable(EditorBrowsableState.Never)] - public override readonly bool Equals(object obj); - [EditorBrowsable(EditorBrowsableState.Never)] - public override readonly int GetHashCode(); - public static bool operator ==(RunStatus left, RunStatus right); - public static implicit operator RunStatus(string value); - public static bool operator !=(RunStatus left, RunStatus right); - public override readonly string ToString(); - } - public class RunStep : IJsonModel, IPersistableModel { - public string AssistantId { get; } - public DateTimeOffset? CancelledAt { get; } - public DateTimeOffset? CompletedAt { get; } - public DateTimeOffset CreatedAt { get; } - public RunStepDetails Details { get; } - public DateTimeOffset? ExpiredAt { get; } - public DateTimeOffset? FailedAt { get; } - public string Id { get; } - public RunStepError LastError { get; } - public IReadOnlyDictionary Metadata { get; } - public string RunId { get; } - public RunStepStatus Status { get; } - public string ThreadId { get; } - public RunStepType Type { get; } - public RunStepTokenUsage Usage { get; } - RunStep IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - RunStep IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } - public abstract class RunStepCodeInterpreterOutput : IJsonModel, IPersistableModel { - public string ImageFileId { get; } - public string Logs { get; } - RunStepCodeInterpreterOutput IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - RunStepCodeInterpreterOutput IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } - public class RunStepCollectionOptions { - public string AfterId { get; set; } - public string BeforeId { get; set; } - public ListOrder? Order { get; set; } - public int? PageSize { get; set; } - } - public abstract class RunStepDetails : IJsonModel, IPersistableModel { - public string CreatedMessageId { get; } - public IReadOnlyList ToolCalls { get; } - RunStepDetails IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - RunStepDetails IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } - public class RunStepDetailsUpdate : StreamingUpdate { - public string CodeInterpreterInput { get; } - public IReadOnlyList CodeInterpreterOutputs { get; } - public string CreatedMessageId { get; } - public string FunctionArguments { get; } - public string FunctionName { get; } - public string FunctionOutput { get; } - public string StepId { get; } - public string ToolCallId { get; } - public int? ToolCallIndex { get; } - } - public class RunStepError : IJsonModel, IPersistableModel { - public RunStepErrorCode Code { get; } - public string Message { get; } - RunStepError IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - RunStepError IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } - public readonly partial struct RunStepErrorCode : IEquatable { - private readonly object _dummy; - private readonly int _dummyPrimitive; - public RunStepErrorCode(string value); - public static RunStepErrorCode RateLimitExceeded { get; } - public static RunStepErrorCode ServerError { get; } - public readonly bool Equals(RunStepErrorCode other); - [EditorBrowsable(EditorBrowsableState.Never)] - public override readonly bool Equals(object obj); - [EditorBrowsable(EditorBrowsableState.Never)] - public override readonly int GetHashCode(); - public static bool operator ==(RunStepErrorCode left, RunStepErrorCode right); - public static implicit operator RunStepErrorCode(string value); - public static bool operator !=(RunStepErrorCode left, RunStepErrorCode right); - public override readonly string ToString(); - } - public readonly partial struct RunStepStatus : IEquatable { - private readonly object _dummy; - private readonly int _dummyPrimitive; - public RunStepStatus(string value); - public static RunStepStatus Cancelled { get; } - public static RunStepStatus Completed { get; } - public static RunStepStatus Expired { get; } - public static RunStepStatus Failed { get; } - public static RunStepStatus InProgress { get; } - public readonly bool Equals(RunStepStatus other); - [EditorBrowsable(EditorBrowsableState.Never)] - public override readonly bool Equals(object obj); - [EditorBrowsable(EditorBrowsableState.Never)] - public override readonly int GetHashCode(); - public static bool operator ==(RunStepStatus left, RunStepStatus right); - public static implicit operator RunStepStatus(string value); - public static bool operator !=(RunStepStatus left, RunStepStatus right); - public override readonly string ToString(); - } - public class RunStepTokenUsage : IJsonModel, IPersistableModel { - public int CompletionTokens { get; } - public int PromptTokens { get; } - public int TotalTokens { get; } - RunStepTokenUsage IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - RunStepTokenUsage IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } - public abstract class RunStepToolCall : IJsonModel, IPersistableModel { - public string CodeInterpreterInput { get; } - public IReadOnlyList CodeInterpreterOutputs { get; } - public string FunctionArguments { get; } - public string FunctionName { get; } - public string FunctionOutput { get; } - public string ToolCallId { get; } - public RunStepToolCallKind ToolKind { get; } - RunStepToolCall IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - RunStepToolCall IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } - public enum RunStepToolCallKind { - Unknown = 0, - CodeInterpreter = 1, - FileSearch = 2, - Function = 3 - } - public readonly partial struct RunStepType : IEquatable { - private readonly object _dummy; - private readonly int _dummyPrimitive; - public RunStepType(string value); - public static RunStepType MessageCreation { get; } - public static RunStepType ToolCalls { get; } - public readonly bool Equals(RunStepType other); - [EditorBrowsable(EditorBrowsableState.Never)] - public override readonly bool Equals(object obj); - [EditorBrowsable(EditorBrowsableState.Never)] - public override readonly int GetHashCode(); - public static bool operator ==(RunStepType left, RunStepType right); - public static implicit operator RunStepType(string value); - public static bool operator !=(RunStepType left, RunStepType right); - public override readonly string ToString(); - } - public class RunStepUpdate : StreamingUpdate { - } - public abstract class RunStepUpdateCodeInterpreterOutput : IJsonModel, IPersistableModel { - public string ImageFileId { get; } - public string Logs { get; } - public int OutputIndex { get; } - RunStepUpdateCodeInterpreterOutput IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - RunStepUpdateCodeInterpreterOutput IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } - public class RunTokenUsage : IJsonModel, IPersistableModel { - public int CompletionTokens { get; } - public int PromptTokens { get; } - public int TotalTokens { get; } - RunTokenUsage IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - RunTokenUsage IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } - public class RunTruncationStrategy : IJsonModel, IPersistableModel { - public static RunTruncationStrategy Auto { get; } - public int? LastMessages { get; } - public static RunTruncationStrategy CreateLastMessagesStrategy(int lastMessageCount); - RunTruncationStrategy IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - RunTruncationStrategy IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } - public class RunUpdate : StreamingUpdate { - } - public abstract class StreamingUpdate { - public StreamingUpdateReason UpdateKind { get; } - } - public enum StreamingUpdateReason { - Unknown = 0, - ThreadCreated = 1, - RunCreated = 2, - RunQueued = 3, - RunInProgress = 4, - RunRequiresAction = 5, - RunCompleted = 6, - RunIncomplete = 7, - RunFailed = 8, - RunCancelling = 9, - RunCancelled = 10, - RunExpired = 11, - RunStepCreated = 12, - RunStepInProgress = 13, - RunStepUpdated = 14, - RunStepCompleted = 15, - RunStepFailed = 16, - RunStepCancelled = 17, - RunStepExpired = 18, - MessageCreated = 19, - MessageInProgress = 20, - MessageUpdated = 21, - MessageCompleted = 22, - MessageFailed = 23, - Error = 24, - Done = 25 - } - public class StreamingUpdate : StreamingUpdate where T : class { - public T Value { get; } - public static implicit operator T(StreamingUpdate update); - } - public class TextAnnotation { - public int EndIndex { get; } - public string InputFileId { get; } - public string OutputFileId { get; } - public int StartIndex { get; } - public string TextToReplace { get; } - } - public class TextAnnotationUpdate { - public int ContentIndex { get; } - public int? EndIndex { get; } - public string InputFileId { get; } - public string OutputFileId { get; } - public int? StartIndex { get; } - public string TextToReplace { get; } - } - public class ThreadCreationOptions : IJsonModel, IPersistableModel { - public IList InitialMessages { get; } - public IDictionary Metadata { get; set; } - public ToolResources ToolResources { get; set; } - ThreadCreationOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - ThreadCreationOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } - public class ThreadInitializationMessage : MessageCreationOptions { - public ThreadInitializationMessage(MessageRole role, IEnumerable content); - public static implicit operator ThreadInitializationMessage(string initializationMessage); - } - public class ThreadMessage : IJsonModel, IPersistableModel { - public string AssistantId { get; } - public IReadOnlyList Attachments { get; } - public DateTimeOffset? CompletedAt { get; } - public IReadOnlyList Content { get; } - public DateTimeOffset CreatedAt { get; } - public string Id { get; } - public DateTimeOffset? IncompleteAt { get; } - public MessageFailureDetails IncompleteDetails { get; } - public IReadOnlyDictionary Metadata { get; } - public MessageRole Role { get; } - public string RunId { get; } - public MessageStatus Status { get; } - public string ThreadId { get; } - ThreadMessage IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - ThreadMessage IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } - public class ThreadModificationOptions : IJsonModel, IPersistableModel { - public IDictionary Metadata { get; set; } - public ToolResources ToolResources { get; set; } - ThreadModificationOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - ThreadModificationOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } - public class ThreadRun : IJsonModel, IPersistableModel { - public string AssistantId { get; } - public DateTimeOffset? CancelledAt { get; } - public DateTimeOffset? CompletedAt { get; } - public DateTimeOffset CreatedAt { get; } - public DateTimeOffset? ExpiresAt { get; } - public DateTimeOffset? FailedAt { get; } - public string Id { get; } - public RunIncompleteDetails IncompleteDetails { get; } - public string Instructions { get; } - public RunError LastError { get; } - public int? MaxCompletionTokens { get; } - public int? MaxPromptTokens { get; } - public IReadOnlyDictionary Metadata { get; } - public string Model { get; } - public float? NucleusSamplingFactor { get; } - public bool? ParallelToolCallsEnabled { get; } - public IReadOnlyList RequiredActions { get; } - public AssistantResponseFormat ResponseFormat { get; } - public DateTimeOffset? StartedAt { get; } - public RunStatus Status { get; } - public float? Temperature { get; } - public string ThreadId { get; } - public ToolConstraint ToolConstraint { get; } - public IReadOnlyList Tools { get; } - public RunTruncationStrategy TruncationStrategy { get; } - public RunTokenUsage Usage { get; } - ThreadRun IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - ThreadRun IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } - public class ThreadUpdate : StreamingUpdate { - public DateTimeOffset CreatedAt { get; } - public string Id { get; } - public IReadOnlyDictionary Metadata { get; } - public ToolResources ToolResources { get; } - } - public class ToolConstraint : IJsonModel, IPersistableModel { - public ToolConstraint(ToolDefinition toolDefinition); - public static ToolConstraint Auto { get; } - public static ToolConstraint None { get; } - public static ToolConstraint Required { get; } - ToolConstraint IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - ToolConstraint IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } - public abstract class ToolDefinition : IJsonModel, IPersistableModel { - protected ToolDefinition(); - protected ToolDefinition(string type); - public static CodeInterpreterToolDefinition CreateCodeInterpreter(); - public static FileSearchToolDefinition CreateFileSearch(int? maxResults = null); - public static FunctionToolDefinition CreateFunction(string name, string description = null, BinaryData parameters = null); - ToolDefinition IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - ToolDefinition IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - protected abstract void WriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options); - } - public class ToolOutput : IJsonModel, IPersistableModel { - public ToolOutput(); - public ToolOutput(string toolCallId, string output); - public string Output { get; set; } - public string ToolCallId { get; set; } - ToolOutput IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - ToolOutput IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } - public class ToolResources : IJsonModel, IPersistableModel { - public CodeInterpreterToolResources CodeInterpreter { get; set; } - public FileSearchToolResources FileSearch { get; set; } - ToolResources IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - ToolResources IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } - public class VectorStoreCreationHelper : IJsonModel, IPersistableModel { - public VectorStoreCreationHelper(); - public VectorStoreCreationHelper(IEnumerable files, IDictionary metadata = null); - public VectorStoreCreationHelper(IEnumerable fileIds, IDictionary metadata = null); - public IList FileIds { get; } - public IDictionary Metadata { get; } - VectorStoreCreationHelper IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - VectorStoreCreationHelper IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } -} -namespace OpenAI.Audio { - public class AudioClient { - protected AudioClient(); - protected internal AudioClient(ClientPipeline pipeline, string model, Uri endpoint, OpenAIClientOptions options); - public AudioClient(string model, OpenAIClientOptions options = null); - public AudioClient(string model, ApiKeyCredential credential, OpenAIClientOptions options = null); - public virtual ClientPipeline Pipeline { get; } - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual ClientResult GenerateSpeechFromText(BinaryContent content, RequestOptions options = null); - public virtual ClientResult GenerateSpeechFromText(string text, GeneratedSpeechVoice voice, SpeechGenerationOptions options = null, CancellationToken cancellationToken = default); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual Task GenerateSpeechFromTextAsync(BinaryContent content, RequestOptions options = null); - public virtual Task> GenerateSpeechFromTextAsync(string text, GeneratedSpeechVoice voice, SpeechGenerationOptions options = null, CancellationToken cancellationToken = default); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual ClientResult TranscribeAudio(BinaryContent content, string contentType, RequestOptions options = null); - public virtual ClientResult TranscribeAudio(Stream audio, string audioFilename, AudioTranscriptionOptions options = null, CancellationToken cancellationToken = default); - public virtual ClientResult TranscribeAudio(string audioFilePath, AudioTranscriptionOptions options = null); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual Task TranscribeAudioAsync(BinaryContent content, string contentType, RequestOptions options = null); - public virtual Task> TranscribeAudioAsync(Stream audio, string audioFilename, AudioTranscriptionOptions options = null, CancellationToken cancellationToken = default); - public virtual Task> TranscribeAudioAsync(string audioFilePath, AudioTranscriptionOptions options = null); - public virtual ClientResult TranslateAudio(BinaryContent content, string contentType, RequestOptions options = null); - public virtual ClientResult TranslateAudio(Stream audio, string audioFilename, AudioTranslationOptions options = null, CancellationToken cancellationToken = default); - public virtual ClientResult TranslateAudio(string audioFilePath, AudioTranslationOptions options = null); - public virtual Task TranslateAudioAsync(BinaryContent content, string contentType, RequestOptions options = null); - public virtual Task> TranslateAudioAsync(Stream audio, string audioFilename, AudioTranslationOptions options = null, CancellationToken cancellationToken = default); - public virtual Task> TranslateAudioAsync(string audioFilePath, AudioTranslationOptions options = null); - } - [Flags] - public enum AudioTimestampGranularities { - Default = 0, - Word = 1, - Segment = 2 - } - public class AudioTranscription : IJsonModel, IPersistableModel { - public TimeSpan? Duration { get; } - public string Language { get; } - public IReadOnlyList Segments { get; } - public string Text { get; } - public IReadOnlyList Words { get; } - AudioTranscription IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - AudioTranscription IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } - public enum AudioTranscriptionFormat { - Text = 0, - Simple = 1, - Verbose = 2, - Srt = 3, - Vtt = 4 - } - public class AudioTranscriptionOptions : IJsonModel, IPersistableModel { - public AudioTimestampGranularities Granularities { get; set; } - public string Language { get; set; } - public string Prompt { get; set; } - public AudioTranscriptionFormat? ResponseFormat { get; set; } - public float? Temperature { get; set; } - AudioTranscriptionOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - AudioTranscriptionOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } - public class AudioTranslation : IJsonModel, IPersistableModel { - public TimeSpan? Duration { get; } - public string Language { get; } - public IReadOnlyList Segments { get; } - public string Text { get; } - AudioTranslation IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - AudioTranslation IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } - public enum AudioTranslationFormat { - Text = 0, - Simple = 1, - Verbose = 2, - Srt = 3, - Vtt = 4 - } - public class AudioTranslationOptions : IJsonModel, IPersistableModel { - public string Prompt { get; set; } - public AudioTranslationFormat? ResponseFormat { get; set; } - public float? Temperature { get; set; } - AudioTranslationOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - AudioTranslationOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } - public enum GeneratedSpeechFormat { - Mp3 = 0, - Opus = 1, - Aac = 2, - Flac = 3, - Wav = 4, - Pcm = 5 - } - public enum GeneratedSpeechVoice { - Alloy = 0, - Echo = 1, - Fable = 2, - Onyx = 3, - Nova = 4, - Shimmer = 5 - } - public class SpeechGenerationOptions : IJsonModel, IPersistableModel { - public GeneratedSpeechFormat? ResponseFormat { get; set; } - public float? Speed { get; set; } - SpeechGenerationOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - SpeechGenerationOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } - public readonly partial struct TranscribedSegment : IJsonModel, IPersistableModel, IJsonModel, IPersistableModel { - private readonly object _dummy; - private readonly int _dummyPrimitive; - public double AverageLogProbability { get; } - public float CompressionRatio { get; } - public TimeSpan End { get; } - public int Id { get; } - public double NoSpeechProbability { get; } - public long SeekOffset { get; } - public TimeSpan Start { get; } - public float Temperature { get; } - public string Text { get; } - public IReadOnlyList TokenIds { get; } - readonly TranscribedSegment IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - readonly void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - readonly object IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - readonly void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - readonly TranscribedSegment IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - readonly string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - readonly BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - readonly object IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - readonly string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - readonly BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } - public readonly partial struct TranscribedWord : IJsonModel, IPersistableModel, IJsonModel, IPersistableModel { - private readonly object _dummy; - private readonly int _dummyPrimitive; - public TimeSpan End { get; } - public TimeSpan Start { get; } - public string Word { get; } - readonly TranscribedWord IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - readonly void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - readonly object IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - readonly void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - readonly TranscribedWord IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - readonly string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - readonly BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - readonly object IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - readonly string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - readonly BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } -} -namespace OpenAI.Batch { - public class BatchClient { - protected BatchClient(); - public BatchClient(OpenAIClientOptions options = null); - public BatchClient(ApiKeyCredential credential, OpenAIClientOptions options = null); - protected internal BatchClient(ClientPipeline pipeline, Uri endpoint, OpenAIClientOptions options); - public virtual ClientPipeline Pipeline { get; } - public virtual ClientResult CancelBatch(string batchId, RequestOptions options); - public virtual Task CancelBatchAsync(string batchId, RequestOptions options); - public virtual ClientResult CreateBatch(BinaryContent content, RequestOptions options = null); - public virtual Task CreateBatchAsync(BinaryContent content, RequestOptions options = null); - public virtual ClientResult GetBatch(string batchId, RequestOptions options); - public virtual Task GetBatchAsync(string batchId, RequestOptions options); - public virtual ClientResult GetBatches(string after, int? limit, RequestOptions options); - public virtual Task GetBatchesAsync(string after, int? limit, RequestOptions options); - } -} -namespace OpenAI.Chat { - public class AssistantChatMessage : ChatMessage, IJsonModel, IPersistableModel { - public AssistantChatMessage(ChatCompletion chatCompletion); - public AssistantChatMessage(ChatFunctionCall functionCall, string content = null); - public AssistantChatMessage(IEnumerable toolCalls, string content = null); - public AssistantChatMessage(string content); - public ChatFunctionCall FunctionCall { get; set; } - public string ParticipantName { get; set; } - public IList ToolCalls { get; } - AssistantChatMessage IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - AssistantChatMessage IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - protected override void WriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options); - } - public class ChatClient { - protected ChatClient(); - protected internal ChatClient(ClientPipeline pipeline, string model, Uri endpoint, OpenAIClientOptions options); - public ChatClient(string model, OpenAIClientOptions options = null); - public ChatClient(string model, ApiKeyCredential credential, OpenAIClientOptions options = null); - public virtual ClientPipeline Pipeline { get; } - public virtual ClientResult CompleteChat(params ChatMessage[] messages); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual ClientResult CompleteChat(BinaryContent content, RequestOptions options = null); - public virtual ClientResult CompleteChat(IEnumerable messages, ChatCompletionOptions options = null, CancellationToken cancellationToken = default); - public virtual Task> CompleteChatAsync(params ChatMessage[] messages); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual Task CompleteChatAsync(BinaryContent content, RequestOptions options = null); - public virtual Task> CompleteChatAsync(IEnumerable messages, ChatCompletionOptions options = null, CancellationToken cancellationToken = default); - public virtual CollectionResult CompleteChatStreaming(params ChatMessage[] messages); - public virtual CollectionResult CompleteChatStreaming(IEnumerable messages, ChatCompletionOptions options = null, CancellationToken cancellationToken = default); - public virtual AsyncCollectionResult CompleteChatStreamingAsync(params ChatMessage[] messages); - public virtual AsyncCollectionResult CompleteChatStreamingAsync(IEnumerable messages, ChatCompletionOptions options = null, CancellationToken cancellationToken = default); - } - public class ChatCompletion : IJsonModel, IPersistableModel { - public IReadOnlyList Content { get; } - public IReadOnlyList ContentTokenLogProbabilities { get; } - public DateTimeOffset CreatedAt { get; } - public ChatFinishReason FinishReason { get; } - public ChatFunctionCall FunctionCall { get; } - public string Id { get; } - public string Model { get; } - public ChatMessageRole Role { get; } - public string SystemFingerprint { get; } - public IReadOnlyList ToolCalls { get; } - public ChatTokenUsage Usage { get; } - ChatCompletion IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - ChatCompletion IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - public override string ToString(); - } - public class ChatCompletionOptions : IJsonModel, IPersistableModel { - public float? FrequencyPenalty { get; set; } - public ChatFunctionChoice FunctionChoice { get; set; } - public IList Functions { get; } - public bool? IncludeLogProbabilities { get; set; } - public IDictionary LogitBiases { get; } - public int? MaxTokens { get; set; } - public bool? ParallelToolCallsEnabled { get; set; } - public float? PresencePenalty { get; set; } - public ChatResponseFormat ResponseFormat { get; set; } - public long? Seed { get; set; } - public IList StopSequences { get; } - public float? Temperature { get; set; } - public ChatToolChoice ToolChoice { get; set; } - public IList Tools { get; } - public int? TopLogProbabilityCount { get; set; } - public float? TopP { get; set; } - public string User { get; set; } - ChatCompletionOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - ChatCompletionOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } - public enum ChatFinishReason { - Stop = 0, - Length = 1, - ContentFilter = 2, - ToolCalls = 3, - FunctionCall = 4 - } - [Obsolete("This field is marked as deprecated.")] - public class ChatFunction : IJsonModel, IPersistableModel { - public ChatFunction(string functionName, string functionDescription = null, BinaryData functionParameters = null); - public string FunctionDescription { get; set; } - public string FunctionName { get; } - public BinaryData FunctionParameters { get; set; } - ChatFunction IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - ChatFunction IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } - public class ChatFunctionCall : IJsonModel, IPersistableModel { - public ChatFunctionCall(string functionName, string functionArguments); - public string FunctionArguments { get; } - public string FunctionName { get; } - ChatFunctionCall IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - ChatFunctionCall IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } - public class ChatFunctionChoice : IJsonModel, IPersistableModel { - public ChatFunctionChoice(ChatFunction chatFunction); - public static ChatFunctionChoice Auto { get; } - public static ChatFunctionChoice None { get; } - ChatFunctionChoice IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - ChatFunctionChoice IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } - public abstract class ChatMessage : IJsonModel, IPersistableModel { - public IList Content { get; protected set; } - public static AssistantChatMessage CreateAssistantMessage(ChatCompletion chatCompletion); - public static AssistantChatMessage CreateAssistantMessage(ChatFunctionCall functionCall, string content = null); - public static AssistantChatMessage CreateAssistantMessage(IEnumerable toolCalls, string content = null); - public static AssistantChatMessage CreateAssistantMessage(string content); - public static FunctionChatMessage CreateFunctionMessage(string functionName, string content); - public static SystemChatMessage CreateSystemMessage(string content); - public static ToolChatMessage CreateToolChatMessage(string toolCallId, string content); - public static UserChatMessage CreateUserMessage(params ChatMessageContentPart[] contentParts); - public static UserChatMessage CreateUserMessage(IEnumerable contentParts); - public static UserChatMessage CreateUserMessage(string content); - public static implicit operator ChatMessage(string userMessage); - ChatMessage IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - ChatMessage IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - protected abstract void WriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options); - } - public class ChatMessageContentPart : IJsonModel, IPersistableModel { - public BinaryData ImageBytes { get; } - public string ImageBytesMediaType { get; } - public ImageChatMessageContentPartDetail? ImageDetail { get; } - public Uri ImageUri { get; } - public ChatMessageContentPartKind Kind { get; } - public string Text { get; } - public static ChatMessageContentPart CreateImageMessageContentPart(BinaryData imageBytes, string imageBytesMediaType, ImageChatMessageContentPartDetail? imageDetail = null); - public static ChatMessageContentPart CreateImageMessageContentPart(Uri imageUri, ImageChatMessageContentPartDetail? imageDetail = null); - public static ChatMessageContentPart CreateTextMessageContentPart(string text); - public static implicit operator ChatMessageContentPart(string content); - ChatMessageContentPart IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - ChatMessageContentPart IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - public override string ToString(); - } - public readonly partial struct ChatMessageContentPartKind : IEquatable { - private readonly object _dummy; - private readonly int _dummyPrimitive; - public ChatMessageContentPartKind(string value); - public static ChatMessageContentPartKind Image { get; } - public static ChatMessageContentPartKind Text { get; } - public readonly bool Equals(ChatMessageContentPartKind other); - [EditorBrowsable(EditorBrowsableState.Never)] - public override readonly bool Equals(object obj); - [EditorBrowsable(EditorBrowsableState.Never)] - public override readonly int GetHashCode(); - public static bool operator ==(ChatMessageContentPartKind left, ChatMessageContentPartKind right); - public static implicit operator ChatMessageContentPartKind(string value); - public static bool operator !=(ChatMessageContentPartKind left, ChatMessageContentPartKind right); - public override readonly string ToString(); - } - public enum ChatMessageRole { - System = 0, - User = 1, - Assistant = 2, - Tool = 3, - Function = 4 - } - public class ChatResponseFormat : IJsonModel, IPersistableModel { - public static ChatResponseFormat JsonObject { get; } - public static ChatResponseFormat Text { get; } - ChatResponseFormat IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - ChatResponseFormat IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } - public class ChatTokenLogProbabilityInfo : IJsonModel, IPersistableModel { - public float LogProbability { get; } - public string Token { get; } - public IReadOnlyList TopLogProbabilities { get; } - public IReadOnlyList Utf8ByteValues { get; } - ChatTokenLogProbabilityInfo IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - ChatTokenLogProbabilityInfo IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } - public class ChatTokenTopLogProbabilityInfo : IJsonModel, IPersistableModel { - public float LogProbability { get; } - public string Token { get; } - public IReadOnlyList Utf8ByteValues { get; } - ChatTokenTopLogProbabilityInfo IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - ChatTokenTopLogProbabilityInfo IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } - public class ChatTokenUsage : IJsonModel, IPersistableModel { - public int InputTokens { get; } - public int OutputTokens { get; } - public int TotalTokens { get; } - ChatTokenUsage IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - ChatTokenUsage IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } - public class ChatTool : IJsonModel, IPersistableModel { - public string FunctionDescription { get; } - public string FunctionName { get; } - public BinaryData FunctionParameters { get; } - public ChatToolKind Kind { get; } - public static ChatTool CreateFunctionTool(string functionName, string functionDescription = null, BinaryData functionParameters = null); - ChatTool IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - ChatTool IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } - public class ChatToolCall : IJsonModel, IPersistableModel { - public string FunctionArguments { get; } - public string FunctionName { get; } - public string Id { get; set; } - public ChatToolCallKind Kind { get; } - public static ChatToolCall CreateFunctionToolCall(string toolCallId, string functionName, string functionArguments); - ChatToolCall IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - ChatToolCall IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } - public readonly partial struct ChatToolCallKind : IEquatable { - private readonly object _dummy; - private readonly int _dummyPrimitive; - public ChatToolCallKind(string value); - public static ChatToolCallKind Function { get; } - public readonly bool Equals(ChatToolCallKind other); - [EditorBrowsable(EditorBrowsableState.Never)] - public override readonly bool Equals(object obj); - [EditorBrowsable(EditorBrowsableState.Never)] - public override readonly int GetHashCode(); - public static bool operator ==(ChatToolCallKind left, ChatToolCallKind right); - public static implicit operator ChatToolCallKind(string value); - public static bool operator !=(ChatToolCallKind left, ChatToolCallKind right); - public override readonly string ToString(); - } - public class ChatToolChoice : IJsonModel, IPersistableModel { - public ChatToolChoice(ChatTool tool); - public static ChatToolChoice Auto { get; } - public static ChatToolChoice None { get; } - public static ChatToolChoice Required { get; } - ChatToolChoice IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - ChatToolChoice IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } - public readonly partial struct ChatToolKind : IEquatable { - private readonly object _dummy; - private readonly int _dummyPrimitive; - public ChatToolKind(string value); - public static ChatToolKind Function { get; } - public readonly bool Equals(ChatToolKind other); - [EditorBrowsable(EditorBrowsableState.Never)] - public override readonly bool Equals(object obj); - [EditorBrowsable(EditorBrowsableState.Never)] - public override readonly int GetHashCode(); - public static bool operator ==(ChatToolKind left, ChatToolKind right); - public static implicit operator ChatToolKind(string value); - public static bool operator !=(ChatToolKind left, ChatToolKind right); - public override readonly string ToString(); - } - [Obsolete("This field is marked as deprecated.")] - public class FunctionChatMessage : ChatMessage, IJsonModel, IPersistableModel { - public FunctionChatMessage(string functionName, string content = null); - public string FunctionName { get; } - FunctionChatMessage IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - FunctionChatMessage IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - protected override void WriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options); - } - public readonly partial struct ImageChatMessageContentPartDetail : IEquatable { - private readonly object _dummy; - private readonly int _dummyPrimitive; - public ImageChatMessageContentPartDetail(string value); - public static ImageChatMessageContentPartDetail Auto { get; } - public static ImageChatMessageContentPartDetail High { get; } - public static ImageChatMessageContentPartDetail Low { get; } - public readonly bool Equals(ImageChatMessageContentPartDetail other); - [EditorBrowsable(EditorBrowsableState.Never)] - public override readonly bool Equals(object obj); - [EditorBrowsable(EditorBrowsableState.Never)] - public override readonly int GetHashCode(); - public static bool operator ==(ImageChatMessageContentPartDetail left, ImageChatMessageContentPartDetail right); - public static implicit operator ImageChatMessageContentPartDetail(string value); - public static bool operator !=(ImageChatMessageContentPartDetail left, ImageChatMessageContentPartDetail right); - public override readonly string ToString(); - } - public class StreamingChatCompletionUpdate : IJsonModel, IPersistableModel { - public IReadOnlyList ContentTokenLogProbabilities { get; } - public IReadOnlyList ContentUpdate { get; } - public DateTimeOffset CreatedAt { get; } - public ChatFinishReason? FinishReason { get; } - public StreamingChatFunctionCallUpdate FunctionCallUpdate { get; } - public string Id { get; } - public string Model { get; } - public ChatMessageRole? Role { get; } - public string SystemFingerprint { get; } - public IReadOnlyList ToolCallUpdates { get; } - public ChatTokenUsage Usage { get; } - StreamingChatCompletionUpdate IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - StreamingChatCompletionUpdate IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } - public class StreamingChatFunctionCallUpdate : IJsonModel, IPersistableModel { - public string FunctionArgumentsUpdate { get; } - public string FunctionName { get; } - StreamingChatFunctionCallUpdate IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - StreamingChatFunctionCallUpdate IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } - public class StreamingChatToolCallUpdate : IJsonModel, IPersistableModel { - public string FunctionArgumentsUpdate { get; } - public string FunctionName { get; } - public string Id { get; } - public int Index { get; } - public ChatToolCallKind Kind { get; } - StreamingChatToolCallUpdate IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - StreamingChatToolCallUpdate IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } - public class SystemChatMessage : ChatMessage, IJsonModel, IPersistableModel { - public SystemChatMessage(string content); - public string ParticipantName { get; set; } - SystemChatMessage IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - SystemChatMessage IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - protected override void WriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options); - } - public class ToolChatMessage : ChatMessage, IJsonModel, IPersistableModel { - public ToolChatMessage(string toolCallId, string content); - public string ToolCallId { get; } - ToolChatMessage IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - ToolChatMessage IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - protected override void WriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options); - } - public class UserChatMessage : ChatMessage, IJsonModel, IPersistableModel { - public UserChatMessage(params ChatMessageContentPart[] content); - public UserChatMessage(IEnumerable content); - public UserChatMessage(string content); - public string ParticipantName { get; set; } - UserChatMessage IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - UserChatMessage IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - protected override void WriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options); - } -} -namespace OpenAI.Embeddings { - public class Embedding : IJsonModel, IPersistableModel { - public int Index { get; } - public ReadOnlyMemory Vector { get; } - Embedding IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - Embedding IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } - public class EmbeddingClient { - protected EmbeddingClient(); - protected internal EmbeddingClient(ClientPipeline pipeline, string model, Uri endpoint, OpenAIClientOptions options); - public EmbeddingClient(string model, OpenAIClientOptions options = null); - public EmbeddingClient(string model, ApiKeyCredential credential, OpenAIClientOptions options = null); - public virtual ClientPipeline Pipeline { get; } - public virtual ClientResult GenerateEmbedding(string input, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = default); - public virtual Task> GenerateEmbeddingAsync(string input, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = default); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual ClientResult GenerateEmbeddings(BinaryContent content, RequestOptions options = null); - public virtual ClientResult GenerateEmbeddings(IEnumerable> inputs, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = default); - public virtual ClientResult GenerateEmbeddings(IEnumerable inputs, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = default); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual Task GenerateEmbeddingsAsync(BinaryContent content, RequestOptions options = null); - public virtual Task> GenerateEmbeddingsAsync(IEnumerable> inputs, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = default); - public virtual Task> GenerateEmbeddingsAsync(IEnumerable inputs, EmbeddingGenerationOptions options = null, CancellationToken cancellationToken = default); - } - public class EmbeddingCollection : ObjectModel.ReadOnlyCollection, IJsonModel, IPersistableModel { - public string Model { get; } - public EmbeddingTokenUsage Usage { get; } - EmbeddingCollection IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - EmbeddingCollection IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } - public class EmbeddingGenerationOptions : IJsonModel, IPersistableModel { - public int? Dimensions { get; set; } - public string User { get; set; } - EmbeddingGenerationOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - EmbeddingGenerationOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } - public class EmbeddingTokenUsage : IJsonModel, IPersistableModel { - public int InputTokens { get; } - public int TotalTokens { get; } - EmbeddingTokenUsage IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - EmbeddingTokenUsage IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } -} -namespace OpenAI.Files { - public class FileClient { - protected FileClient(); - public FileClient(OpenAIClientOptions options = null); - public FileClient(ApiKeyCredential credential, OpenAIClientOptions options = null); - protected internal FileClient(ClientPipeline pipeline, Uri endpoint, OpenAIClientOptions options); - public virtual ClientPipeline Pipeline { get; } - public virtual ClientResult DeleteFile(OpenAIFileInfo file); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual ClientResult DeleteFile(string fileId, RequestOptions options); - public virtual ClientResult DeleteFile(string fileId, CancellationToken cancellationToken = default); - public virtual Task> DeleteFileAsync(OpenAIFileInfo file); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual Task DeleteFileAsync(string fileId, RequestOptions options); - public virtual Task> DeleteFileAsync(string fileId, CancellationToken cancellationToken = default); - public virtual ClientResult DownloadFile(OpenAIFileInfo file); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual ClientResult DownloadFile(string fileId, RequestOptions options); - public virtual ClientResult DownloadFile(string fileId, CancellationToken cancellationToken = default); - public virtual Task> DownloadFileAsync(OpenAIFileInfo file); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual Task DownloadFileAsync(string fileId, RequestOptions options); - public virtual Task> DownloadFileAsync(string fileId, CancellationToken cancellationToken = default); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual ClientResult GetFile(string fileId, RequestOptions options); - public virtual ClientResult GetFile(string fileId, CancellationToken cancellationToken = default); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual Task GetFileAsync(string fileId, RequestOptions options); - public virtual Task> GetFileAsync(string fileId, CancellationToken cancellationToken = default); - public virtual ClientResult GetFiles(OpenAIFilePurpose? purpose = null, CancellationToken cancellationToken = default); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual ClientResult GetFiles(string purpose, RequestOptions options); - public virtual Task> GetFilesAsync(OpenAIFilePurpose? purpose = null, CancellationToken cancellationToken = default); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual Task GetFilesAsync(string purpose, RequestOptions options); - public virtual ClientResult UploadFile(BinaryData file, string filename, FileUploadPurpose purpose); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual ClientResult UploadFile(BinaryContent content, string contentType, RequestOptions options = null); - public virtual ClientResult UploadFile(Stream file, string filename, FileUploadPurpose purpose, CancellationToken cancellationToken = default); - public virtual ClientResult UploadFile(string filePath, FileUploadPurpose purpose); - public virtual Task> UploadFileAsync(BinaryData file, string filename, FileUploadPurpose purpose); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual Task UploadFileAsync(BinaryContent content, string contentType, RequestOptions options = null); - public virtual Task> UploadFileAsync(Stream file, string filename, FileUploadPurpose purpose, CancellationToken cancellationToken = default); - public virtual Task> UploadFileAsync(string filePath, FileUploadPurpose purpose); - } - public readonly partial struct FileUploadPurpose : IEquatable { - private readonly object _dummy; - private readonly int _dummyPrimitive; - public FileUploadPurpose(string value); - public static FileUploadPurpose Assistants { get; } - public static FileUploadPurpose Batch { get; } - public static FileUploadPurpose FineTune { get; } - public static FileUploadPurpose Vision { get; } - public readonly bool Equals(FileUploadPurpose other); - [EditorBrowsable(EditorBrowsableState.Never)] - public override readonly bool Equals(object obj); - [EditorBrowsable(EditorBrowsableState.Never)] - public override readonly int GetHashCode(); - public static bool operator ==(FileUploadPurpose left, FileUploadPurpose right); - public static implicit operator FileUploadPurpose(string value); - public static bool operator !=(FileUploadPurpose left, FileUploadPurpose right); - public override readonly string ToString(); - } - public class OpenAIFileInfo : IJsonModel, IPersistableModel { - public DateTimeOffset CreatedAt { get; } - public string Filename { get; } - public string Id { get; } - public OpenAIFilePurpose Purpose { get; } - public long? SizeInBytes { get; } - public OpenAIFileStatus Status { get; } - public string StatusDetails { get; } - OpenAIFileInfo IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - OpenAIFileInfo IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } - public class OpenAIFileInfoCollection : ObjectModel.ReadOnlyCollection, IJsonModel, IPersistableModel { - OpenAIFileInfoCollection IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - OpenAIFileInfoCollection IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } - public readonly partial struct OpenAIFilePurpose : IEquatable { - private readonly object _dummy; - private readonly int _dummyPrimitive; - public OpenAIFilePurpose(string value); - public static OpenAIFilePurpose Assistants { get; } - public static OpenAIFilePurpose AssistantsOutput { get; } - public static OpenAIFilePurpose Batch { get; } - public static OpenAIFilePurpose BatchOutput { get; } - public static OpenAIFilePurpose FineTune { get; } - public static OpenAIFilePurpose FineTuneResults { get; } - public static OpenAIFilePurpose Vision { get; } - public readonly bool Equals(OpenAIFilePurpose other); - [EditorBrowsable(EditorBrowsableState.Never)] - public override readonly bool Equals(object obj); - [EditorBrowsable(EditorBrowsableState.Never)] - public override readonly int GetHashCode(); - public static bool operator ==(OpenAIFilePurpose left, OpenAIFilePurpose right); - public static implicit operator OpenAIFilePurpose(string value); - public static bool operator !=(OpenAIFilePurpose left, OpenAIFilePurpose right); - public override readonly string ToString(); - } - public readonly partial struct OpenAIFileStatus : IEquatable { - private readonly object _dummy; - private readonly int _dummyPrimitive; - public OpenAIFileStatus(string value); - public static OpenAIFileStatus Error { get; } - public static OpenAIFileStatus Processed { get; } - public static OpenAIFileStatus Uploaded { get; } - public readonly bool Equals(OpenAIFileStatus other); - [EditorBrowsable(EditorBrowsableState.Never)] - public override readonly bool Equals(object obj); - [EditorBrowsable(EditorBrowsableState.Never)] - public override readonly int GetHashCode(); - public static bool operator ==(OpenAIFileStatus left, OpenAIFileStatus right); - public static implicit operator OpenAIFileStatus(string value); - public static bool operator !=(OpenAIFileStatus left, OpenAIFileStatus right); - public override readonly string ToString(); - } -} -namespace OpenAI.FineTuning { - public class FineTuningClient { - protected FineTuningClient(); - public FineTuningClient(OpenAIClientOptions options = null); - public FineTuningClient(ApiKeyCredential credential, OpenAIClientOptions options = null); - protected internal FineTuningClient(ClientPipeline pipeline, Uri endpoint, OpenAIClientOptions options); - public virtual ClientPipeline Pipeline { get; } - public virtual ClientResult CancelJob(string jobId, RequestOptions options); - public virtual Task CancelJobAsync(string jobId, RequestOptions options); - public virtual ClientResult CreateJob(BinaryContent content, RequestOptions options = null); - public virtual Task CreateJobAsync(BinaryContent content, RequestOptions options = null); - public virtual ClientResult GetJob(string jobId, RequestOptions options); - public virtual Task GetJobAsync(string jobId, RequestOptions options); - public virtual ClientResult GetJobCheckpoints(string fineTuningJobId, string after, int? limit, RequestOptions options); - public virtual Task GetJobCheckpointsAsync(string fineTuningJobId, string after, int? limit, RequestOptions options); - public virtual ClientResult GetJobEvents(string jobId, string after, int? limit, RequestOptions options); - public virtual Task GetJobEventsAsync(string jobId, string after, int? limit, RequestOptions options); - public virtual ClientResult GetJobs(string after, int? limit, RequestOptions options); - public virtual Task GetJobsAsync(string after, int? limit, RequestOptions options); - } -} -namespace OpenAI.Images { - public class GeneratedImage : IJsonModel, IPersistableModel { - public BinaryData ImageBytes { get; } - public Uri ImageUri { get; } - public string RevisedPrompt { get; } - GeneratedImage IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - GeneratedImage IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } - public class GeneratedImageCollection : ObjectModel.ReadOnlyCollection, IJsonModel, IPersistableModel { - public DateTimeOffset Created { get; } - public DateTimeOffset CreatedAt { get; } - GeneratedImageCollection IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - GeneratedImageCollection IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } - public enum GeneratedImageFormat { - Bytes = 0, - Uri = 1 - } - public enum GeneratedImageQuality { - High = 0, - Standard = 1 - } - public readonly partial struct GeneratedImageSize : IEquatable { - private readonly object _dummy; - private readonly int _dummyPrimitive; - public static readonly GeneratedImageSize W1024xH1024; - public static readonly GeneratedImageSize W1024xH1792; - public static readonly GeneratedImageSize W1792xH1024; - public static readonly GeneratedImageSize W256xH256; - public static readonly GeneratedImageSize W512xH512; - public GeneratedImageSize(int width, int height); - public readonly bool Equals(GeneratedImageSize other); - [EditorBrowsable(EditorBrowsableState.Never)] - public override readonly bool Equals(object obj); - [EditorBrowsable(EditorBrowsableState.Never)] - public override readonly int GetHashCode(); - public static bool operator ==(GeneratedImageSize left, GeneratedImageSize right); - public static bool operator !=(GeneratedImageSize left, GeneratedImageSize right); - public override readonly string ToString(); - } - public enum GeneratedImageStyle { - Vivid = 0, - Natural = 1 - } - public class ImageClient { - protected ImageClient(); - protected internal ImageClient(ClientPipeline pipeline, string model, Uri endpoint, OpenAIClientOptions options); - public ImageClient(string model, OpenAIClientOptions options = null); - public ImageClient(string model, ApiKeyCredential credential, OpenAIClientOptions options = null); - public virtual ClientPipeline Pipeline { get; } - public virtual ClientResult GenerateImage(string prompt, ImageGenerationOptions options = null, CancellationToken cancellationToken = default); - public virtual Task> GenerateImageAsync(string prompt, ImageGenerationOptions options = null, CancellationToken cancellationToken = default); - public virtual ClientResult GenerateImageEdit(Stream image, string imageFilename, string prompt, ImageEditOptions options = null, CancellationToken cancellationToken = default); - public virtual ClientResult GenerateImageEdit(Stream image, string imageFilename, string prompt, Stream mask, string maskFilename, ImageEditOptions options = null, CancellationToken cancellationToken = default); - public virtual ClientResult GenerateImageEdit(string imageFilePath, string prompt, ImageEditOptions options = null); - public virtual ClientResult GenerateImageEdit(string imageFilePath, string prompt, string maskFilePath, ImageEditOptions options = null); - public virtual Task> GenerateImageEditAsync(Stream image, string imageFilename, string prompt, ImageEditOptions options = null, CancellationToken cancellationToken = default); - public virtual Task> GenerateImageEditAsync(Stream image, string imageFilename, string prompt, Stream mask, string maskFilename, ImageEditOptions options = null, CancellationToken cancellationToken = default); - public virtual Task> GenerateImageEditAsync(string imageFilePath, string prompt, ImageEditOptions options = null); - public virtual Task> GenerateImageEditAsync(string imageFilePath, string prompt, string maskFilePath, ImageEditOptions options = null); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual ClientResult GenerateImageEdits(BinaryContent content, string contentType, RequestOptions options = null); - public virtual ClientResult GenerateImageEdits(Stream image, string imageFilename, string prompt, int imageCount, ImageEditOptions options = null, CancellationToken cancellationToken = default); - public virtual ClientResult GenerateImageEdits(Stream image, string imageFilename, string prompt, Stream mask, string maskFilename, int imageCount, ImageEditOptions options = null, CancellationToken cancellationToken = default); - public virtual ClientResult GenerateImageEdits(string imageFilePath, string prompt, int imageCount, ImageEditOptions options = null); - public virtual ClientResult GenerateImageEdits(string imageFilePath, string prompt, string maskFilePath, int imageCount, ImageEditOptions options = null); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual Task GenerateImageEditsAsync(BinaryContent content, string contentType, RequestOptions options = null); - public virtual Task> GenerateImageEditsAsync(Stream image, string imageFilename, string prompt, int imageCount, ImageEditOptions options = null, CancellationToken cancellationToken = default); - public virtual Task> GenerateImageEditsAsync(Stream image, string imageFilename, string prompt, Stream mask, string maskFilename, int imageCount, ImageEditOptions options = null, CancellationToken cancellationToken = default); - public virtual Task> GenerateImageEditsAsync(string imageFilePath, string prompt, int imageCount, ImageEditOptions options = null); - public virtual Task> GenerateImageEditsAsync(string imageFilePath, string prompt, string maskFilePath, int imageCount, ImageEditOptions options = null); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual ClientResult GenerateImages(BinaryContent content, RequestOptions options = null); - public virtual ClientResult GenerateImages(string prompt, int imageCount, ImageGenerationOptions options = null, CancellationToken cancellationToken = default); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual Task GenerateImagesAsync(BinaryContent content, RequestOptions options = null); - public virtual Task> GenerateImagesAsync(string prompt, int imageCount, ImageGenerationOptions options = null, CancellationToken cancellationToken = default); - public virtual ClientResult GenerateImageVariation(Stream image, string imageFilename, ImageVariationOptions options = null, CancellationToken cancellationToken = default); - public virtual ClientResult GenerateImageVariation(string imageFilePath, ImageVariationOptions options = null); - public virtual Task> GenerateImageVariationAsync(Stream image, string imageFilename, ImageVariationOptions options = null, CancellationToken cancellationToken = default); - public virtual Task> GenerateImageVariationAsync(string imageFilePath, ImageVariationOptions options = null); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual ClientResult GenerateImageVariations(BinaryContent content, string contentType, RequestOptions options = null); - public virtual ClientResult GenerateImageVariations(Stream image, string imageFilename, int imageCount, ImageVariationOptions options = null, CancellationToken cancellationToken = default); - public virtual ClientResult GenerateImageVariations(string imageFilePath, int imageCount, ImageVariationOptions options = null); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual Task GenerateImageVariationsAsync(BinaryContent content, string contentType, RequestOptions options = null); - public virtual Task> GenerateImageVariationsAsync(Stream image, string imageFilename, int imageCount, ImageVariationOptions options = null, CancellationToken cancellationToken = default); - public virtual Task> GenerateImageVariationsAsync(string imageFilePath, int imageCount, ImageVariationOptions options = null); - } - public class ImageEditOptions : IJsonModel, IPersistableModel { - public GeneratedImageFormat? ResponseFormat { get; set; } - public GeneratedImageSize? Size { get; set; } - public string User { get; set; } - ImageEditOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - ImageEditOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } - public class ImageGenerationOptions : IJsonModel, IPersistableModel { - public GeneratedImageQuality? Quality { get; set; } - public GeneratedImageFormat? ResponseFormat { get; set; } - public GeneratedImageSize? Size { get; set; } - public GeneratedImageStyle? Style { get; set; } - public string User { get; set; } - ImageGenerationOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - ImageGenerationOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } - public class ImageVariationOptions : IJsonModel, IPersistableModel { - public GeneratedImageFormat? ResponseFormat { get; set; } - public GeneratedImageSize? Size { get; set; } - public string User { get; set; } - ImageVariationOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - ImageVariationOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } -} -namespace OpenAI.Models { - public class ModelClient { - protected ModelClient(); - public ModelClient(OpenAIClientOptions options = null); - public ModelClient(ApiKeyCredential credential, OpenAIClientOptions options = null); - protected internal ModelClient(ClientPipeline pipeline, Uri endpoint, OpenAIClientOptions options); - public virtual ClientPipeline Pipeline { get; } - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual ClientResult DeleteModel(string model, RequestOptions options); - public virtual ClientResult DeleteModel(string model); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual Task DeleteModelAsync(string model, RequestOptions options); - public virtual Task> DeleteModelAsync(string model); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual ClientResult GetModel(string model, RequestOptions options); - public virtual ClientResult GetModel(string model); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual Task GetModelAsync(string model, RequestOptions options); - public virtual Task> GetModelAsync(string model); - public virtual ClientResult GetModels(); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual ClientResult GetModels(RequestOptions options); - public virtual Task> GetModelsAsync(); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual Task GetModelsAsync(RequestOptions options); - } - public class OpenAIModelInfo : IJsonModel, IPersistableModel { - public DateTimeOffset CreatedAt { get; } - public string Id { get; } - public string OwnedBy { get; } - OpenAIModelInfo IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - OpenAIModelInfo IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } - public class OpenAIModelInfoCollection : ObjectModel.ReadOnlyCollection, IJsonModel, IPersistableModel { - OpenAIModelInfoCollection IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - OpenAIModelInfoCollection IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } -} -namespace OpenAI.Moderations { - public class ModerationCategories : IJsonModel, IPersistableModel { - public bool Harassment { get; } - public bool HarassmentThreatening { get; } - public bool Hate { get; } - public bool HateThreatening { get; } - public bool SelfHarm { get; } - public bool SelfHarmInstructions { get; } - public bool SelfHarmIntent { get; } - public bool Sexual { get; } - public bool SexualMinors { get; } - public bool Violence { get; } - public bool ViolenceGraphic { get; } - ModerationCategories IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - ModerationCategories IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } - public class ModerationCategoryScores : IJsonModel, IPersistableModel { - public float Harassment { get; } - public float HarassmentThreatening { get; } - public float Hate { get; } - public float HateThreatening { get; } - public float SelfHarm { get; } - public float SelfHarmInstructions { get; } - public float SelfHarmIntent { get; } - public float Sexual { get; } - public float SexualMinors { get; } - public float Violence { get; } - public float ViolenceGraphic { get; } - ModerationCategoryScores IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - ModerationCategoryScores IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } - public class ModerationClient { - protected ModerationClient(); - protected internal ModerationClient(ClientPipeline pipeline, string model, Uri endpoint, OpenAIClientOptions options); - public ModerationClient(string model, OpenAIClientOptions options = null); - public ModerationClient(string model, ApiKeyCredential credential, OpenAIClientOptions options = null); - public virtual ClientPipeline Pipeline { get; } - public virtual ClientResult ClassifyTextInput(string input, CancellationToken cancellationToken = default); - public virtual Task> ClassifyTextInputAsync(string input, CancellationToken cancellationToken = default); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual ClientResult ClassifyTextInputs(BinaryContent content, RequestOptions options = null); - public virtual ClientResult ClassifyTextInputs(IEnumerable inputs, CancellationToken cancellationToken = default); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual Task ClassifyTextInputsAsync(BinaryContent content, RequestOptions options = null); - public virtual Task> ClassifyTextInputsAsync(IEnumerable inputs, CancellationToken cancellationToken = default); - } - public class ModerationCollection : ObjectModel.ReadOnlyCollection, IJsonModel, IPersistableModel { - public string Id { get; } - public string Model { get; } - ModerationCollection IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - ModerationCollection IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } - public class ModerationResult : IJsonModel, IPersistableModel { - public ModerationCategories Categories { get; } - public ModerationCategoryScores CategoryScores { get; } - public bool Flagged { get; } - ModerationResult IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - ModerationResult IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } -} -namespace OpenAI.VectorStores { - public abstract class FileChunkingStrategy : IJsonModel, IPersistableModel { - public static FileChunkingStrategy Auto { get; } - public static FileChunkingStrategy Unknown { get; } - public static FileChunkingStrategy CreateStaticStrategy(int maxTokensPerChunk, int overlappingTokenCount); - FileChunkingStrategy IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - FileChunkingStrategy IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } - public class StaticFileChunkingStrategy : FileChunkingStrategy, IJsonModel, IPersistableModel { - public StaticFileChunkingStrategy(int maxTokensPerChunk, int overlappingTokenCount); - public int MaxTokensPerChunk { get; } - public int OverlappingTokenCount { get; } - StaticFileChunkingStrategy IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - StaticFileChunkingStrategy IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } - public class VectorStore : IJsonModel, IPersistableModel { - public DateTimeOffset CreatedAt { get; } - public VectorStoreExpirationPolicy ExpirationPolicy { get; } - public DateTimeOffset? ExpiresAt { get; } - public VectorStoreFileCounts FileCounts { get; } - public string Id { get; } - public DateTimeOffset? LastActiveAt { get; } - public IReadOnlyDictionary Metadata { get; } - public string Name { get; } - public VectorStoreStatus Status { get; } - public int UsageBytes { get; } - VectorStore IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - VectorStore IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } - public class VectorStoreBatchFileJob : IJsonModel, IPersistableModel { - public string BatchId { get; } - public DateTimeOffset CreatedAt { get; } - public VectorStoreFileCounts FileCounts { get; } - public VectorStoreBatchFileJobStatus Status { get; } - public string VectorStoreId { get; } - VectorStoreBatchFileJob IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - VectorStoreBatchFileJob IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } - public readonly partial struct VectorStoreBatchFileJobStatus : IEquatable { - private readonly object _dummy; - private readonly int _dummyPrimitive; - public VectorStoreBatchFileJobStatus(string value); - public static VectorStoreBatchFileJobStatus Cancelled { get; } - public static VectorStoreBatchFileJobStatus Completed { get; } - public static VectorStoreBatchFileJobStatus Failed { get; } - public static VectorStoreBatchFileJobStatus InProgress { get; } - public readonly bool Equals(VectorStoreBatchFileJobStatus other); - [EditorBrowsable(EditorBrowsableState.Never)] - public override readonly bool Equals(object obj); - [EditorBrowsable(EditorBrowsableState.Never)] - public override readonly int GetHashCode(); - public static bool operator ==(VectorStoreBatchFileJobStatus left, VectorStoreBatchFileJobStatus right); - public static implicit operator VectorStoreBatchFileJobStatus(string value); - public static bool operator !=(VectorStoreBatchFileJobStatus left, VectorStoreBatchFileJobStatus right); - public override readonly string ToString(); - } - public class VectorStoreClient { - protected VectorStoreClient(); - public VectorStoreClient(OpenAIClientOptions options = null); - public VectorStoreClient(ApiKeyCredential credential, OpenAIClientOptions options = null); - protected internal VectorStoreClient(ClientPipeline pipeline, Uri endpoint, OpenAIClientOptions options); - public virtual ClientPipeline Pipeline { get; } - public virtual ClientResult AddFileToVectorStore(VectorStore vectorStore, OpenAIFileInfo file); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual ClientResult AddFileToVectorStore(string vectorStoreId, BinaryContent content, RequestOptions options = null); - public virtual ClientResult AddFileToVectorStore(string vectorStoreId, string fileId, CancellationToken cancellationToken = default); - public virtual Task> AddFileToVectorStoreAsync(VectorStore vectorStore, OpenAIFileInfo file); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual Task AddFileToVectorStoreAsync(string vectorStoreId, BinaryContent content, RequestOptions options = null); - public virtual Task> AddFileToVectorStoreAsync(string vectorStoreId, string fileId, CancellationToken cancellationToken = default); - public virtual ClientResult CancelBatchFileJob(VectorStoreBatchFileJob batchJob); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual ClientResult CancelBatchFileJob(string vectorStoreId, string batchId, RequestOptions options); - public virtual ClientResult CancelBatchFileJob(string vectorStoreId, string batchJobId, CancellationToken cancellationToken = default); - public virtual Task> CancelBatchFileJobAsync(VectorStoreBatchFileJob batchJob); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual Task CancelBatchFileJobAsync(string vectorStoreId, string batchId, RequestOptions options); - public virtual Task> CancelBatchFileJobAsync(string vectorStoreId, string batchJobId, CancellationToken cancellationToken = default); - public virtual ClientResult CreateBatchFileJob(VectorStore vectorStore, IEnumerable files); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual ClientResult CreateBatchFileJob(string vectorStoreId, BinaryContent content, RequestOptions options = null); - public virtual ClientResult CreateBatchFileJob(string vectorStoreId, IEnumerable fileIds, CancellationToken cancellationToken = default); - public virtual Task> CreateBatchFileJobAsync(VectorStore vectorStore, IEnumerable files); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual Task CreateBatchFileJobAsync(string vectorStoreId, BinaryContent content, RequestOptions options = null); - public virtual Task> CreateBatchFileJobAsync(string vectorStoreId, IEnumerable fileIds, CancellationToken cancellationToken = default); - public virtual ClientResult CreateVectorStore(VectorStoreCreationOptions vectorStore = null, CancellationToken cancellationToken = default); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual ClientResult CreateVectorStore(BinaryContent content, RequestOptions options = null); - public virtual Task> CreateVectorStoreAsync(VectorStoreCreationOptions vectorStore = null, CancellationToken cancellationToken = default); - public virtual Task CreateVectorStoreAsync(BinaryContent content, RequestOptions options = null); - public virtual ClientResult DeleteVectorStore(VectorStore vectorStore); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual ClientResult DeleteVectorStore(string vectorStoreId, RequestOptions options); - public virtual ClientResult DeleteVectorStore(string vectorStoreId, CancellationToken cancellationToken = default); - public virtual Task> DeleteVectorStoreAsync(VectorStore vectorStore); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual Task DeleteVectorStoreAsync(string vectorStoreId, RequestOptions options); - public virtual Task> DeleteVectorStoreAsync(string vectorStoreId, CancellationToken cancellationToken = default); - public virtual ClientResult GetBatchFileJob(VectorStoreBatchFileJob batchJob); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual ClientResult GetBatchFileJob(string vectorStoreId, string batchId, RequestOptions options); - public virtual ClientResult GetBatchFileJob(string vectorStoreId, string batchJobId, CancellationToken cancellationToken = default); - public virtual Task> GetBatchFileJobAsync(VectorStoreBatchFileJob batchJob); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual Task GetBatchFileJobAsync(string vectorStoreId, string batchId, RequestOptions options); - public virtual Task> GetBatchFileJobAsync(string vectorStoreId, string batchJobId, CancellationToken cancellationToken = default); - public virtual ClientResult GetFileAssociation(VectorStore vectorStore, OpenAIFileInfo file); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual ClientResult GetFileAssociation(string vectorStoreId, string fileId, RequestOptions options); - public virtual ClientResult GetFileAssociation(string vectorStoreId, string fileId, CancellationToken cancellationToken = default); - public virtual Task> GetFileAssociationAsync(VectorStore vectorStore, OpenAIFileInfo file); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual Task GetFileAssociationAsync(string vectorStoreId, string fileId, RequestOptions options); - public virtual Task> GetFileAssociationAsync(string vectorStoreId, string fileId, CancellationToken cancellationToken = default); - public virtual PageCollection GetFileAssociations(VectorStore vectorStore, VectorStoreFileAssociationCollectionOptions options = null); - public virtual PageCollection GetFileAssociations(VectorStoreBatchFileJob batchJob, VectorStoreFileAssociationCollectionOptions options = null); - public virtual PageCollection GetFileAssociations(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); - public virtual PageCollection GetFileAssociations(string vectorStoreId, VectorStoreFileAssociationCollectionOptions options = null, CancellationToken cancellationToken = default); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual IEnumerable GetFileAssociations(string vectorStoreId, int? limit, string order, string after, string before, string filter, RequestOptions options); - public virtual PageCollection GetFileAssociations(string vectorStoreId, string batchJobId, VectorStoreFileAssociationCollectionOptions options = null, CancellationToken cancellationToken = default); - public virtual PageCollection GetFileAssociations(string vectorStoreId, string batchJobId, ContinuationToken firstPageToken, CancellationToken cancellationToken = default); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual IEnumerable GetFileAssociations(string vectorStoreId, string batchId, int? limit, string order, string after, string before, string filter, RequestOptions options); - public virtual AsyncPageCollection GetFileAssociationsAsync(VectorStore vectorStore, VectorStoreFileAssociationCollectionOptions options = null); - public virtual AsyncPageCollection GetFileAssociationsAsync(VectorStoreBatchFileJob batchJob, VectorStoreFileAssociationCollectionOptions options = null); - public virtual AsyncPageCollection GetFileAssociationsAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); - public virtual AsyncPageCollection GetFileAssociationsAsync(string vectorStoreId, VectorStoreFileAssociationCollectionOptions options = null, CancellationToken cancellationToken = default); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual IAsyncEnumerable GetFileAssociationsAsync(string vectorStoreId, int? limit, string order, string after, string before, string filter, RequestOptions options); - public virtual AsyncPageCollection GetFileAssociationsAsync(string vectorStoreId, string batchJobId, VectorStoreFileAssociationCollectionOptions options = null, CancellationToken cancellationToken = default); - public virtual AsyncPageCollection GetFileAssociationsAsync(string vectorStoreId, string batchJobId, ContinuationToken firstPageToken, CancellationToken cancellationToken = default); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual IAsyncEnumerable GetFileAssociationsAsync(string vectorStoreId, string batchId, int? limit, string order, string after, string before, string filter, RequestOptions options); - public virtual ClientResult GetVectorStore(VectorStore vectorStore); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual ClientResult GetVectorStore(string vectorStoreId, RequestOptions options); - public virtual ClientResult GetVectorStore(string vectorStoreId, CancellationToken cancellationToken = default); - public virtual Task> GetVectorStoreAsync(VectorStore vectorStore); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual Task GetVectorStoreAsync(string vectorStoreId, RequestOptions options); - public virtual Task> GetVectorStoreAsync(string vectorStoreId, CancellationToken cancellationToken = default); - public virtual PageCollection GetVectorStores(VectorStoreCollectionOptions options = null, CancellationToken cancellationToken = default); - public virtual PageCollection GetVectorStores(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual IEnumerable GetVectorStores(int? limit, string order, string after, string before, RequestOptions options); - public virtual AsyncPageCollection GetVectorStoresAsync(VectorStoreCollectionOptions options = null, CancellationToken cancellationToken = default); - public virtual AsyncPageCollection GetVectorStoresAsync(ContinuationToken firstPageToken, CancellationToken cancellationToken = default); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual IAsyncEnumerable GetVectorStoresAsync(int? limit, string order, string after, string before, RequestOptions options); - public virtual ClientResult ModifyVectorStore(VectorStore vectorStore, VectorStoreModificationOptions options); - public virtual ClientResult ModifyVectorStore(string vectorStoreId, VectorStoreModificationOptions vectorStore, CancellationToken cancellationToken = default); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual ClientResult ModifyVectorStore(string vectorStoreId, BinaryContent content, RequestOptions options = null); - public virtual Task> ModifyVectorStoreAsync(VectorStore vectorStore, VectorStoreModificationOptions options); - public virtual Task> ModifyVectorStoreAsync(string vectorStoreId, VectorStoreModificationOptions vectorStore, CancellationToken cancellationToken = default); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual Task ModifyVectorStoreAsync(string vectorStoreId, BinaryContent content, RequestOptions options = null); - public virtual ClientResult RemoveFileFromStore(VectorStore vectorStore, OpenAIFileInfo file); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual ClientResult RemoveFileFromStore(string vectorStoreId, string fileId, RequestOptions options); - public virtual ClientResult RemoveFileFromStore(string vectorStoreId, string fileId, CancellationToken cancellationToken = default); - public virtual Task> RemoveFileFromStoreAsync(VectorStore vectorStore, OpenAIFileInfo file); - [EditorBrowsable(EditorBrowsableState.Never)] - public virtual Task RemoveFileFromStoreAsync(string vectorStoreId, string fileId, RequestOptions options); - public virtual Task> RemoveFileFromStoreAsync(string vectorStoreId, string fileId, CancellationToken cancellationToken = default); - } - public class VectorStoreCollectionOptions { - public string AfterId { get; set; } - public string BeforeId { get; set; } - public ListOrder? Order { get; set; } - public int? PageSize { get; set; } - } - public class VectorStoreCreationOptions : IJsonModel, IPersistableModel { - public FileChunkingStrategy ChunkingStrategy { get; set; } - public VectorStoreExpirationPolicy ExpirationPolicy { get; set; } - public IList FileIds { get; set; } - public IDictionary Metadata { get; set; } - public string Name { get; set; } - VectorStoreCreationOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - VectorStoreCreationOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } - public enum VectorStoreExpirationAnchor { - Unknown = 0, - LastActiveAt = 1 - } - public class VectorStoreExpirationPolicy : IJsonModel, IPersistableModel { - public VectorStoreExpirationPolicy(); - public VectorStoreExpirationPolicy(VectorStoreExpirationAnchor anchor, int days); - public required VectorStoreExpirationAnchor Anchor { get; set; } - public required int Days { get; set; } - VectorStoreExpirationPolicy IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - VectorStoreExpirationPolicy IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } - public class VectorStoreFileAssociation : IJsonModel, IPersistableModel { - public FileChunkingStrategy ChunkingStrategy { get; } - public DateTimeOffset CreatedAt { get; } - public string FileId { get; } - public VectorStoreFileAssociationError LastError { get; } - public int Size { get; } - public VectorStoreFileAssociationStatus Status { get; } - public string VectorStoreId { get; } - VectorStoreFileAssociation IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - VectorStoreFileAssociation IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } - public class VectorStoreFileAssociationCollectionOptions { - public string AfterId { get; set; } - public string BeforeId { get; set; } - public VectorStoreFileStatusFilter? Filter { get; set; } - public ListOrder? Order { get; set; } - public int? PageSize { get; set; } - } - public class VectorStoreFileAssociationError : IJsonModel, IPersistableModel { - public VectorStoreFileAssociationErrorCode Code { get; } - public string Message { get; } - VectorStoreFileAssociationError IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - VectorStoreFileAssociationError IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } - public readonly partial struct VectorStoreFileAssociationErrorCode : IEquatable { - private readonly object _dummy; - private readonly int _dummyPrimitive; - public VectorStoreFileAssociationErrorCode(string value); - public static VectorStoreFileAssociationErrorCode FileNotFound { get; } - public static VectorStoreFileAssociationErrorCode InternalError { get; } - public static VectorStoreFileAssociationErrorCode ParsingError { get; } - public static VectorStoreFileAssociationErrorCode UnhandledMimeType { get; } - public readonly bool Equals(VectorStoreFileAssociationErrorCode other); - [EditorBrowsable(EditorBrowsableState.Never)] - public override readonly bool Equals(object obj); - [EditorBrowsable(EditorBrowsableState.Never)] - public override readonly int GetHashCode(); - public static bool operator ==(VectorStoreFileAssociationErrorCode left, VectorStoreFileAssociationErrorCode right); - public static implicit operator VectorStoreFileAssociationErrorCode(string value); - public static bool operator !=(VectorStoreFileAssociationErrorCode left, VectorStoreFileAssociationErrorCode right); - public override readonly string ToString(); - } - public enum VectorStoreFileAssociationStatus { - Unknown = 0, - InProgress = 1, - Completed = 2, - Cancelled = 3, - Failed = 4 - } - public class VectorStoreFileCounts : IJsonModel, IPersistableModel { - public int Cancelled { get; } - public int Completed { get; } - public int Failed { get; } - public int InProgress { get; } - public int Total { get; } - VectorStoreFileCounts IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - VectorStoreFileCounts IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } - public readonly partial struct VectorStoreFileStatusFilter : IEquatable { - private readonly object _dummy; - private readonly int _dummyPrimitive; - public VectorStoreFileStatusFilter(string value); - public static VectorStoreFileStatusFilter Cancelled { get; } - public static VectorStoreFileStatusFilter Completed { get; } - public static VectorStoreFileStatusFilter Failed { get; } - public static VectorStoreFileStatusFilter InProgress { get; } - public readonly bool Equals(VectorStoreFileStatusFilter other); - [EditorBrowsable(EditorBrowsableState.Never)] - public override readonly bool Equals(object obj); - [EditorBrowsable(EditorBrowsableState.Never)] - public override readonly int GetHashCode(); - public static bool operator ==(VectorStoreFileStatusFilter left, VectorStoreFileStatusFilter right); - public static implicit operator VectorStoreFileStatusFilter(string value); - public static bool operator !=(VectorStoreFileStatusFilter left, VectorStoreFileStatusFilter right); - public override readonly string ToString(); - } - public class VectorStoreModificationOptions : IJsonModel, IPersistableModel { - public VectorStoreExpirationPolicy ExpirationPolicy { get; set; } - public IDictionary Metadata { get; set; } - public string Name { get; set; } - VectorStoreModificationOptions IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options); - void IJsonModel.Write(Utf8JsonWriter writer, ModelReaderWriterOptions options); - VectorStoreModificationOptions IPersistableModel.Create(BinaryData data, ModelReaderWriterOptions options); - string IPersistableModel.GetFormatFromOptions(ModelReaderWriterOptions options); - BinaryData IPersistableModel.Write(ModelReaderWriterOptions options); - } - public enum VectorStoreStatus { - Unknown = 0, - InProgress = 1, - Completed = 2, - Expired = 3 - } -} -``` \ No newline at end of file diff --git a/.scripts/Export-API.ps1 b/.scripts/Export-API.ps1 index 6e1551639..02e5d2eee 100644 --- a/.scripts/Export-API.ps1 +++ b/.scripts/Export-API.ps1 @@ -58,13 +58,9 @@ $content = $content -creplace ".*Diagnostics.DebuggerStepThrough.*\n", "" # Remove internal APIs. $content = $content -creplace " * internal.*`n", "" -# Other cosmestic simplifications. +# Other cosmetic simplifications. $content = $content -creplace "partial class", "class" $content = $content -creplace " { throw null; }", ";" $content = $content -creplace " { }", ";" -Set-Content -Path $outputPath -Value $content -NoNewline - -# For PR diff only -$markdownContent = "``````csharp`n$($content)`n``````" -Set-Content -Path "$($apiFolder)\api.md" -Value $markdownContent -NoNewline \ No newline at end of file +Set-Content -Path $outputPath -Value $content -NoNewline \ No newline at end of file