@llumiverse/drivers
Version:
LLM driver implementations. Currently supported are: openai, huggingface, bedrock, replicate.
27 lines • 1.41 kB
TypeScript
import { AIModel, AbstractDriver, Completion, CompletionChunkObject, DriverOptions, EmbeddingsOptions, EmbeddingsResult, ExecutionOptions, PromptSegment } from "@llumiverse/core";
import Groq from "groq-sdk";
import type { ChatCompletionMessageParam } from "groq-sdk/resources/chat/completions";
interface GroqDriverOptions extends DriverOptions {
apiKey: string;
endpoint_url?: string;
}
export declare class GroqDriver extends AbstractDriver<GroqDriverOptions, ChatCompletionMessageParam[]> {
static PROVIDER: string;
provider: string;
apiKey: string;
client: Groq;
endpointUrl?: string;
constructor(options: GroqDriverOptions);
getResponseFormat(_options: ExecutionOptions): undefined;
protected formatPrompt(segments: PromptSegment[], opts: ExecutionOptions): Promise<ChatCompletionMessageParam[]>;
private getToolDefinitions;
private extractToolUse;
private sanitizeMessagesForGroq;
requestTextCompletion(messages: ChatCompletionMessageParam[], options: ExecutionOptions): Promise<Completion>;
requestTextCompletionStream(messages: ChatCompletionMessageParam[], options: ExecutionOptions): Promise<AsyncIterable<CompletionChunkObject>>;
listModels(): Promise<AIModel<string>[]>;
validateConnection(): Promise<boolean>;
generateEmbeddings({}: EmbeddingsOptions): Promise<EmbeddingsResult>;
}
export {};
//# sourceMappingURL=index.d.ts.map