jorel
Version:
The easiest way to use LLMs, including streams, images, documents, tools and various agent scenarios.
18 lines (17 loc) • 920 B
TypeScript
import Groq from "groq-sdk";
import { LlmCoreProvider, LlmGenerationConfig, LlmMessage, LlmResponse, LlmStreamResponse, LlmStreamResponseChunk } from "..";
export interface GroqConfig {
apiKey?: string;
apiUrl?: string;
name?: string;
}
/** Provides access to Groq and other compatible services */
export declare class GroqProviderNative implements LlmCoreProvider {
readonly name: string;
readonly client: Groq;
constructor({ apiKey, apiUrl, name }?: GroqConfig);
generateResponse(model: string, messages: LlmMessage[], config?: LlmGenerationConfig): Promise<LlmResponse>;
generateResponseStream(model: string, messages: LlmMessage[], config?: Omit<LlmGenerationConfig, "tools" | "toolChoice">): AsyncGenerator<LlmStreamResponseChunk | LlmStreamResponse, void, unknown>;
getAvailableModels(): Promise<string[]>;
createEmbedding(model: string, text: string): Promise<number[]>;
}