openai/openai-dotnet

Public

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

CodeCommitsIssuesPull requestsActionsInsightsSecurity
OpenAI_2.3.0

Branches

Tags

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

Clone

HTTPS

Download ZIP

src/Custom/Assistants/Internal/InternalAssistantMessageClient.cs

81lines · modeblame

9f9f2936Jose Arriaga Maldonado2 years ago1using System;
2using System.ClientModel;
3using System.ClientModel.Primitives;
e0fee603Jose Arriaga Maldonado1 years ago4using System.Threading;
9f9f2936Jose Arriaga Maldonado2 years ago5
6namespace OpenAI.Assistants;
7
0ca4c062Jose Arriaga Maldonado1 years ago8[CodeGenType("Messages")]
9f9f2936Jose Arriaga Maldonado2 years ago9[CodeGenSuppress("InternalAssistantMessageClient", typeof(ClientPipeline), typeof(ApiKeyCredential), typeof(Uri))]
e0fee603Jose Arriaga Maldonado1 years ago10[CodeGenSuppress("CreateMessageAsync", typeof(string), typeof(MessageCreationOptions), typeof(CancellationToken))]
11[CodeGenSuppress("CreateMessage", typeof(string), typeof(MessageCreationOptions), typeof(CancellationToken))]
5dce104aJose Arriaga Maldonado1 years ago12[CodeGenSuppress("GetMessagesAsync", typeof(string), typeof(int?), typeof(OpenAI.VectorStores.VectorStoreCollectionOrder?), typeof(string), typeof(string), typeof(CancellationToken))]
13[CodeGenSuppress("GetMessages", typeof(string), typeof(int?), typeof(OpenAI.VectorStores.VectorStoreCollectionOrder?), typeof(string), typeof(string), typeof(CancellationToken))]
e0fee603Jose Arriaga Maldonado1 years ago14[CodeGenSuppress("GetMessageAsync", typeof(string), typeof(string), typeof(CancellationToken))]
15[CodeGenSuppress("GetMessage", typeof(string), typeof(string), typeof(CancellationToken))]
16[CodeGenSuppress("ModifyMessageAsync", typeof(string), typeof(string), typeof(MessageModificationOptions), typeof(CancellationToken))]
17[CodeGenSuppress("ModifyMessage", typeof(string), typeof(string), typeof(MessageModificationOptions), typeof(CancellationToken))]
18[CodeGenSuppress("DeleteMessageAsync", typeof(string), typeof(string), typeof(CancellationToken))]
19[CodeGenSuppress("DeleteMessage", typeof(string), typeof(string), typeof(CancellationToken))]
9f9f2936Jose Arriaga Maldonado2 years ago20internal partial class InternalAssistantMessageClient
21{
13a9c686Jose Arriaga Maldonado2 years ago22// CUSTOM:
23// - Used a custom pipeline.
24// - Demoted the endpoint parameter to be a property in the options class.
e0fee603Jose Arriaga Maldonado1 years ago25/// <summary> Initializes a new instance of <see cref="InternalAssistantMessageClient"/>. </summary>
13a9c686Jose Arriaga Maldonado2 years ago26/// <param name="credential"> The API key to authenticate with the service. </param>
27/// <exception cref="ArgumentNullException"> <paramref name="credential"/> is null. </exception>
28public InternalAssistantMessageClient(ApiKeyCredential credential) : this(credential, new OpenAIClientOptions())
29{
30}
31
32// CUSTOM:
33// - Used a custom pipeline.
34// - Demoted the endpoint parameter to be a property in the options class.
e0fee603Jose Arriaga Maldonado1 years ago35/// <summary> Initializes a new instance of <see cref="InternalAssistantMessageClient"/>. </summary>
13a9c686Jose Arriaga Maldonado2 years ago36/// <param name="credential"> The API key to authenticate with the service. </param>
37/// <param name="options"> The options to configure the client. </param>
38/// <exception cref="ArgumentNullException"> <paramref name="credential"/> is null. </exception>
3613b6a0Jose Arriaga Maldonado1 years ago39public InternalAssistantMessageClient(ApiKeyCredential credential, OpenAIClientOptions options) : this(OpenAIClient.CreateApiKeyAuthenticationPolicy(credential), options)
13a9c686Jose Arriaga Maldonado2 years ago40{
3613b6a0Jose Arriaga Maldonado1 years ago41}
42
43// CUSTOM: Added as a convenience.
44/// <summary> Initializes a new instance of <see cref="InternalAssistantMessageClient"/>. </summary>
45/// <param name="authenticationPolicy"> The authentication policy used to authenticate with the service. </param>
46/// <exception cref="ArgumentNullException"> <paramref name="authenticationPolicy"/> is null. </exception>
47public InternalAssistantMessageClient(AuthenticationPolicy authenticationPolicy) : this(authenticationPolicy, new OpenAIClientOptions())
48{
49}
50
51// CUSTOM: Added as a convenience.
52/// <summary> Initializes a new instance of <see cref="InternalAssistantMessageClient"/>. </summary>
53/// <param name="authenticationPolicy"> The authentication policy used to authenticate with the service. </param>
54/// <param name="options"> The options to configure the client. </param>
55/// <exception cref="ArgumentNullException"> <paramref name="authenticationPolicy"/> is null. </exception>
56public InternalAssistantMessageClient(AuthenticationPolicy authenticationPolicy, OpenAIClientOptions options)
57{
58Argument.AssertNotNull(authenticationPolicy, nameof(authenticationPolicy));
13a9c686Jose Arriaga Maldonado2 years ago59options ??= new OpenAIClientOptions();
9f9f2936Jose Arriaga Maldonado2 years ago60
3613b6a0Jose Arriaga Maldonado1 years ago61Pipeline = OpenAIClient.CreatePipeline(authenticationPolicy, options);
13a9c686Jose Arriaga Maldonado2 years ago62_endpoint = OpenAIClient.GetEndpoint(options);
63}
9f9f2936Jose Arriaga Maldonado2 years ago64
13a9c686Jose Arriaga Maldonado2 years ago65// CUSTOM:
66// - Used a custom pipeline.
67// - Demoted the endpoint parameter to be a property in the options class.
68// - Made protected.
e0fee603Jose Arriaga Maldonado1 years ago69/// <summary> Initializes a new instance of <see cref="InternalAssistantMessageClient"/>. </summary>
13a9c686Jose Arriaga Maldonado2 years ago70/// <param name="pipeline"> The HTTP pipeline to send and receive REST requests and responses. </param>
71/// <param name="options"> The options to configure the client. </param>
72/// <exception cref="ArgumentNullException"> <paramref name="pipeline"/> is null. </exception>
73protected internal InternalAssistantMessageClient(ClientPipeline pipeline, OpenAIClientOptions options)
9f9f2936Jose Arriaga Maldonado2 years ago74{
13a9c686Jose Arriaga Maldonado2 years ago75Argument.AssertNotNull(pipeline, nameof(pipeline));
76options ??= new OpenAIClientOptions();
77
e0fee603Jose Arriaga Maldonado1 years ago78Pipeline = pipeline;
13a9c686Jose Arriaga Maldonado2 years ago79_endpoint = OpenAIClient.GetEndpoint(options);
9f9f2936Jose Arriaga Maldonado2 years ago80}
81}