O plug-in da IA generativa do Google fornece interfaces para os modelos do Gemini do Google pela API Gemini.
Instalação
npm i --save @genkit-ai/googleai
Configuração
Para usar esse plug-in, especifique-o ao inicializar o Genkit:
import { genkit } from 'genkit';
import { googleAI } from '@genkit-ai/googleai';
const ai = genkit({
plugins: [googleAI()],
});
O plug-in exige uma chave de API para a API Gemini, que você pode acessar no Google AI Studio.
Siga um destes procedimentos para configurar o plug-in para usar sua chave de API:
- Defina a variável de ambiente
GOOGLE_GENAI_API_KEY
como sua chave de API. Especifique a chave de API ao inicializar o plug-in:
googleAI({ apiKey: yourKey });
No entanto, não incorpore a chave de API diretamente no código. Use este recurso apenas em conjunto com um serviço como o Cloud Secret Manager ou similar.
Uso
Esse plug-in exporta estaticamente referências aos modelos compatíveis:
import {
gemini15Flash,
gemini15Pro,
textEmbedding004,
} from '@genkit-ai/googleai';
Você pode usar essas referências para especificar qual modelo generate()
usa:
const ai = genkit({
plugins: [googleAI()],
model: gemini15Flash,
});
const llmResponse = await ai.generate('Tell me a joke.');
ou use embedders (por exemplo, textEmbedding004
) com embed
ou retrievers:
const ai = genkit({
plugins: [googleAI()],
});
const embedding = await ai.embed({
embedder: textEmbedding004,
content: input,
});
API Gemini Files
É possível usar arquivos enviados para a API Gemini Files com o Genkit:
import { GoogleAIFileManager } from '@google/generative-ai/server';
import { genkit } from 'genkit';
import { googleAI } from '@genkit-ai/googleai';
const ai = genkit({
plugins: [googleAI()],
});
const fileManager = new GoogleAIFileManager(process.env.GOOGLE_GENAI_API_KEY);
const uploadResult = await fileManager.uploadFile(
'path/to/file.jpg',
{
mimeType: 'image/jpeg',
displayName: 'Your Image',
}
);
const response = await ai.generate({
model: gemini15Flash,
prompt: [
{text: 'Describe this image:'},
{media: {contentType: uploadResult.file.mimeType, url: uploadResult.file.uri}}
]
});
Modelos ajustados
É possível usar modelos ajustados com a API Google Gemini. Siga as instruções da API Gemini ou ajuste um modelo usando o AI Studio.
O processo de ajuste usa um modelo base, por exemplo, o Gemini 1.5 Flash, e seus exemplos fornecidos para criar um novo modelo ajustado. Lembre-se do modelo de base que você usou e copie o ID do novo modelo.
Ao chamar o modelo ajustado no Genkit, use o modelo base como o parâmetro model
e transmita o ID do modelo ajustado como parte do bloco config
. Por
exemplo, se você usou o Gemini 1.5 Flash como modelo base e recebeu o ID de modelo
tunedModels/my-example-model-apbm8oqbvuv2
, é possível fazer a chamada com:
const ai = genkit({
plugins: [googleAI()],
});
const llmResponse = await ai.generate({
prompt: `Suggest an item for the menu of fish themed restruant`,
model: gemini15Flash.withConfig({
version: "tunedModels/my-example-model-apbm8oqbvuv2",
}),
});