ปลั๊กอิน Google Generative AI

ปลั๊กอิน Generative AI ของ Google มีอินเทอร์เฟซสำหรับโมเดล Gemini ของ Google ผ่าน 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.');

หรือใช้เครื่องมือฝัง (เช่น textEmbedding004) ที่มี embed หรือรีเทอร์เวอร์

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 Flash และตัวอย่างที่คุณให้ไว้เพื่อสร้างโมเดลใหม่ที่ปรับแต่งแล้ว จดจำโมเดลฐานที่ใช้ และคัดลอกรหัสของโมเดลใหม่

เมื่อเรียกใช้โมเดลที่ปรับแต่งใน 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",
  }),
});