jorel
Version:
A unified wrapper for working with LLMs from multiple providers, including streams, images, documents & automatic tool use.
17 lines (16 loc) • 1.07 kB
TypeScript
import { AzureOpenAI, OpenAI } from "openai";
import { LlmCoreProvider, LlmGenerationConfig, LlmMessage, LlmResponse, LlmStreamProviderResponseChunkEvent, LlmStreamResponseEvent } from "../../providers";
import { OpenAiAzureConfig, OpenAIConfig } from "./types";
/** Provides access to OpenAI and other compatible services */
export declare class OpenAIProvider implements LlmCoreProvider {
static readonly defaultName: string;
readonly name: string;
readonly client: OpenAI | AzureOpenAI;
readonly isAzure: boolean;
constructor(options?: OpenAiAzureConfig | OpenAIConfig);
private parseOpenAiError;
generateResponse(model: string, messages: LlmMessage[], config?: LlmGenerationConfig): Promise<LlmResponse>;
generateResponseStream(model: string, messages: LlmMessage[], config?: LlmGenerationConfig): AsyncGenerator<LlmStreamProviderResponseChunkEvent | LlmStreamResponseEvent, void, unknown>;
getAvailableModels(): Promise<string[]>;
createEmbedding(model: string, text: string, abortSignal?: AbortSignal): Promise<number[]>;
}