Vytvorenie aplikácie AI za 10 minút: Sprievodca krok za krokom

Blíženci
Nodejs
AI
Sprievodca
Vytvorenie aplikácie AI za 10 minút: Sprievodca krok za krokom cover image

Od objavenia sa ChatGPT a Google Gemini sme videli spustenie mnohých aplikácií využívajúcich tieto modely. Táto technika sa nazýva arbitráž, metóda, ktorá preberá jednu z viacerých úloh, ktoré môže AI robiť, vylepšuje ju účinnými výzvami a potom ju poskytuje zákazníkom ako funkciu.

Tento článok bude podrobný návod, ako integrovať model Google Gemini do našej aplikácie Node.js. Uvidíme, ako používať Gemini-pro, ktorý spracováva generatívny text, aj Gemini-pro-vision, ktorý spracováva obrázky.

Najprv začneme nastavením projektu a potom ho použijeme na našom vlastnom príklade.

Požiadavky

– účet Google AI Platform a získajte náš kľúč API

Začíname

Najprv vytvorte nový projekt Node.js v prázdnom priečinku:

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

Teraz nainštalujeme požadované balíky pre súbor prostredia a Gemini SDK:

npm install dotenv @google/generative-ai

Nastavenie kľúča API

Na platforme Google AI kliknite na tlačidlo Získať kľúč API, aby ste získali kľúč API, potom ho uložte do súboru prostredia (.env) v koreňovom adresári:

API_KEY=YOUR_GEMINI_KEY

Vytvorte nový priečinok lib a vytvorte v ňom súbor config.js, potom v ďalšom kroku vyexportujeme náš kľúč API:

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

const  API_KEY  =  process.env.API_KEY;

module.exports  = { API_KEY };

Nastavenie Gemini SDK

V tomto kroku nastavíme naše modely, aby sme ich mohli použiť v našom kóde. V našom priečinku lib vytvorme 2 súbory, gemini.js na prácu s textom a gemini-vision.js na prácu s obrázkami.

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 };

Exportovanú funkciu použijeme na vygenerovanie textu z výzvy. Môžeme ho použiť na vytvorenie chatovacieho systému, prekladu textu a mnohých ďalších prípadov použitia.

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 };

Exportovanú funkciu použijeme na vygenerovanie textu z obrázka.

Vytváranie aplikácie

Vytvorte nový súbor index.js a prilepte tento kód:

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

main();

Teraz môžeme importovať naše exportované funkcie a použiť ich na generovanie textu, buď z otázky alebo obrázkovej výzvy.

Funkcia berie ako argument cestu k súboru, takže na otestovanie budete musieť pridať súbor obrázka do priečinka projektu.

Náš kód sa prevedie na:

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();

Čo ďalej

Teraz môžete použiť ExpressJS na vytvorenie rozhrania API namiesto skriptu. Môžete tiež preskúmať osvedčené postupy pri písaní výziev pre vaše prípady použitia.

Tu je niekoľko príkladov aplikácií, ktoré môžete vytvoriť:

– SEO generátor metadát pomocou Unsplash API

  • Pokračujte v recenzentovi pridaním ďalšieho skriptu, ktorý získava obsah z PDF

  • Instagramový životopisec z obrázka

Máte záujem o vytváranie lepších aplikácií? Zapojte sa do nášho bootcampu Web Development a naučte sa, ako vytvoriť plne funkčný produkt!


By Omar Mokhfi

Career Services background pattern

Kariérne služby

Contact Section background image

Ostaňme v kontakte

Code Labs Academy © 2024 Všetky práva vyhradené.