UNPKG

@juspay/neurolink

Version:

Universal AI Development Platform with working MCP integration, multi-provider support, voice (TTS/STT/realtime), and professional CLI. 58+ external MCP servers discoverable, multimodal file processing, RAG pipelines. Build, test, and deploy AI applicatio

120 lines (119 loc) 3.46 kB
/** * Reranker Registry * * Centralized registry for all reranker implementations with metadata * and discovery capabilities. Follows the BaseRegistry pattern. */ import { BaseRegistry } from "../../core/infrastructure/index.js"; import type { Reranker, RerankerConfig, RerankerMetadata, RerankerType } from "../../types/index.js"; /** * Reranker Registry * * Manages registration and discovery of all reranker implementations. * Extends BaseRegistry for consistent lifecycle management. */ export declare class RerankerRegistry extends BaseRegistry<Reranker, RerankerMetadata> { private static instance; private aliasMap; private constructor(); /** * Get singleton instance */ static getInstance(): RerankerRegistry; /** * Reset singleton (for testing) */ static resetInstance(): void; /** * Register all built-in rerankers */ protected registerAll(): Promise<void>; /** * Create LLM reranker instance wrapper */ private createLLMRerankerInstance; /** * Create cross-encoder instance wrapper */ private createCrossEncoderInstance; /** * Create Cohere instance wrapper */ private createCohereInstance; /** * Create simple reranker instance wrapper */ private createSimpleRerankerInstance; /** * Create batch reranker instance wrapper */ private createBatchRerankerInstance; /** * Register a reranker with aliases */ registerReranker(type: RerankerType, factory: () => Promise<Reranker>, metadata: RerankerMetadata): void; /** * Resolve type from alias */ resolveType(nameOrAlias: string): RerankerType; /** * Get a reranker by type or alias */ getReranker(typeOrAlias: string): Promise<Reranker>; /** * Get list of available reranker types */ getAvailableRerankers(): Promise<RerankerType[]>; /** * Get metadata for a specific reranker */ getRerankerMetadata(typeOrAlias: string): RerankerMetadata | undefined; /** * Get all aliases for a type */ getAliasesForType(type: RerankerType): string[]; /** * Get all registered aliases */ getAllAliases(): Map<string, RerankerType>; /** * Check if a type or alias exists */ hasReranker(typeOrAlias: string): boolean; /** * Get rerankers by use case */ getRerankersByUseCase(useCase: string): RerankerType[]; /** * Get default configuration for a reranker */ getDefaultConfig(typeOrAlias: string): Partial<RerankerConfig> | undefined; /** * Get rerankers that don't require external APIs */ getLocalRerankers(): RerankerType[]; /** * Get rerankers that don't require AI models */ getModelFreeRerankers(): RerankerType[]; /** * Clear the registry (also clears aliases) */ clear(): void; } /** * Global reranker registry singleton */ export declare const rerankerRegistry: RerankerRegistry; /** * Convenience function to get available rerankers */ export declare function getAvailableRerankers(): Promise<RerankerType[]>; /** * Convenience function to get reranker by type */ export declare function getReranker(typeOrAlias: string): Promise<Reranker>; /** * Convenience function to get reranker metadata */ export declare function getRegisteredRerankerMetadata(typeOrAlias: string): RerankerMetadata | undefined;