portkey-ai
Version:
Node client library for the Portkey API
56 lines (55 loc) • 1.95 kB
TypeScript
import { APIResponseType, ApiClientInterface } from '../_types/generalTypes';
import { ModelParams } from '../_types/portkeyConstructs';
import { ApiResource } from '../apiResource';
import { APIPromise, RequestOptions } from '../baseClient';
import { Stream } from '../streaming';
export declare class Completions extends ApiResource {
create(_body: CompletionsBodyNonStreaming, params?: ApiClientInterface, opts?: RequestOptions): APIPromise<TextCompletion>;
create(_body: CompletionsBodyStreaming, params?: ApiClientInterface, opts?: RequestOptions): APIPromise<Stream<TextCompletion>>;
create(_body: CompletionsBodyBase, params?: ApiClientInterface, opts?: RequestOptions): APIPromise<Stream<TextCompletion> | TextCompletion>;
}
export interface CompletionsBodyBase extends ModelParams {
prompt: string;
}
export interface ChatCompletionStreamOptions {
include_usage?: boolean;
}
export interface CompletionsBodyStreaming extends CompletionsBodyBase {
stream?: true;
stream_options?: ChatCompletionStreamOptions | null;
}
export interface CompletionsBodyNonStreaming extends CompletionsBodyBase {
stream?: false;
}
export type CompletionCreateParams = CompletionsBodyNonStreaming | CompletionsBodyStreaming;
interface Usage {
prompt_tokens?: number;
completion_tokens?: number;
total_tokens?: number;
[key: string]: any;
}
interface Logprobs {
text_offset?: Array<number>;
token_logprobs?: Array<number>;
tokens?: Array<string>;
top_logprobs?: Array<Record<string, number>>;
[key: string]: any;
}
interface Choices {
index?: number;
text?: string;
logprobs: Logprobs;
finish_reason?: string;
[key: string]: any;
}
interface TextCompletion extends APIResponseType {
id: string;
object: string;
created: number;
model: string;
choices: Array<Choices>;
usage?: Usage;
system_fingerprint?: string;
[key: string]: any;
}
export {};