Trình bổ trợ AI tạo sinh của Google

Trình bổ trợ AI tạo sinh của Google cung cấp giao diện cho các mô hình Gemini của Google thông qua Gemini API.

Lắp đặt

npm i --save @genkit-ai/googleai

Cấu hình

Để sử dụng trình bổ trợ này, hãy chỉ định trình bổ trợ đó khi bạn gọi configureGenkit():

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

export default configureGenkit({
  plugins: [googleAI()],
  // ...
});

Trình bổ trợ này yêu cầu bạn phải có một khoá API cho Gemini API mà bạn có thể lấy từ Google AI Studio

Định cấu hình trình bổ trợ để sử dụng khoá API bằng cách làm theo một trong những cách sau:

  • Đặt biến môi trường GOOGLE_GENAI_API_KEY thành khoá API.

  • Chỉ định khoá API khi bạn khởi chạy trình bổ trợ:

    googleAI({ apiKey: yourKey });
    

    Tuy nhiên, đừng nhúng khóa API trực tiếp vào mã! Chỉ sử dụng tính năng này cùng với một dịch vụ như Cloud Secret Manager hoặc các dịch vụ tương tự.

Một số mô hình (như Gemini 1.5 Pro) đang ở giai đoạn xem trước và chỉ có sẵn thông qua API v1beta. Bạn có thể chỉ định apiVersion để có quyền truy cập vào các mô hình đó:

configureGenkit({
  plugins: [googleAI({ apiVersion: 'v1beta' })],
});

hoặc bạn có thể chỉ định nhiều phiên bản nếu muốn sử dụng các phiên bản khác nhau của mô hình cùng một lúc.

configureGenkit({
  plugins: [googleAI({ apiVersion: ['v1', 'v1beta'] })],
});

Cách sử dụng

Trình bổ trợ này xuất tĩnh các tệp tham chiếu đến các mô hình được hỗ trợ:

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

Bạn có thể sử dụng các tệp tham chiếu này để chỉ định mô hình mà generate() sử dụng:

const llmResponse = await generate({
  model: gemini15Flash,
  prompt: 'Tell me a joke.',
});

hoặc sử dụng trình nhúng (ví dụ: textEmbeddingGecko001) với embed hoặc trình truy xuất:

const embedding = await embed({
  embedder: textEmbeddingGecko001,
  content: input,
});

Gemini Files API

Bạn có thể sử dụng các tệp được tải lên Gemini Files API bằng Genkit:

import { GoogleAIFileManager } from '@google/generative-ai/server';

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 generate({
  model: gemini15Flash,
  prompt: [
    {text: 'Describe this image:'},
    {media: {contentType: uploadResult.file.mimeType, url: uploadResult.file.uri}}
  ]
});

Mô hình được tinh chỉnh

Bạn có thể sử dụng các mô hình được tinh chỉnh bằng API Google Gemini. Làm theo hướng dẫn của Gemini API hoặc tinh chỉnh mô hình bằng AI Studio.

Quá trình điều chỉnh sẽ sử dụng một mô hình cơ sở (ví dụ: Gemini 1.5 Flash) và các ví dụ mà bạn cung cấp để tạo một mô hình được điều chỉnh mới. Hãy nhớ mô hình cơ sở mà bạn đã sử dụng và sao chép mã nhận dạng của mô hình mới.

Khi gọi mô hình đã điều chỉnh trong Genkit, hãy sử dụng mô hình cơ sở làm tham số model và truyền mã nhận dạng của mô hình đã điều chỉnh dưới dạng một phần của khối config. Ví dụ: nếu sử dụng Gemini 1.5 Flash làm mô hình cơ sở và có mã mô hình tunedModels/my-example-model-apbm8oqbvuv2, bạn có thể gọi phiên bản này bằng một khối như sau:

const llmResponse = await generate({
  prompt: `Suggest an item for the menu of fish themed restruant`,
  model: gemini15Flash,
  config: {
    version: "tunedModels/my-example-model-apbm8oqbvuv2",
  },
});