langchain.js
    Preparing search index...

    Class that represents a document compressor that uses embeddings to drop documents unrelated to the query.

    const embeddingsFilter = new EmbeddingsFilter({
    embeddings: new OpenAIEmbeddings(),
    similarityThreshold: 0.8,
    k: 5,
    });
    const retrievedDocs = await embeddingsFilter.filterDocuments(
    getDocuments(),
    "What did the speaker say about Justice Breyer in the 2022 State of the Union?",
    );
    console.log({ retrievedDocs });

    Hierarchy (View Summary)

    Index

    Constructors

    Properties

    embeddings: EmbeddingsInterface

    Embeddings to use for embedding document contents and queries.

    k?: number = 20

    The number of relevant documents to return. Can be explicitly set to undefined, in which case similarity_threshold` must be specified. Defaults to 20

    similarityFn: any = cosineSimilarity

    Similarity function for comparing documents.

    similarityThreshold?: number

    Threshold for determining when two documents are similar enough to be considered redundant. Must be specified if k is not set.

    Methods

    • Abstract method that must be implemented by any class that extends BaseDocumentCompressor. This method takes an array of Document objects and a query string as parameters and returns a Promise that resolves with an array of compressed Document objects.

      Parameters

      • documents: DocumentInterface[]

        An array of Document objects to be compressed.

      • query: string

        A query string.

      Returns Promise<DocumentInterface[]>

      A Promise that resolves with an array of compressed Document objects.