Skip to content

Commit d86b86e

Browse files
committed
merge
2 parents 41953d6 + 8d8b4af commit d86b86e

File tree

76 files changed

+17990
-12046
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

76 files changed

+17990
-12046
lines changed

api/OpenAI.net8.0.cs

Lines changed: 92 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,8 @@ public class OpenAIClient {
2020
public virtual ChatClient GetChatClient(string model);
2121
[Experimental("OPENAI001")]
2222
public virtual ContainerClient GetContainerClient();
23+
[Experimental("OPENAI001")]
24+
public virtual ConversationClient GetConversationClient();
2325
public virtual EmbeddingClient GetEmbeddingClient(string model);
2426
[Experimental("OPENAI001")]
2527
public virtual EvaluationClient GetEvaluationClient();
@@ -1403,10 +1405,46 @@ public class BatchClient {
14031405
public virtual Task<CreateBatchOperation> CreateBatchAsync(BinaryContent content, bool waitUntilCompleted, RequestOptions options = null);
14041406
public virtual ClientResult GetBatch(string batchId, RequestOptions options);
14051407
public virtual Task<ClientResult> GetBatchAsync(string batchId, RequestOptions options);
1408+
public virtual CollectionResult<BatchJob> GetBatches(BatchCollectionOptions options = null, CancellationToken cancellationToken = default);
14061409
public virtual CollectionResult GetBatches(string after, int? limit, RequestOptions options);
1410+
public virtual AsyncCollectionResult<BatchJob> GetBatchesAsync(BatchCollectionOptions options = null, CancellationToken cancellationToken = default);
14071411
public virtual AsyncCollectionResult GetBatchesAsync(string after, int? limit, RequestOptions options);
14081412
}
14091413
[Experimental("OPENAI001")]
1414+
public class BatchCollectionOptions : IJsonModel<BatchCollectionOptions>, IPersistableModel<BatchCollectionOptions> {
1415+
public string AfterId { get; set; }
1416+
public int? PageSizeLimit { get; set; }
1417+
protected virtual BatchCollectionOptions JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
1418+
protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
1419+
protected virtual BatchCollectionOptions PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
1420+
protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
1421+
}
1422+
[Experimental("OPENAI001")]
1423+
public class BatchJob : IJsonModel<BatchJob>, IPersistableModel<BatchJob> {
1424+
public DateTimeOffset? CancelledAt { get; }
1425+
public DateTimeOffset? CancellingAt { get; }
1426+
public DateTimeOffset? CompletedAt { get; }
1427+
public string CompletionWindow { get; }
1428+
public DateTimeOffset CreatedAt { get; }
1429+
public string Endpoint { get; }
1430+
public string ErrorFileId { get; }
1431+
public DateTimeOffset? ExpiredAt { get; }
1432+
public DateTimeOffset? ExpiresAt { get; }
1433+
public DateTimeOffset? FailedAt { get; }
1434+
public DateTimeOffset? FinalizingAt { get; }
1435+
public string Id { get; }
1436+
public DateTimeOffset? InProgressAt { get; }
1437+
public string InputFileId { get; }
1438+
public IDictionary<string, string> Metadata { get; }
1439+
public string Object { get; }
1440+
public string OutputFileId { get; }
1441+
protected virtual BatchJob JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
1442+
protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
1443+
public static explicit operator BatchJob(ClientResult result);
1444+
protected virtual BatchJob PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
1445+
protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
1446+
}
1447+
[Experimental("OPENAI001")]
14101448
public class CreateBatchOperation : OperationResult {
14111449
public string BatchId { get; }
14121450
public override ContinuationToken? RehydrationToken { get; protected set; }
@@ -2861,6 +2899,59 @@ public class DeleteContainerResponse : IJsonModel<DeleteContainerResponse>, IPer
28612899
protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
28622900
}
28632901
}
2902+
namespace OpenAI.Conversations {
2903+
[Experimental("OPENAI001")]
2904+
public class ConversationClient {
2905+
protected ConversationClient();
2906+
public ConversationClient(ApiKeyCredential credential, OpenAIClientOptions options);
2907+
public ConversationClient(ApiKeyCredential credential);
2908+
public ConversationClient(AuthenticationPolicy authenticationPolicy, OpenAIClientOptions options);
2909+
public ConversationClient(AuthenticationPolicy authenticationPolicy);
2910+
protected internal ConversationClient(ClientPipeline pipeline, OpenAIClientOptions options);
2911+
public ConversationClient(string apiKey);
2912+
[Experimental("OPENAI001")]
2913+
public Uri Endpoint { get; }
2914+
public ClientPipeline Pipeline { get; }
2915+
public virtual ClientResult CreateConversation(BinaryContent content, RequestOptions options = null);
2916+
public virtual Task<ClientResult> CreateConversationAsync(BinaryContent content, RequestOptions options = null);
2917+
public virtual ClientResult CreateConversationItems(string conversationId, BinaryContent content, IEnumerable<IncludedConversationItemProperty> include = null, RequestOptions options = null);
2918+
public virtual Task<ClientResult> CreateConversationItemsAsync(string conversationId, BinaryContent content, IEnumerable<IncludedConversationItemProperty> include = null, RequestOptions options = null);
2919+
public virtual ClientResult DeleteConversation(string conversationId, RequestOptions options = null);
2920+
public virtual Task<ClientResult> DeleteConversationAsync(string conversationId, RequestOptions options = null);
2921+
public virtual ClientResult DeleteConversationItem(string conversationId, string itemId, RequestOptions options = null);
2922+
public virtual Task<ClientResult> DeleteConversationItemAsync(string conversationId, string itemId, RequestOptions options = null);
2923+
public virtual ClientResult GetConversation(string conversationId, RequestOptions options = null);
2924+
public virtual Task<ClientResult> GetConversationAsync(string conversationId, RequestOptions options = null);
2925+
public virtual ClientResult GetConversationItem(string conversationId, string itemId, IEnumerable<IncludedConversationItemProperty> include = null, RequestOptions options = null);
2926+
public virtual Task<ClientResult> GetConversationItemAsync(string conversationId, string itemId, IEnumerable<IncludedConversationItemProperty> include = null, RequestOptions options = null);
2927+
public virtual ClientResult GetConversationItems(string conversationId, long? limit = null, string order = null, string after = null, IEnumerable<IncludedConversationItemProperty> include = null, RequestOptions options = null);
2928+
public virtual Task<ClientResult> GetConversationItemsAsync(string conversationId, long? limit = null, string order = null, string after = null, IEnumerable<IncludedConversationItemProperty> include = null, RequestOptions options = null);
2929+
public virtual ClientResult UpdateConversation(string conversationId, BinaryContent content, RequestOptions options = null);
2930+
public virtual Task<ClientResult> UpdateConversationAsync(string conversationId, BinaryContent content, RequestOptions options = null);
2931+
}
2932+
[Experimental("OPENAI001")]
2933+
public readonly partial struct IncludedConversationItemProperty : IEquatable<IncludedConversationItemProperty> {
2934+
public IncludedConversationItemProperty(string value);
2935+
public static IncludedConversationItemProperty CodeInterpreterCallOutputs { get; }
2936+
public static IncludedConversationItemProperty ComputerCallOutputImageUri { get; }
2937+
public static IncludedConversationItemProperty FileSearchCallResults { get; }
2938+
public static IncludedConversationItemProperty MessageInputImageUri { get; }
2939+
public static IncludedConversationItemProperty MessageOutputTextLogprobs { get; }
2940+
public static IncludedConversationItemProperty ReasoningEncryptedContent { get; }
2941+
public static IncludedConversationItemProperty WebSearchCallActionSources { get; }
2942+
public static IncludedConversationItemProperty WebSearchCallResults { get; }
2943+
public readonly bool Equals(IncludedConversationItemProperty other);
2944+
[EditorBrowsable(EditorBrowsableState.Never)]
2945+
public override readonly bool Equals(object obj);
2946+
[EditorBrowsable(EditorBrowsableState.Never)]
2947+
public override readonly int GetHashCode();
2948+
public static bool operator ==(IncludedConversationItemProperty left, IncludedConversationItemProperty right);
2949+
public static implicit operator IncludedConversationItemProperty(string value);
2950+
public static implicit operator IncludedConversationItemProperty?(string value);
2951+
public static bool operator !=(IncludedConversationItemProperty left, IncludedConversationItemProperty right);
2952+
public override readonly string ToString();
2953+
}
2954+
}
28642955
namespace OpenAI.Embeddings {
28652956
public class EmbeddingClient {
28662957
protected EmbeddingClient();
@@ -6057,6 +6148,7 @@ public class ResponseItem : IJsonModel<ResponseItem>, IPersistableModel<Response
60576148
public static WebSearchCallResponseItem CreateWebSearchCallItem();
60586149
protected virtual ResponseItem JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
60596150
protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
6151+
public static explicit operator ResponseItem(ClientResult result);
60606152
protected virtual ResponseItem PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
60616153
protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
60626154
}

api/OpenAI.netstandard2.0.cs

Lines changed: 86 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ public class OpenAIClient {
1414
public virtual BatchClient GetBatchClient();
1515
public virtual ChatClient GetChatClient(string model);
1616
public virtual ContainerClient GetContainerClient();
17+
public virtual ConversationClient GetConversationClient();
1718
public virtual EmbeddingClient GetEmbeddingClient(string model);
1819
public virtual EvaluationClient GetEvaluationClient();
1920
public virtual FineTuningClient GetFineTuningClient();
@@ -1262,9 +1263,43 @@ public class BatchClient {
12621263
public virtual Task<CreateBatchOperation> CreateBatchAsync(BinaryContent content, bool waitUntilCompleted, RequestOptions options = null);
12631264
public virtual ClientResult GetBatch(string batchId, RequestOptions options);
12641265
public virtual Task<ClientResult> GetBatchAsync(string batchId, RequestOptions options);
1266+
public virtual CollectionResult<BatchJob> GetBatches(BatchCollectionOptions options = null, CancellationToken cancellationToken = default);
12651267
public virtual CollectionResult GetBatches(string after, int? limit, RequestOptions options);
1268+
public virtual AsyncCollectionResult<BatchJob> GetBatchesAsync(BatchCollectionOptions options = null, CancellationToken cancellationToken = default);
12661269
public virtual AsyncCollectionResult GetBatchesAsync(string after, int? limit, RequestOptions options);
12671270
}
1271+
public class BatchCollectionOptions : IJsonModel<BatchCollectionOptions>, IPersistableModel<BatchCollectionOptions> {
1272+
public string AfterId { get; set; }
1273+
public int? PageSizeLimit { get; set; }
1274+
protected virtual BatchCollectionOptions JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
1275+
protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
1276+
protected virtual BatchCollectionOptions PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
1277+
protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
1278+
}
1279+
public class BatchJob : IJsonModel<BatchJob>, IPersistableModel<BatchJob> {
1280+
public DateTimeOffset? CancelledAt { get; }
1281+
public DateTimeOffset? CancellingAt { get; }
1282+
public DateTimeOffset? CompletedAt { get; }
1283+
public string CompletionWindow { get; }
1284+
public DateTimeOffset CreatedAt { get; }
1285+
public string Endpoint { get; }
1286+
public string ErrorFileId { get; }
1287+
public DateTimeOffset? ExpiredAt { get; }
1288+
public DateTimeOffset? ExpiresAt { get; }
1289+
public DateTimeOffset? FailedAt { get; }
1290+
public DateTimeOffset? FinalizingAt { get; }
1291+
public string Id { get; }
1292+
public DateTimeOffset? InProgressAt { get; }
1293+
public string InputFileId { get; }
1294+
public IDictionary<string, string> Metadata { get; }
1295+
public string Object { get; }
1296+
public string OutputFileId { get; }
1297+
protected virtual BatchJob JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
1298+
protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
1299+
public static explicit operator BatchJob(ClientResult result);
1300+
protected virtual BatchJob PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
1301+
protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
1302+
}
12681303
public class CreateBatchOperation : OperationResult {
12691304
public string BatchId { get; }
12701305
public override ContinuationToken? RehydrationToken { get; protected set; }
@@ -2464,6 +2499,56 @@ public class DeleteContainerResponse : IJsonModel<DeleteContainerResponse>, IPer
24642499
protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
24652500
}
24662501
}
2502+
namespace OpenAI.Conversations {
2503+
public class ConversationClient {
2504+
protected ConversationClient();
2505+
public ConversationClient(ApiKeyCredential credential, OpenAIClientOptions options);
2506+
public ConversationClient(ApiKeyCredential credential);
2507+
public ConversationClient(AuthenticationPolicy authenticationPolicy, OpenAIClientOptions options);
2508+
public ConversationClient(AuthenticationPolicy authenticationPolicy);
2509+
protected internal ConversationClient(ClientPipeline pipeline, OpenAIClientOptions options);
2510+
public ConversationClient(string apiKey);
2511+
public Uri Endpoint { get; }
2512+
public ClientPipeline Pipeline { get; }
2513+
public virtual ClientResult CreateConversation(BinaryContent content, RequestOptions options = null);
2514+
public virtual Task<ClientResult> CreateConversationAsync(BinaryContent content, RequestOptions options = null);
2515+
public virtual ClientResult CreateConversationItems(string conversationId, BinaryContent content, IEnumerable<IncludedConversationItemProperty> include = null, RequestOptions options = null);
2516+
public virtual Task<ClientResult> CreateConversationItemsAsync(string conversationId, BinaryContent content, IEnumerable<IncludedConversationItemProperty> include = null, RequestOptions options = null);
2517+
public virtual ClientResult DeleteConversation(string conversationId, RequestOptions options = null);
2518+
public virtual Task<ClientResult> DeleteConversationAsync(string conversationId, RequestOptions options = null);
2519+
public virtual ClientResult DeleteConversationItem(string conversationId, string itemId, RequestOptions options = null);
2520+
public virtual Task<ClientResult> DeleteConversationItemAsync(string conversationId, string itemId, RequestOptions options = null);
2521+
public virtual ClientResult GetConversation(string conversationId, RequestOptions options = null);
2522+
public virtual Task<ClientResult> GetConversationAsync(string conversationId, RequestOptions options = null);
2523+
public virtual ClientResult GetConversationItem(string conversationId, string itemId, IEnumerable<IncludedConversationItemProperty> include = null, RequestOptions options = null);
2524+
public virtual Task<ClientResult> GetConversationItemAsync(string conversationId, string itemId, IEnumerable<IncludedConversationItemProperty> include = null, RequestOptions options = null);
2525+
public virtual ClientResult GetConversationItems(string conversationId, long? limit = null, string order = null, string after = null, IEnumerable<IncludedConversationItemProperty> include = null, RequestOptions options = null);
2526+
public virtual Task<ClientResult> GetConversationItemsAsync(string conversationId, long? limit = null, string order = null, string after = null, IEnumerable<IncludedConversationItemProperty> include = null, RequestOptions options = null);
2527+
public virtual ClientResult UpdateConversation(string conversationId, BinaryContent content, RequestOptions options = null);
2528+
public virtual Task<ClientResult> UpdateConversationAsync(string conversationId, BinaryContent content, RequestOptions options = null);
2529+
}
2530+
public readonly partial struct IncludedConversationItemProperty : IEquatable<IncludedConversationItemProperty> {
2531+
public IncludedConversationItemProperty(string value);
2532+
public static IncludedConversationItemProperty CodeInterpreterCallOutputs { get; }
2533+
public static IncludedConversationItemProperty ComputerCallOutputImageUri { get; }
2534+
public static IncludedConversationItemProperty FileSearchCallResults { get; }
2535+
public static IncludedConversationItemProperty MessageInputImageUri { get; }
2536+
public static IncludedConversationItemProperty MessageOutputTextLogprobs { get; }
2537+
public static IncludedConversationItemProperty ReasoningEncryptedContent { get; }
2538+
public static IncludedConversationItemProperty WebSearchCallActionSources { get; }
2539+
public static IncludedConversationItemProperty WebSearchCallResults { get; }
2540+
public readonly bool Equals(IncludedConversationItemProperty other);
2541+
[EditorBrowsable(EditorBrowsableState.Never)]
2542+
public override readonly bool Equals(object obj);
2543+
[EditorBrowsable(EditorBrowsableState.Never)]
2544+
public override readonly int GetHashCode();
2545+
public static bool operator ==(IncludedConversationItemProperty left, IncludedConversationItemProperty right);
2546+
public static implicit operator IncludedConversationItemProperty(string value);
2547+
public static implicit operator IncludedConversationItemProperty?(string value);
2548+
public static bool operator !=(IncludedConversationItemProperty left, IncludedConversationItemProperty right);
2549+
public override readonly string ToString();
2550+
}
2551+
}
24672552
namespace OpenAI.Embeddings {
24682553
public class EmbeddingClient {
24692554
protected EmbeddingClient();
@@ -5315,6 +5400,7 @@ public class ResponseItem : IJsonModel<ResponseItem>, IPersistableModel<Response
53155400
public static WebSearchCallResponseItem CreateWebSearchCallItem();
53165401
protected virtual ResponseItem JsonModelCreateCore(ref Utf8JsonReader reader, ModelReaderWriterOptions options);
53175402
protected virtual void JsonModelWriteCore(Utf8JsonWriter writer, ModelReaderWriterOptions options);
5403+
public static explicit operator ResponseItem(ClientResult result);
53185404
protected virtual ResponseItem PersistableModelCreateCore(BinaryData data, ModelReaderWriterOptions options);
53195405
protected virtual BinaryData PersistableModelWriteCore(ModelReaderWriterOptions options);
53205406
}

codegen/generator/src/Visitors/PaginationVisitor.cs

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,14 @@ public class PaginationVisitor : ScmLibraryVisitor
4747
"GetChatCompletionMessagesAsync",
4848
("ChatCompletionMessageListDatum", "ChatCompletionMessageCollectionOptions", _paginationParamsToReplace)
4949
},
50+
{
51+
"GetBatches",
52+
("BatchJob", "BatchCollectionOptions", _paginationParamsToReplace)
53+
},
54+
{
55+
"GetBatchesAsync",
56+
("BatchJob", "BatchCollectionOptions", _paginationParamsToReplace)
57+
},
5058
{
5159
"GetVectorStores",
5260
("VectorStore", "VectorStoreCollectionOptions", _paginationParamsToReplace)

0 commit comments

Comments
 (0)