-
Notifications
You must be signed in to change notification settings - Fork 1.1k
/
Copy pathcompletions.ts
77 lines (74 loc) · 2.84 KB
/
completions.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
// File generated from our OpenAPI spec by Stainless.
import * as Core from 'openai/core';
import { APIResource } from 'openai/resource';
import { ChatCompletionRunner, ChatCompletionFunctionRunnerParams } from 'openai/lib/ChatCompletionRunner';
export { ChatCompletionRunner, ChatCompletionFunctionRunnerParams } from 'openai/lib/ChatCompletionRunner';
import {
ChatCompletionStreamingRunner,
ChatCompletionStreamingFunctionRunnerParams,
} from 'openai/lib/ChatCompletionStreamingRunner';
export {
ChatCompletionStreamingRunner,
ChatCompletionStreamingFunctionRunnerParams,
} from 'openai/lib/ChatCompletionStreamingRunner';
import { BaseFunctionsArgs } from 'openai/lib/RunnableFunction';
export {
RunnableFunction,
RunnableFunctions,
RunnableFunctionWithParse,
RunnableFunctionWithoutParse,
ParsingFunction,
} from 'openai/lib/RunnableFunction';
import { ChatCompletionStream } from 'openai/lib/ChatCompletionStream';
import { ChatCompletionCreateParamsStreaming } from 'openai/resources/chat/completions';
export class Completions extends APIResource {
/**
* A convenience helper for using function calls with the /chat/completions
* endpoint which automatically calls the JavaScript functions you provide and
* sends their results back to the /chat/completions endpoint, looping as long as
* the model requests function calls.
*
* For more details and examples, see
* [the docs](https://github.com/openai/openai-node#runFunctions)
*/
runFunctions<FunctionsArgs extends BaseFunctionsArgs>(
body: ChatCompletionFunctionRunnerParams<FunctionsArgs>,
options?: Core.RequestOptions,
): ChatCompletionRunner;
runFunctions<FunctionsArgs extends BaseFunctionsArgs>(
body: ChatCompletionStreamingFunctionRunnerParams<FunctionsArgs>,
options?: Core.RequestOptions,
): ChatCompletionStreamingRunner;
runFunctions<FunctionsArgs extends BaseFunctionsArgs>(
body:
| ChatCompletionFunctionRunnerParams<FunctionsArgs>
| ChatCompletionStreamingFunctionRunnerParams<FunctionsArgs>,
options?: Core.RequestOptions,
): ChatCompletionRunner | ChatCompletionStreamingRunner {
if (body.stream) {
return ChatCompletionStreamingRunner.runFunctions(
this.client.chat.completions,
body as ChatCompletionStreamingFunctionRunnerParams<FunctionsArgs>,
options,
);
}
return ChatCompletionRunner.runFunctions(
this.client.chat.completions,
body as ChatCompletionFunctionRunnerParams<FunctionsArgs>,
options,
);
}
/**
* Creates a chat completion stream
*/
stream(
body: Omit<ChatCompletionCreateParamsStreaming, 'stream'> & { stream?: true },
options?: Core.RequestOptions,
): ChatCompletionStream {
return ChatCompletionStream.createChatCompletion(
this.client.chat.completions,
{ ...body, stream: true },
options,
);
}
}