UNPKG

@llumiverse/drivers

Version:

LLM driver implementations. Currently supported are: openai, huggingface, bedrock, replicate.

26 lines 1.83 kB
import { AIModel, AbstractDriver, Completion, DataSource, DriverOptions, EmbeddingsOptions, EmbeddingsResult, ExecutionOptions, ToolUse, TrainingJob, TrainingOptions, TrainingPromptOptions } from "@llumiverse/core"; import OpenAI, { AzureOpenAI } from "openai"; type OpenAIMessageBlock = OpenAI.Chat.Completions.ChatCompletionMessageParam; export interface BaseOpenAIDriverOptions extends DriverOptions { } export declare abstract class BaseOpenAIDriver extends AbstractDriver<BaseOpenAIDriverOptions, OpenAIMessageBlock[]> { abstract provider: "azure_openai" | "openai" | "xai"; abstract service: OpenAI | AzureOpenAI; constructor(opts: BaseOpenAIDriverOptions); extractDataFromResponse(_options: ExecutionOptions, result: OpenAI.Chat.Completions.ChatCompletion): Completion; requestTextCompletionStream(prompt: OpenAIMessageBlock[], options: ExecutionOptions): Promise<any>; requestTextCompletion(prompt: OpenAIMessageBlock[], options: ExecutionOptions): Promise<any>; protected canStream(_options: ExecutionOptions): Promise<boolean>; createTrainingPrompt(options: TrainingPromptOptions): Promise<string>; startTraining(dataset: DataSource, options: TrainingOptions): Promise<TrainingJob>; cancelTraining(jobId: string): Promise<TrainingJob>; getTrainingJob(jobId: string): Promise<TrainingJob>; validateConnection(): Promise<boolean>; listTrainableModels(): Promise<AIModel<string>[]>; listModels(): Promise<AIModel[]>; _listModels(filter?: (m: OpenAI.Models.Model) => boolean): Promise<AIModel[]>; generateEmbeddings({ text, image, model }: EmbeddingsOptions): Promise<EmbeddingsResult>; } export declare function collectTools(toolCalls?: OpenAI.Chat.Completions.ChatCompletionMessageToolCall[]): ToolUse[] | undefined; export {}; //# sourceMappingURL=index.d.ts.map