socraticode
Version:
SocratiCode — MCP server for local codebase indexing, semantic search, and code dependency graphs. All private, all local via Docker.
32 lines • 1.48 kB
TypeScript
/**
* Ollama embedding provider.
*
* Wraps the existing Ollama client logic (Docker or external)
* into the EmbeddingProvider interface.
*/
import type { InfraProgressCallback } from "./docker.js";
import type { EmbeddingHealthStatus, EmbeddingProvider, EmbeddingReadinessResult } from "./embedding-types.js";
/** Drop the cached client and drain its connection pool. */
export declare function resetOllamaClient(): void;
/** Check if Ollama is reachable */
export declare function isOllamaAvailable(): Promise<boolean>;
/** Check if the embedding model is already pulled */
export declare function isModelAvailable(): Promise<boolean>;
/** Pull the embedding model */
export declare function pullModel(): Promise<void>;
/** Reset the cached readiness state */
export declare function resetOllamaReadinessCache(): void;
/** Reset the auto-detection cache (for testing). */
export declare function resetAutoDetectionCache(): void;
export declare class OllamaEmbeddingProvider implements EmbeddingProvider {
readonly name = "ollama";
private onProgress?;
constructor(onProgress?: InfraProgressCallback);
ensureReady(): Promise<EmbeddingReadinessResult>;
/** Pull the embedding model with a timeout to prevent infinite hangs */
private pullModelWithTimeout;
embed(texts: string[]): Promise<number[][]>;
embedSingle(text: string): Promise<number[]>;
healthCheck(): Promise<EmbeddingHealthStatus>;
}
//# sourceMappingURL=provider-ollama.d.ts.map