UNPKG

supa-seed

Version:

A constraint-aware, framework-agnostic database seeding framework with deep PostgreSQL business logic discovery and MakerKit integration support

136 lines 3.31 kB
/** * Ollama Local Model Client * Phase 5, Checkpoint E1 - Local AI integration for asset generation */ export interface OllamaConfig { baseUrl: string; model: string; timeout: number; maxRetries: number; fallbackModels?: string[]; } export interface GenerateRequest { model: string; prompt: string; system?: string; template?: string; context?: number[]; stream?: boolean; raw?: boolean; format?: 'json'; options?: { num_keep?: number; seed?: number; num_predict?: number; top_k?: number; top_p?: number; tfs_z?: number; typical_p?: number; repeat_last_n?: number; temperature?: number; repeat_penalty?: number; presence_penalty?: number; frequency_penalty?: number; mirostat?: number; mirostat_tau?: number; mirostat_eta?: number; penalize_newline?: boolean; stop?: string[]; }; } export interface GenerateResponse { model: string; created_at: string; response: string; done: boolean; context?: number[]; total_duration?: number; load_duration?: number; prompt_eval_count?: number; prompt_eval_duration?: number; eval_count?: number; eval_duration?: number; } export interface ModelInfo { name: string; modified_at: string; size: number; digest: string; details: { format: string; family: string; families?: string[]; parameter_size: string; quantization_level: string; }; } export interface ConnectionStatus { connected: boolean; version?: string; availableModels: string[]; recommendedModel?: string; error?: string; } export declare class OllamaClient { private config; private isHealthy; private lastHealthCheck; private healthCheckInterval; constructor(config?: Partial<OllamaConfig>); /** * Check if Ollama is available and healthy */ checkHealth(): Promise<ConnectionStatus>; /** * Generate text using Ollama */ generate(request: Omit<GenerateRequest, 'model'> & { model?: string; }): Promise<GenerateResponse>; /** * Generate structured JSON response */ generateJSON<T = any>(prompt: string, system?: string, schema?: any): Promise<T>; /** * Get available models */ listModels(): Promise<ModelInfo[]>; /** * Pull a model if not available */ pullModel(name: string, onProgress?: (progress: any) => void): Promise<boolean>; /** * Get Ollama version */ private getVersion; /** * Find the best available model from our preferences */ private findBestModel; /** * Make HTTP request to Ollama API */ private makeRequest; /** * Basic schema validation */ private validateSchema; /** * Simple delay utility */ private delay; /** * Get connection status */ isConnected(): boolean; /** * Get current configuration */ getConfig(): OllamaConfig; /** * Update configuration */ updateConfig(updates: Partial<OllamaConfig>): void; } export declare const ollamaClient: OllamaClient; //# sourceMappingURL=ollama-client.d.ts.map