Skip to content

MixedbreadAIReranker

Defined in: .build/typescript/packages/providers/mixedbread/src/MixedbreadAIReranker.ts:78

Node postprocessor that uses MixedbreadAI’s rerank API.

This class utilizes MixedbreadAI’s rerank model to reorder a set of nodes based on their relevance to a given query. The reranked nodes are then used for various applications like search results refinement.

const reranker = new MixedbreadAIReranker(\{ apiKey: 'your-api-key' \});
const nodes = [\{ node: new BaseNode('To bake bread you need flour') \}, \{ node: new BaseNode('To bake bread you need yeast') \}];
const query = "What do you need to bake bread?";
const result = await reranker.postprocessNodes(nodes, query);
console.log(result);
const reranker = new MixedbreadAIReranker(\{
apiKey: 'your-api-key',
model: 'mixedbread-ai/mxbai-rerank-large-v1',
topK: 5,
rankFields: ["title", "content"],
returnInput: true,
maxRetries: 5
\});
const documents = [\{ title: "Bread Recipe", content: "To bake bread you need flour" \}, \{ title: "Bread Recipe", content: "To bake bread you need yeast" \}];
const query = "What do you need to bake bread?";
const result = await reranker.rerank(documents, query);
console.log(result);
  • BaseNodePostprocessor

new MixedbreadAIReranker(params): MixedbreadAIReranker

Defined in: .build/typescript/packages/providers/mixedbread/src/MixedbreadAIReranker.ts:89

Constructor for MixedbreadRerank.

Partial<MixedbreadAIRerankerParams>

An optional object with properties to configure the instance.

MixedbreadAIReranker

If the API key is not provided or found in the environment variables.

requestParams: RerankingRequestWithoutInput

Defined in: .build/typescript/packages/providers/mixedbread/src/MixedbreadAIReranker.ts:79


requestOptions: RequestOptions

Defined in: .build/typescript/packages/providers/mixedbread/src/MixedbreadAIReranker.ts:80

postprocessNodes(nodes, query?): Promise<NodeWithScore<Metadata>[]>

Defined in: .build/typescript/packages/providers/mixedbread/src/MixedbreadAIReranker.ts:142

Reranks the nodes using the mixedbread.ai API.

NodeWithScore<Metadata>[]

Array of nodes with scores.

MessageContent

Query string.

Promise<NodeWithScore<Metadata>[]>

A Promise that resolves to an ordered list of nodes with relevance scores.

If query is undefined.

const nodes = [\{ node: new BaseNode('To bake bread you need flour') \}, \{ node: new BaseNode('To bake bread you need yeast') \}];
const query = "What do you need to bake bread?";
const result = await reranker.postprocessNodes(nodes, query);
console.log(result);

BaseNodePostprocessor.postprocessNodes


rerank(nodes, query, options?): Promise<RankedDocument[]>

Defined in: .build/typescript/packages/providers/mixedbread/src/MixedbreadAIReranker.ts:187

Returns an ordered list of documents sorted by their relevance to the provided query.

A list of documents as strings, DocumentInterfaces, or objects with a pageContent key.

BaseNode<Metadata>[] | string[] | Record<string, unknown>[]

string

The query to use for reranking the documents.

RerankingRequestWithoutInput

Optional parameters for reranking.

Promise<RankedDocument[]>

A Promise that resolves to an ordered list of documents with relevance scores.

const nodes = ["To bake bread you need flour", "To bake bread you need yeast"];
const query = "What do you need to bake bread?";
const result = await reranker.rerank(nodes, query);
console.log(result);