@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
71 lines (70 loc) • 2.44 kB
TypeScript
/**
* Reranker Implementation
*
* Multi-factor scoring system for reranking retrieval results.
* Combines semantic relevance (LLM-based), vector similarity, and position.
*/
import type { VectorQueryResult, RerankerOptions, RerankResult, AIProvider } from "../../types/index.js";
/**
* Rerank vector search results using multi-factor scoring
*
* Combines three scoring factors:
* 1. Semantic score: LLM-based relevance assessment
* 2. Vector score: Original similarity score from vector search
* 3. Position score: Inverse of original ranking position
*
* @param results - Vector search results to rerank
* @param query - Original search query
* @param model - Language model for semantic scoring
* @param options - Reranking options
* @returns Reranked results with detailed scores
*/
export declare function rerank(results: VectorQueryResult[], query: string, model: AIProvider, options?: RerankerOptions): Promise<RerankResult[]>;
/**
* Batch rerank with optimized LLM calls
* Scores multiple documents in a single prompt for efficiency
*
* @param results - Results to rerank
* @param query - Search query
* @param model - Language model
* @param options - Reranking options
* @returns Reranked results
*/
export declare function batchRerank(results: VectorQueryResult[], query: string, model: AIProvider, options?: RerankerOptions): Promise<RerankResult[]>;
/**
* Simple position-based reranker (no LLM required)
* Uses only vector score and position
*
* @param results - Results to rerank
* @param options - Reranking options
* @returns Reranked results
*/
export declare function simpleRerank(results: VectorQueryResult[], options?: {
topK?: number;
vectorWeight?: number;
positionWeight?: number;
}): RerankResult[];
/**
* Cohere-style relevance scorer interface
* Placeholder for integration with Cohere's rerank API
*/
export declare class CohereRelevanceScorer {
private modelName;
constructor(modelName?: string);
score(_query: string, _documents: string[]): Promise<Array<{
index: number;
score: number;
}>>;
}
/**
* Cross-encoder style reranker interface
* Placeholder for integration with cross-encoder models
*/
export declare class CrossEncoderReranker {
private modelName;
constructor(modelName?: string);
rerank(_query: string, _documents: string[]): Promise<Array<{
index: number;
score: number;
}>>;
}