Google Üretken Yapay Zeka eklentisi, Gemini API aracılığıyla Google'ın Gemini modellerine arayüz sağlar.
Kurulum
npm i --save @genkit-ai/googleai
Yapılandırma
Bu eklentiyi kullanmak için Genkit'i ilk kez başlattığınızda belirtin:
import { genkit } from 'genkit';
import { googleAI } from '@genkit-ai/googleai';
const ai = genkit({
plugins: [googleAI()],
});
Eklenti, Gemini API için bir API anahtarı gerektirir. Bu anahtarı Google AI Studio'dan alabilirsiniz.
Aşağıdakilerden birini yaparak eklentiyi API anahtarınızı kullanacak şekilde yapılandırın:
GOOGLE_GENAI_API_KEY
ortam değişkenini API anahtarınıza ayarlayın.Eklentiyi başlatırken API anahtarını belirtin:
googleAI({ apiKey: yourKey });
Ancak API anahtarınızı doğrudan koda yerleştirmeyin. Bu özelliği yalnızca Cloud Secret Manager veya benzeri bir hizmetle birlikte kullanın.
Kullanım
Bu eklenti, desteklenen modellerine ait referansları statik olarak dışa aktarır:
import {
gemini15Flash,
gemini15Pro,
textEmbedding004,
} from '@genkit-ai/googleai';
generate()
'ün hangi modeli kullandığını belirtmek için aşağıdaki referansları kullanabilirsiniz:
const ai = genkit({
plugins: [googleAI()],
model: gemini15Flash,
});
const llmResponse = await ai.generate('Tell me a joke.');
veya yerleşik oynatıcıları (ör. textEmbedding004
) ile embed
veya retriever'ler:
const ai = genkit({
plugins: [googleAI()],
});
const embedding = await ai.embed({
embedder: textEmbedding004,
content: input,
});
Gemini Files API
Gemini Files API'ye yüklenen dosyaları Genkit ile kullanabilirsiniz:
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}}
]
});
İnce ayar yapılmış modeller
Google Gemini API ile hassas ayarlanmış modelleri kullanabilirsiniz. Gemini API'deki talimatları uygulayın veya AI Studio'yu kullanarak bir modelde ince ayar yapın.
Ayarlama işlemi, yeni bir ayarlanmış model oluşturmak için bir temel model (ör. Gemini 1.5 Flash) ve sağladığınız örnekleri kullanır. Kullandığınız temel modeli hatırlayın ve yeni modelin kimliğini kopyalayın.
Genkit'te ayarlanmış modeli çağırırken model
parametresi olarak temel modeli kullanın ve ayarlanmış modelin kimliğini config
bloğunun bir parçası olarak iletin. Örneğin, temel model olarak Gemini 1.5 Flash'ı kullandıysanız ve tunedModels/my-example-model-apbm8oqbvuv2
model kimliğini aldıysanız bunu şu şekilde çağırabilirsiniz:
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",
}),
});