ai-switcher
Version:
A package which helps you switch between AI APIs using configurations, so that code changes are not required.
44 lines (43 loc) • 1.2 kB
TypeScript
export type Provider = 'anthropic' | 'openai';
export interface ModelConfig {
provider: Provider;
modelId: string;
maxTokens?: number;
temperature?: number;
}
export interface Message {
role: 'system' | 'user' | 'assistant';
content: string;
}
export interface AIClientConfig {
defaultProvider?: Provider;
defaultModel?: string;
anthropicApiKey?: string;
openaiApiKey?: string;
}
export interface CompletionOptions {
model?: string;
provider?: Provider;
maxTokens?: number;
temperature?: number;
responseFormat?: 'text' | 'json';
topP?: number;
frequencyPenalty?: number;
presencePenalty?: number;
stop?: string[];
seed?: number;
}
export declare class AIError extends Error {
provider: Provider;
statusCode?: number | undefined;
raw?: any | undefined;
constructor(message: string, provider: Provider, statusCode?: number | undefined, raw?: any | undefined);
}
export declare enum AIErrorCode {
INVALID_API_KEY = "invalid_api_key",
RATE_LIMIT = "rate_limit",
CONTEXT_LENGTH = "context_length",
BAD_REQUEST = "bad_request",
SERVER_ERROR = "server_error",
TIMEOUT = "timeout"
}