openai/openai-dotnet

Public

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

CodeCommitsIssuesPull requestsActionsInsightsSecurity
OpenAI_2.0.0-beta.7

Branches

Tags

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

Clone

HTTPS

Download ZIP

src/Custom/Common/CancellationTokenExtensions.cs

22lines · modecode

1using System.ClientModel.Primitives;
2using System.Threading;
3
4internal static class CancellationTokenExtensions
5{
6 public static RequestOptions ToRequestOptions(this CancellationToken cancellationToken, bool streaming = false)
7 {
8 if (cancellationToken == default)
9 {
10 if (!streaming) return null;
11 return StreamRequestOptions;
12 }
13
14 return new RequestOptions() {
15 CancellationToken = cancellationToken,
16 BufferResponse = !streaming,
17 };
18 }
19
20 private static RequestOptions StreamRequestOptions => _streamRequestOptions ??= new() { BufferResponse = false };
21 private static RequestOptions _streamRequestOptions;
22}
23