openai/openai-dotnet

Public

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

CodeCommitsIssuesPull requestsActionsInsightsSecurity
copilot/customize-openairesponsescontext-attribute

Branches

Tags

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

Clone

HTTPS

Download ZIP

OpenAI.Responses/src/Generated/ResponsesClient.RestClient.cs

155lines · modecode

1// <auto-generated/>
2
3#nullable disable
4
5using System.ClientModel;
6using System.ClientModel.Primitives;
7using System.Collections.Generic;
8
9namespace OpenAI.Responses
10{
11 public partial class ResponsesClient
12 {
13 private static PipelineMessageClassifier _pipelineMessageClassifier200;
14
15 private static PipelineMessageClassifier PipelineMessageClassifier200 => _pipelineMessageClassifier200 ??= PipelineMessageClassifier.Create(stackalloc ushort[] { 200 });
16
17 // Plugin customization: make PipelineMessage creation methods virtual
18 internal virtual PipelineMessage CreateCreateResponseRequest(BinaryContent content, RequestOptions options)
19 {
20 ClientUriBuilder uri = new ClientUriBuilder();
21 uri.Reset(_endpoint);
22 uri.AppendPath("/responses", false);
23 PipelineMessage message = Pipeline.CreateMessage(uri.ToUri(), "POST", PipelineMessageClassifier200);
24 PipelineRequest request = message.Request;
25 request.Headers.Set("Accept", "application/json, text/event-stream");
26 request.Headers.Set("Content-Type", "application/json");
27 request.Content = content;
28 message.Apply(options);
29 return message;
30 }
31
32 // Plugin customization: make PipelineMessage creation methods virtual
33 internal virtual PipelineMessage CreateGetResponseRequest(string responseId, IEnumerable<IncludedResponseProperty> include, bool? stream, int? startingAfter, bool? includeObfuscation, RequestOptions options)
34 {
35 ClientUriBuilder uri = new ClientUriBuilder();
36 uri.Reset(_endpoint);
37 uri.AppendPath("/responses/", false);
38 uri.AppendPath(responseId, true);
39 if (include != null && !(include is ChangeTrackingList<IncludedResponseProperty> changeTrackingList && changeTrackingList.IsUndefined))
40 {
41 foreach (var @param in include)
42 {
43 uri.AppendQuery("include[]", @param.ToString(), true);
44 }
45 }
46 if (stream != null)
47 {
48 uri.AppendQuery("stream", TypeFormatters.ConvertToString(stream), true);
49 }
50 if (startingAfter != null)
51 {
52 uri.AppendQuery("starting_after", TypeFormatters.ConvertToString(startingAfter), true);
53 }
54 if (includeObfuscation != null)
55 {
56 uri.AppendQuery("include_obfuscation", TypeFormatters.ConvertToString(includeObfuscation), true);
57 }
58 PipelineMessage message = Pipeline.CreateMessage(uri.ToUri(), "GET", PipelineMessageClassifier200);
59 PipelineRequest request = message.Request;
60 request.Headers.Set("Accept", "application/json, text/event-stream");
61 message.Apply(options);
62 return message;
63 }
64
65 // Plugin customization: make PipelineMessage creation methods virtual
66 internal virtual PipelineMessage CreateDeleteResponseRequest(string responseId, RequestOptions options)
67 {
68 ClientUriBuilder uri = new ClientUriBuilder();
69 uri.Reset(_endpoint);
70 uri.AppendPath("/responses/", false);
71 uri.AppendPath(responseId, true);
72 PipelineMessage message = Pipeline.CreateMessage(uri.ToUri(), "DELETE", PipelineMessageClassifier200);
73 PipelineRequest request = message.Request;
74 request.Headers.Set("Accept", "application/json");
75 message.Apply(options);
76 return message;
77 }
78
79 // Plugin customization: make PipelineMessage creation methods virtual
80 internal virtual PipelineMessage CreateCancelResponseRequest(string responseId, RequestOptions options)
81 {
82 ClientUriBuilder uri = new ClientUriBuilder();
83 uri.Reset(_endpoint);
84 uri.AppendPath("/responses/", false);
85 uri.AppendPath(responseId, true);
86 uri.AppendPath("/cancel", false);
87 PipelineMessage message = Pipeline.CreateMessage(uri.ToUri(), "POST", PipelineMessageClassifier200);
88 PipelineRequest request = message.Request;
89 request.Headers.Set("Accept", "application/json");
90 message.Apply(options);
91 return message;
92 }
93
94 // Plugin customization: make PipelineMessage creation methods virtual
95 internal virtual PipelineMessage CreateGetResponseInputItemsRequest(string responseId, int? limit, string order, string after, string before, RequestOptions options)
96 {
97 ClientUriBuilder uri = new ClientUriBuilder();
98 uri.Reset(_endpoint);
99 uri.AppendPath("/responses/", false);
100 uri.AppendPath(responseId, true);
101 uri.AppendPath("/input_items", false);
102 if (limit != null)
103 {
104 uri.AppendQuery("limit", TypeFormatters.ConvertToString(limit), true);
105 }
106 if (order != null)
107 {
108 uri.AppendQuery("order", order, true);
109 }
110 if (after != null)
111 {
112 uri.AppendQuery("after", after, true);
113 }
114 if (before != null)
115 {
116 uri.AppendQuery("before", before, true);
117 }
118 PipelineMessage message = Pipeline.CreateMessage(uri.ToUri(), "GET", PipelineMessageClassifier200);
119 PipelineRequest request = message.Request;
120 request.Headers.Set("Accept", "application/json");
121 message.Apply(options);
122 return message;
123 }
124
125 // Plugin customization: make PipelineMessage creation methods virtual
126 internal virtual PipelineMessage CreateGetInputTokenCountRequest(BinaryContent content, string contentType, RequestOptions options)
127 {
128 ClientUriBuilder uri = new ClientUriBuilder();
129 uri.Reset(_endpoint);
130 uri.AppendPath("/responses/input_tokens", false);
131 PipelineMessage message = Pipeline.CreateMessage(uri.ToUri(), "POST", PipelineMessageClassifier200);
132 PipelineRequest request = message.Request;
133 request.Headers.Set("Content-Type", contentType);
134 request.Headers.Set("Accept", "application/json");
135 request.Content = content;
136 message.Apply(options);
137 return message;
138 }
139
140 // Plugin customization: make PipelineMessage creation methods virtual
141 internal virtual PipelineMessage CreateCompactResponseRequest(BinaryContent content, string contentType, RequestOptions options)
142 {
143 ClientUriBuilder uri = new ClientUriBuilder();
144 uri.Reset(_endpoint);
145 uri.AppendPath("/responses/compact", false);
146 PipelineMessage message = Pipeline.CreateMessage(uri.ToUri(), "POST", PipelineMessageClassifier200);
147 PipelineRequest request = message.Request;
148 request.Headers.Set("Content-Type", contentType);
149 request.Headers.Set("Accept", "application/json");
150 request.Content = content;
151 message.Apply(options);
152 return message;
153 }
154 }
155}
156