AI programos kūrimas per 10 minučių: nuoseklus vadovas

Dvyniai
Nodejs
AI
vadovas

Atnaujinta September 06, 20246 Perskaityta minučių

AI programos kūrimas per 10 minučių: nuoseklus vadovas cover image

Nuo „ChatGPT“ ir „Google Gemini“ pasirodymo matėme, kad buvo paleista daug programų, naudojančių šiuos modelius. Ši technika vadinama arbitražu – metodu, kuris atlieka vieną iš daugelio užduočių, kurias gali atlikti AI, patobulina ją efektyviais raginimais ir suteikia klientams kaip funkciją.

Šis straipsnis bus nuoseklus vadovas, kaip integruoti Google Gemini modelį į mūsų Node.js programą. Pamatysime, kaip naudoti Gemini-pro, kuri tvarko generatyvinį tekstą, ir Gemini-pro-vision, kuri tvarko vaizdus.

Pirmiausia pradėsime nuo projekto nustatymo, o tada naudosime jį savo pavyzdžiu.

Reikalavimai

Node.js 18 ir naujesnė versija

Google AI Platform paskyra, kad gautumėte API raktą

Darbo pradžia

Pirmiausia tuščiame aplanke sukurkite naują Node.js projektą:

mkdir gemini-node  
cd gemini-node
npm init -y

Dabar įdiegsime reikiamus aplinkos failo ir Gemini SDK paketus:

npm install dotenv @google/generative-ai

API rakto sąranka

Savo Google AI platformoje spustelėkite mygtuką Gauti API raktą, kad gautumėte API raktą, tada išsaugokite jį aplinkos faile (.env) šakniniame kataloge:

API_KEY=YOUR_GEMINI_KEY

Sukurkite naują lib aplanką ir jame sukurkite config.js failą, tada kitam veiksmui eksportuosime savo API raktą:

const  dotenv  =  require("dotenv");
dotenv.config();

const  API_KEY  =  process.env.API_KEY;

module.exports  = { API_KEY };

Gemini SDK sąranka

Šiame žingsnyje mes nustatysime savo modelius, kad galėtume juos naudoti savo kode. Aplanke lib sukurkime 2 failus: gemini.js tekstui tvarkyti ir gemini-vision.js vaizdams tvarkyti.

1 – „Google Gemini Pro“.

const { GoogleGenerativeAI } = require("@google/generative-ai");
const { API_KEY } = require("./config");

const googleAI = new GoogleGenerativeAI(API_KEY);
const geminiConfig = {
  temperature: 0.9,
  topP: 1,
  topK: 1,
  maxOutputTokens: 4096,
};

const geminiModel = googleAI.getGenerativeModel({
  model: "gemini-pro",
  geminiConfig,
});

const generateText = async (prompt) => {
  try {
    const result = await geminiModel.generateContent(prompt);
    const response = result.response;
    return response.text();
  } catch (error) {
    console.log("response error", error);
  }
};

module.exports = { generateText };

Eksportuotą funkciją naudosime tekstui generuoti iš raginimo. Mes galime jį naudoti kurdami pokalbių sistemą, teksto vertimą ir daug kitų naudojimo atvejų.

2 – Google Gemini Vision

const { GoogleGenerativeAI } = require("@google/generative-ai");
const { API_KEY } = require("./config");
const fs = require("fs");

const googleAI = new GoogleGenerativeAI(API_KEY);
const geminiConfig = {
  temperature: 0.4,
  topP: 1,
  topK: 32,
  maxOutputTokens: 4096,
};

const geminiModel = googleAI.getGenerativeModel({
  model: "gemini-pro-vision",
  geminiConfig,
});

const interactWithImage = async (filePath) => {
  try {
    const imageFile = fs.readFileSync(filePath);
    const imageBase64 = imageFile.toString("base64");

    const promptConfig = [
      { text: "Generate a caption from this image" },
      {
        inlineData: {
          mimeType: "image/jpeg",
          data: imageBase64,
        },
      },
    ];

    const result = await geminiModel.generateContent({
      contents: [{ role: "user", parts: promptConfig }],
    });

    return result.response.text();
  } catch (error) {
    console.log("response error", error);
  }
};

module.exports = { interactWithImage };

Eksportuotą funkciją naudosime tekstui iš vaizdo generuoti.

Programėlės kūrimas

Sukurkite naują index.js failą ir įklijuokite šį kodą:

const main = async () => {
  console.log("Hello world!");
};

main();

Dabar galime importuoti eksportuotas funkcijas ir naudoti jas tekstui generuoti iš klausimo arba vaizdo raginimo.

Funkcija naudoja failo kelią kaip argumentą, todėl turėsite pridėti vaizdo failą į projekto aplanką, kad jį išbandytumėte.

Mūsų kodas bus konvertuojamas į:

const { generateText } = require("./lib/gemini");
const { interactWithImage } = require("./lib/gemini-vision");
const path = require("path");

const main = async () => {
  // Text Generation
  let textFromPrompt = await generateText(
    "tell me about bootcamps in a sentence"
  );
  console.log(textFromPrompt);

  // Caption Generation
  const directoryName = path.join(__dirname, "fish.jpg");
  let captionFromImage = await interactWithImage(directoryName);
  console.log(captionFromImage);
};

main();

Kas toliau

Dabar galite naudoti ExpressJS, kad sukurtumėte API, o ne scenarijų. Taip pat galite tyrinėti geriausią praktiką, kaip rašyti raginimus savo naudojimo atvejais.

Štai keli programų, kurias galite kurti, pavyzdžiai:

– SEO metaduomenų generatorius, naudojant Unsplash API

  • Tęskite apžvalgininką pridėdami papildomą scenarijų, kuris gauna turinį iš PDF

  • „Instagram“ biografijos rašytojas iš vaizdo

Ar domitės geresnių programų kūrimu? Prisijunkite prie žiniatinklio kūrimo stovyklos ir sužinokite, kaip sukurti visiškai funkcionalų produktą!

Apsvarstykite technologijos karjerą - sužinokite daugiau apie CLA internetines įkrovos stovyklas

Career Services background pattern

Karjeros paslaugos

Contact Section background image

Palaikykime ryšį

Code Labs Academy © 2025 Visos teisės saugomos.