Vytvoření aplikace AI za 10 minut: Průvodce krok za krokem

Blíženci
Nodejs
AI
Průvodce
Vytvoření aplikace AI za 10 minut: Průvodce krok za krokem cover image

Od doby, kdy se objevily ChatGPT a Google Gemini, jsme viděli mnoho aplikací, které využívají tyto modely. Tato technika se nazývá arbitráž, metoda, která přebírá jeden z mnoha úkolů, které umělá inteligence může dělat, vylepšuje ji účinnými výzvami a poté ji poskytuje zákazníkům jako funkci.

Tento článek bude krok za krokem průvodcem, jak integrovat model Google Gemini do naší aplikace Node.js. Uvidíme, jak používat jak Gemini-pro, který zpracovává generativní text, tak Gemini-pro-vision, který zpracovává obrázky.

Začneme nejprve nastavením projektu a poté jej použijeme na našem vlastním příkladu.

Požadavky

– Účet Google AI Platform, kde získáte náš klíč API

Začínáme

Nejprve vytvořte nový projekt Node.js v prázdné složce:

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

Nyní nainstalujeme požadované balíčky pro soubor prostředí a Gemini SDK:

npm install dotenv @google/generative-ai

Nastavení klíče API

Na platformě Google AI klikněte na tlačítko Získat klíč API, abyste získali klíč API, a poté jej uložte do souboru prostředí (.env) v kořenovém adresáři:

API_KEY=YOUR_GEMINI_KEY

Vytvořte novou složku lib a vytvořte v ní soubor config.js, poté v dalším kroku vyexportujeme náš klíč API:

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

const  API_KEY  =  process.env.API_KEY;

module.exports  = { API_KEY };

Nastavení Gemini SDK

V tomto kroku nastavíme naše modely, abychom je mohli použít v našem kódu. V naší složce lib vytvoříme 2 soubory, gemini.js pro práci s textem a gemini-vision.js pro práci s obrázky.

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

Exportovanou funkci použijeme ke generování textu z výzvy. Můžeme jej použít k vybudování chatovacího systému, překladu textu a mnoha dalších případů použití.

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

Exportovanou funkci využijeme ke generování textu z obrázku.

Vytváření aplikace

Vytvořte nový soubor index.js a vložte tento kód:

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

main();

Nyní můžeme importovat naše exportované funkce a použít je ke generování textu, ať už z otázky, nebo z obrázkové výzvy.

Funkce bere jako argument cestu k souboru, takže k otestování budete muset přidat soubor obrázku do složky projektu.

Náš kód se převede 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();

Co bude dál

Nyní můžete použít ExpressJS k vytvoření rozhraní API místo skriptu. Můžete také zkoumat osvědčené postupy při psaní výzev pro vaše případy použití.

Zde je několik příkladů aplikací, které můžete vytvořit:

– Generátor metadat SEO pomocí Unsplash API

  • Pokračujte v recenzentovi přidáním dalšího skriptu, který získává obsah z PDF

  • Instagram bio spisovatel z obrázku

Máte zájem o vytváření lepších aplikací? Připojte se k našemu bootcampu pro vývoj webu a naučte se, jak vytvořit plně funkční produkt!


By Omar Mokhfi

Career Services background pattern

Kariérní služby

Contact Section background image

Zůstaňme v kontaktu

Code Labs Academy © 2024 Všechna práva vyhrazena.