import { BaseEmbeddings, EmbedTextParams, EmbedTextResult, EmbedTextsParams, EmbedTextsResult } from '@memberjunction/ai'; import { Ollama } from 'ollama'; /** * Ollama implementation of the BaseEmbeddings class for local embedding generation * Supports various embedding models like nomic-embed-text, mxbai-embed-large, etc. */ export declare class OllamaEmbedding extends BaseEmbeddings { private _client; private _baseUrl; private _keepAlive; constructor(apiKey?: string); /** * Read only getter method to get the Ollama client instance */ get OllamaClient(): Ollama; /** * Read only getter method to get the Ollama client instance */ get client(): Ollama; /** * Override SetAdditionalSettings to handle Ollama specific settings */ SetAdditionalSettings(settings: Record): void; /** * Embed a single text string using Ollama */ EmbedText(params: EmbedTextParams): Promise; /** * Embed multiple texts in batch using Ollama * Note: Ollama doesn't have native batch support, so we process sequentially * For better performance, consider running multiple Ollama instances or using async processing */ EmbedTexts(params: EmbedTextsParams): Promise; /** * Ensure a model is available locally, pulling it if necessary */ private ensureModelAvailable; /** * Get available embedding models * Required by BaseEmbeddings abstract class */ GetEmbeddingModels(): Promise; /** * List available embedding models in Ollama */ listEmbeddingModels(): Promise; /** * Get information about a specific embedding model */ getModelInfo(modelName: string): Promise; /** * Get the dimension size for a specific embedding model * This is useful for setting up vector databases */ getEmbeddingDimension(modelName: string): Promise; } //# sourceMappingURL=ollama-embeddings.d.ts.map