gpt-simple-api-ts
Version:
A simple client GPT API written in TypeScript
51 lines (50 loc) • 2.58 kB
TypeScript
import { Configuration, OpenAIApi, CreateCompletionRequest, CreateChatCompletionRequest } from "openai-old";
import AbortController from "abort-controller";
import OpenAI from "openai";
export interface ITools {
[key: string]: (args: {
[key: string]: any;
}) => any;
}
export interface IResponseWithTools {
content: string | null | undefined;
toolsResult?: {
[key: string]: any;
};
}
export declare const maxTokensModels: {
"gpt-3.5-turbo": number;
"gpt-4": number;
"gpt-3.5-turbo-16k": number;
};
export default class SimpleGPT {
protected _key: string;
protected _configuration: Configuration | null;
protected _openai: OpenAIApi | null;
protected __openai: OpenAI | null;
protected req: any;
protected abortController: AbortController;
protected reader: any;
get chatModels(): string[];
get defaultOptsGPT(): Partial<CreateCompletionRequest>;
constructor({ key }: {
key: string;
});
transcribe(formData: FormData): Promise<any>;
getStream(prompt: string, fData: (delta: string, json: {
[key: string]: any;
}, raw: any) => any, fEnd: any, opts?: Partial<CreateCompletionRequest & CreateChatCompletionRequest>): Promise<void>;
abortStream(): void;
getFull(prompt: string, opts?: Partial<OpenAI.ChatCompletionCreateParamsNonStreaming>): Promise<undefined | OpenAI.Chat.Completions.ChatCompletion.Choice[]>;
getAll(prompt: string, opts?: Partial<OpenAI.ChatCompletionCreateParamsNonStreaming>): Promise<null | string[]>;
getCompletions(prompt: string, opts?: Partial<CreateCompletionRequest>): Promise<null | string[]>;
getWithTools(prompt: string, opts?: Partial<OpenAI.ChatCompletionCreateParamsNonStreaming>, functions?: ITools): Promise<IResponseWithTools>;
get(prompt: string, opts?: Partial<OpenAI.ChatCompletionCreateParamsNonStreaming>, functions?: ITools): Promise<string | null | undefined>;
getFirst: (prompt: string, opts?: Partial<OpenAI.ChatCompletionCreateParamsNonStreaming>, functions?: ITools) => Promise<string | null | undefined>;
getCode(prompt: string, opts?: Partial<CreateCompletionRequest>): Promise<null | string[]>;
getCodeFirst(prompt: string, opts?: Partial<CreateCompletionRequest>): Promise<string | undefined>;
getImages(prompt: string, n?: number, size?: (256 | 512 | 1024), model?: string): Promise<string[]>;
getImage(prompt: string, size?: (256 | 512 | 1024), model?: string): Promise<string | undefined>;
setApiKey(key: string): void;
getModels(): Promise<null | string[]>;
}