UNPKG

@convo-lang/convo-lang

Version:
42 lines (41 loc) 2.17 kB
import { ConvoCompletionService, ConvoModelInfo, FlatConvoConversationBase } from "@convo-lang/convo-lang"; import { SecretManager } from "@iyio/common"; import { ChatCompletion, ChatCompletionCreateParamsNonStreaming } from './open-ai/resources/chat'; export interface BaseOpenAiConvoCompletionServiceOptions { apiKey?: string; apiBaseUrl?: string; completionsEndpoint?: string; secretManager?: SecretManager; secretsName?: string; models: ConvoModelInfo[]; inputType: string; outputType: string; apiKeyHeader?: string; apiKeyHeaderValuePrefix?: string | null; headers?: Record<string, string>; updateRequest?: (requestBody: Record<string, any>, headers: Record<string, string | undefined>) => void; completeAsync?: (input: ChatCompletionCreateParamsNonStreaming, flat: FlatConvoConversationBase, apiKey: string | undefined, url: string) => Promise<ChatCompletion | undefined>; isFallback?: boolean; } export declare class BaseOpenAiConvoCompletionService implements ConvoCompletionService<ChatCompletionCreateParamsNonStreaming, ChatCompletion> { readonly inputType: string; readonly outputType: string; private readonly secretManager?; private readonly apiKey?; private readonly apiBaseUrl; private readonly completionsEndpoint; private readonly secretsName?; private readonly models; private readonly apiKeyHeader; private readonly apiKeyHeaderValuePrefix?; private readonly headers; private readonly isFallback; private readonly updateRequest?; private readonly completeAsync?; constructor({ apiKey, secretManager, secretsName, apiBaseUrl, completionsEndpoint, inputType, outputType, models, isFallback, apiKeyHeader, apiKeyHeaderValuePrefix, headers, completeAsync, updateRequest, }: BaseOpenAiConvoCompletionServiceOptions); canComplete(model: string | undefined, flat: FlatConvoConversationBase): boolean; private clientPromises; private getApiClientAsync; completeConvoAsync(input: ChatCompletionCreateParamsNonStreaming, flat: FlatConvoConversationBase): Promise<ChatCompletion>; getModelsAsync(): Promise<ConvoModelInfo[]>; }