Wtyczka Google Generative AI

Wtyczka Google Generative AI udostępnia interfejsy modeli Gemini od Google za pomocą interfejsu Gemini API.

Instalacja

npm i --save @genkit-ai/googleai

Konfiguracja

Aby użyć tej wtyczki, określ ją podczas inicjowania Genkit:

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

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

Aby korzystać z wtyczki, musisz mieć klucz API dla Gemini API, który możesz uzyskać w Google AI Studio.

Aby skonfigurować wtyczkę do używania klucza interfejsu API, wykonaj jedną z tych czynności:

  • Ustaw zmienną środowiskową GOOGLE_GENAI_API_KEY na swój klucz interfejsu API.
  • Podczas inicjowania wtyczki podaj klucz interfejsu API:

    googleAI({ apiKey: yourKey });
    

    Nie umieszczaj jednak klucza API bezpośrednio w kodzie. Używaj tej funkcji tylko w połączeniu z usługą, taką jak Cloud Secret Manager lub podobną.

Wykorzystanie

Ta wtyczka eksportuje statycznie odwołania do obsługiwanych modeli:

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

Za pomocą tych odwołań możesz określić, którego modelu używa funkcja generate():

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

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

lub używać wtyczek (np. textEmbedding004) z embed lub z programem do pobierania:

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

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

Gemini Files API

Pliki przesłane do interfejsu Gemini Files API możesz używać w 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}}
  ]
});

Modele dostrojone

Możesz używać modeli dostrojonych za pomocą interfejsu Gemini API od Google. Postępuj zgodnie z instrukcjami dotyczącymi Gemini API lub dostosuj model za pomocą AI Studio.

Proces strojenia wykorzystuje model podstawowy (np. Gemini 1.5 Flash) oraz przesłane przez Ciebie przykłady, aby utworzyć nowy dostrojony model. Zapamiętaj użyty model podstawowy i skopiuj identyfikator nowego modelu.

Podczas wywoływania dostosowanego modelu w Genkit użyj modelu podstawowego jako parametru model, a identyfikator dostosowanego modelu prześlij w ramach bloku config. Jeśli na przykład jako model podstawowy użyjesz modelu Gemini 1.5 Flash i uzyskasz identyfikator modelu tunedModels/my-example-model-apbm8oqbvuv2, możesz go wywołać za pomocą:

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