@llumiverse/drivers
Version:
LLM driver implementations. Currently supported are: openai, huggingface, bedrock, replicate.
20 lines • 1.24 kB
TypeScript
import { AIModel, Completion, CompletionChunkObject, ExecutionOptions, LlumiverseError, LlumiverseErrorContext, PromptSegment } from "@llumiverse/core";
import { VertexAIDriver } from "./index.js";
export interface ModelDefinition<PromptT = any> {
model: AIModel;
versions?: string[];
createPrompt: (driver: VertexAIDriver, segments: PromptSegment[], options: ExecutionOptions) => Promise<PromptT>;
requestTextCompletion: (driver: VertexAIDriver, prompt: PromptT, options: ExecutionOptions) => Promise<Completion>;
requestTextCompletionStream: (driver: VertexAIDriver, prompt: PromptT, options: ExecutionOptions) => Promise<AsyncIterable<CompletionChunkObject>>;
preValidationProcessing?(result: Completion, options: ExecutionOptions): {
result: Completion;
options: ExecutionOptions;
};
/**
* Format provider-specific errors into standardized LlumiverseError.
* Optional - if not provided, VertexAIDriver will use default error handling.
*/
formatLlumiverseError?(driver: VertexAIDriver, error: unknown, context: LlumiverseErrorContext): LlumiverseError;
}
export declare function getModelDefinition(model: string): ModelDefinition;
//# sourceMappingURL=models.d.ts.map