پلاگین هوش مصنوعی Google Generative

افزونه Google Generative AI رابط هایی را برای مدل های Gemini گوگل از طریق Gemini API فراهم می کند.

نصب و راه اندازی

npm i --save @genkit-ai/googleai

پیکربندی

برای استفاده از این افزونه، زمانی که Genkit را مقداردهی می کنید، آن را مشخص کنید:

import { genkit } from 'genkit';
import { googleAI } from '@genkit-ai/googleai';

const ai = genkit({
  plugins: [googleAI()],
});

این افزونه به یک کلید API برای Gemini API نیاز دارد که می‌توانید آن را از Google AI Studio دریافت کنید.

با انجام یکی از موارد زیر، افزونه را برای استفاده از کلید API خود پیکربندی کنید:

  • متغیر محیطی GOOGLE_GENAI_API_KEY را روی کلید API خود تنظیم کنید.
  • هنگامی که افزونه را مقداردهی اولیه می کنید، کلید API را مشخص کنید:

    googleAI({ apiKey: yourKey });
    

    با این حال، کلید API خود را مستقیماً در کد قرار ندهید! از این ویژگی فقط در ارتباط با سرویسی مانند Cloud Secret Manager یا موارد مشابه استفاده کنید.

استفاده

این افزونه به صورت ایستا مراجع به مدل های پشتیبانی شده خود صادر می کند:

import {
  gemini15Flash,
  gemini15Pro,
  textEmbedding004,
} from '@genkit-ai/googleai';

می توانید از این ارجاعات برای تعیین اینکه از کدام مدل generate() استفاده می کند استفاده کنید:

const ai = genkit({
  plugins: [googleAI()],
  model: gemini15Flash,
});

const llmResponse = await ai.generate('Tell me a joke.');

یا از embedders (مثلا textEmbedding004 ) با embed یا retriever استفاده کنید:

const ai = genkit({
  plugins: [googleAI()],
});

const embedding = await ai.embed({
  embedder: textEmbedding004,
  content: input,
});

Gemini Files API

می توانید از فایل های آپلود شده در Gemini Files API با 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}}
  ]
});

مدل های دقیق تنظیم شده

می توانید از مدل هایی استفاده کنید که با Google Gemini API تنظیم شده اند. دستورالعمل‌های Gemini API را دنبال کنید یا یک مدل را با استفاده از AI Studio تنظیم کنید.

فرآیند تنظیم از یک مدل پایه - به عنوان مثال، فلش Gemini 1.5 - و نمونه های ارائه شده شما برای ایجاد یک مدل تنظیم شده جدید استفاده می کند. مدل پایه ای که استفاده کردید را به خاطر بسپارید و شناسه مدل جدید را کپی کنید.

هنگام فراخوانی مدل تنظیم شده در Genkit، از مدل پایه به عنوان پارامتر model استفاده کنید و شناسه مدل تنظیم شده را به عنوان بخشی از بلوک config ارسال کنید. به عنوان مثال، اگر از Gemini 1.5 Flash به عنوان مدل پایه استفاده کرده اید و شناسه مدل tunedModels/my-example-model-apbm8oqbvuv2 را دریافت کرده اید، می توانید آن را با:

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",
  }),
});