Class that extends the Embeddings class and provides methods for generating embeddings using the Google Palm API.

Example

const model = new GoogleGenerativeAIEmbeddings({
apiKey: "<YOUR API KEY>",
modelName: "embedding-001",
});

// Embed a single query
const res = await model.embedQuery(
"What would be a good company name for a company that makes colorful socks?"
);
console.log({ res });

// Embed multiple documents
const documentRes = await model.embedDocuments(["Hello world", "Bye bye"]);
console.log({ documentRes });

Hierarchy

  • Toolkit
    • GoogleGenerativeAIEmbeddings

Implements

Constructors

Properties

maxBatchSize: number = 100
modelName: string = "embedding-001"

Model Name to use

Note: The format must follow the pattern - {model}

stripNewLines: boolean = true

Whether to strip new lines from the input text. Default to true

apiKey?: string

Google API key to use

taskType?: TaskType

Type of task for which the embedding will be used

Note: currently only supported by embedding-001 model

title?: string

An optional title for the text. Only applicable when TaskType is RETRIEVAL_DOCUMENT

Note: currently only supported by embedding-001 model

Methods

  • Method that takes an array of documents as input and returns a promise that resolves to a 2D array of embeddings for each document. It calls the _embedText method for each document in the array.

    Parameters

    • documents: string[]

      Array of documents for which to generate embeddings.

    Returns Promise<number[][]>

    Promise that resolves to a 2D array of embeddings for each input document.

  • Method that takes a document as input and returns a promise that resolves to an embedding for the document. It calls the _embedText method with the document as the input.

    Parameters

    • document: string

      Document for which to generate an embedding.

    Returns Promise<number[]>

    Promise that resolves to an embedding for the input document.

Generated using TypeDoc