Class that provides a wrapper around the OpenSearch service for vector search. It provides methods for adding documents and vectors to the OpenSearch index, searching for similar vectors, and managing the OpenSearch index.

Hierarchy

Constructors

Properties

FilterType: object
embeddings: Embeddings

Methods

  • Method to add documents to the OpenSearch index. It first converts the documents to vectors using the embeddings, then adds the vectors to the index.

    Parameters

    • documents: Document<Record<string, any>>[]

      The documents to be added to the OpenSearch index.

    Returns Promise<void>

    Promise resolving to void.

  • Method to add vectors to the OpenSearch index. It ensures the index exists, then adds the vectors and associated documents to the index.

    Parameters

    • vectors: number[][]

      The vectors to be added to the OpenSearch index.

    • documents: Document<Record<string, any>>[]

      The documents associated with the vectors.

    • Optional options: {
          ids?: string[];
      }

      Optional parameter that can contain the IDs for the documents.

      • Optional ids?: string[]

    Returns Promise<void>

    Promise resolving to void.

  • Parameters

    • Optional _params: Record<string, any>

    Returns Promise<void>

  • Method to delete the OpenSearch index if it exists.

    Returns Promise<void>

    Promise resolving to void.

  • Method to check if the OpenSearch index exists.

    Returns Promise<boolean>

    Promise resolving to a boolean indicating whether the index exists.

  • Parameters

    • query: string
    • k: number = 4
    • filter: undefined | object = undefined
    • _callbacks: undefined | Callbacks = undefined

    Returns Promise<Document<Record<string, any>>[]>

  • Method to perform a similarity search on the OpenSearch index using a query vector. It returns the k most similar documents and their scores.

    Parameters

    • query: number[]

      The query vector.

    • k: number

      The number of similar documents to return.

    • Optional filter: object

      Optional filter for the OpenSearch query.

    Returns Promise<[Document<Record<string, any>>, number][]>

    Promise resolving to an array of tuples, each containing a Document and its score.

  • Parameters

    • query: string
    • k: number = 4
    • filter: undefined | object = undefined
    • _callbacks: undefined | Callbacks = undefined

    Returns Promise<[Document<Record<string, any>>, number][]>

  • Return documents selected using the maximal marginal relevance. Maximal marginal relevance optimizes for similarity to the query AND diversity among selected documents.

    Parameters

    Returns Promise<Document<Record<string, any>>[]>

    • List of documents selected by maximal marginal relevance.
  • Static method to create a new OpenSearchVectorStore from an array of Documents, embeddings, and OpenSearch client arguments.

    Parameters

    • docs: Document<Record<string, any>>[]

      The documents to be added to the OpenSearch index.

    • embeddings: Embeddings

      The embeddings used to convert the documents into vectors.

    • dbConfig: OpenSearchClientArgs

      The OpenSearch client arguments.

    Returns Promise<OpenSearchVectorStore>

    Promise resolving to a new instance of OpenSearchVectorStore.

  • Static method to create a new OpenSearchVectorStore from an existing OpenSearch index, embeddings, and OpenSearch client arguments.

    Parameters

    • embeddings: Embeddings

      The embeddings used to convert the documents into vectors.

    • dbConfig: OpenSearchClientArgs

      The OpenSearch client arguments.

    Returns Promise<OpenSearchVectorStore>

    Promise resolving to a new instance of OpenSearchVectorStore.

  • Static method to create a new OpenSearchVectorStore from an array of texts, their metadata, embeddings, and OpenSearch client arguments.

    Parameters

    • texts: string[]

      The texts to be converted into documents and added to the OpenSearch index.

    • metadatas: object | object[]

      The metadata associated with the texts. Can be an array of objects or a single object.

    • embeddings: Embeddings

      The embeddings used to convert the texts into vectors.

    • args: OpenSearchClientArgs

      The OpenSearch client arguments.

    Returns Promise<OpenSearchVectorStore>

    Promise resolving to a new instance of OpenSearchVectorStore.

Generated using TypeDoc