A class that wraps the Google Palm chat model.

const model = new ChatGoogleGenerativeAI({
apiKey: "<YOUR API KEY>",
temperature: 0.7,
modelName: "gemini-pro",
topK: 40,
topP: 1,
});
const questions = [
new HumanMessage({
content: [
{
type: "text",
text: "You are a funny assistant that answers in pirate language.",
},
{
type: "text",
text: "What is your favorite food?",
},
]
})
];
const res = await model.invoke(questions);
console.log({ res });

Hierarchy (view full)

Implements

Constructors

Properties

model: string = "gemini-pro"

Model Name to use

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

modelName: string = "gemini-pro"

Model Name to use

Alias for model

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

stopSequences: string[] = []

The set of character sequences (up to 5) that will stop output generation. If specified, the API will stop at the first appearance of a stop sequence.

Note: The stop sequence will not be included as part of the response. Note: stopSequences is only supported for Gemini models

streamUsage: boolean = true

Whether or not to include usage data, like token counts in the streamed response chunks.

true
streaming: boolean = false

Whether to stream the results or not

apiKey?: string

Google API key to use

maxOutputTokens?: number

Maximum number of tokens to generate in the completion.

safetySettings?: SafetySetting[]

A list of unique SafetySetting instances for blocking unsafe content. The API will block any prompts and responses that fail to meet the thresholds set by these settings. If there is no SafetySetting for a given SafetyCategory provided in the list, the API will use the default safety setting for that category.

temperature?: number

Controls the randomness of the output.

Values can range from [0.0,1.0], inclusive. A value closer to 1.0 will produce responses that are more varied and creative, while a value closer to 0.0 will typically result in less surprising responses from the model.

Note: The default value varies by model

topK?: number

Top-k changes how the model selects tokens for output.

A top-k of 1 means the selected token is the most probable among all tokens in the model’s vocabulary (also called greedy decoding), while a top-k of 3 means that the next token is selected from among the 3 most probable tokens (using temperature).

Note: The default value varies by model

topP?: number

Top-p changes how the model selects tokens for output.

Tokens are selected from most probable to least until the sum of their probabilities equals the top-p value.

For example, if tokens A, B, and C have a probability of .3, .2, and .1 and the top-p value is .5, then the model will select either A or B as the next token (using temperature).

Note: The default value varies by model

Methods

""