Class XataVectorSearch<XataClient>

Class for interacting with a Xata database as a VectorStore. Provides methods to add documents and vectors to the database, delete entries, and perform similarity searches.

Type Parameters

  • XataClient extends BaseClient

Hierarchy

Constructors

Properties

FilterType: object
embeddings: Embeddings
lc_kwargs: SerializedFields
lc_namespace: string[] = ...

A path to the module that contains the class, eg. ["langchain", "llms"] Usually should be the same as the entrypoint the class is exported from.

lc_serializable: boolean = false

Accessors

  • get lc_aliases(): undefined | {
        [key: string]: string;
    }
  • A map of aliases for constructor args. Keys are the attribute names, e.g. "foo". Values are the alias that will replace the key in serialization. This is used to eg. make argument names match Python.

    Returns undefined | {
        [key: string]: string;
    }

  • get lc_attributes(): undefined | SerializedFields
  • A map of additional attributes to merge with constructor args. Keys are the attribute names, e.g. "foo". Values are the attribute values, which will be serialized. These attributes need to be accepted by the constructor as arguments.

    Returns undefined | SerializedFields

  • get lc_secrets(): undefined | {
        [key: string]: string;
    }
  • A map of secrets, which will be omitted from serialization. Keys are paths to the secret in constructor args, e.g. "foo.bar.baz". Values are the secret ids, which will be used when deserializing.

    Returns undefined | {
        [key: string]: string;
    }

Methods

  • Method to add documents to the Xata database. Maps the page content of each document, embeds the documents using the embeddings, and adds the vectors to the database.

    Parameters

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

      Array of documents to be added.

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

      Optional object containing an array of ids.

      • Optional ids?: string[]

    Returns Promise<string[]>

    Promise resolving to an array of ids of the added documents.

  • Method to add vectors to the Xata database. Maps each vector to a row with the document's content, embedding, and metadata. Creates or replaces these rows in the Xata database.

    Parameters

    • vectors: number[][]

      Array of vectors to be added.

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

      Array of documents corresponding to the vectors.

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

      Optional object containing an array of ids.

      • Optional ids?: string[]

    Returns Promise<string[]>

    Promise resolving to an array of ids of the added vectors.

  • Method to delete entries from the Xata database. Deletes the entries with the provided ids.

    Parameters

    • params: {
          ids: string[];
      }

      Object containing an array of ids of the entries to be deleted.

      • ids: string[]

    Returns Promise<void>

    Promise resolving to void.

  • Method to perform a similarity search in the Xata database. Returns the k most similar documents along with their scores.

    Parameters

    • query: number[]

      Query vector for the similarity search.

    • k: number

      Number of most similar documents to return.

    • Optional filter: object

      Optional filter for the search.

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

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

  • The name of the serializable. Override to provide an alias or to preserve the serialized module name in minified environments.

    Implemented as a static method to support loading logic.

    Returns string

Generated using TypeDoc