Створення програми ШІ за 10 хвилин: покроковий посібник

Gemini
Nodejs
AI
Гід
Створення програми ШІ за 10 хвилин: покроковий посібник cover image

З моменту появи ChatGPT і Google Gemini ми побачили, що було запущено багато програм, що використовують ці моделі. Техніка називається арбітражем, метод, який бере одне з кількох завдань, які може виконати штучний інтелект, покращує його ефективними підказками, а потім надає клієнтам як функцію.

Ця стаття буде крок за кроком інструкцією щодо інтеграції моделі Google Gemini у нашу програму Node.js. Ми побачимо, як використовувати Gemini-pro, який обробляє генеративний текст, і Gemini-pro-vision, який обробляє зображення.

Спочатку ми почнемо з налаштування проекту, а потім використаємо його на власному прикладі.

Вимоги

Починаємо

Спочатку створіть новий проект Node.js у порожній папці:

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

Тепер ми встановимо необхідні пакети для файлу середовища та Gemini SDK:

npm install dotenv @google/generative-ai

Налаштування ключа API

На платформі Google AI натисніть кнопку Отримати ключ API, щоб отримати ключ API, а потім збережіть його у файлі середовища (.env) у кореневому каталозі:

API_KEY=YOUR_GEMINI_KEY

Створіть нову папку lib і створіть у ній файл config.js, а потім для наступного кроку ми експортуємо наш ключ API:

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

const  API_KEY  =  process.env.API_KEY;

module.exports  = { API_KEY };

Налаштування Gemini SDK

На цьому кроці ми налаштуємо наші моделі, щоб ми могли використовувати їх у нашому коді. У нашій папці lib створимо 2 файли: gemini.js для обробки тексту та gemini-vision.js для обробки зображень.

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

Ми будемо використовувати експортовану функцію для створення тексту підказки. Ми можемо використовувати його для створення системи чату, перекладу тексту та багатьох інших випадків використання.

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

Ми будемо використовувати експортовану функцію для створення тексту із зображення.

Створення програми

Створіть новий файл index.js і вставте цей код:

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

main();

Тепер ми можемо імпортувати наші експортовані функції та використовувати їх для генерування тексту із запитання чи зображення.

Функція приймає шлях до файлу як аргумент, тому вам потрібно буде додати файл зображення до папки проекту, щоб перевірити його.

Наш код перетвориться на:

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

Що далі

Тепер ви можете використовувати ExpressJS для створення API замість сценарію. Ви також можете дослідити найкращі методи написання підказок для ваших випадків використання.

Нижче наведено кілька прикладів додатків, які ви можете створити:

  • Генератор метаданих SEO за допомогою API Unsplash

— Відновити перевірку, додавши додатковий сценарій, який отримує вміст із PDF

  • Біографічний автор Instagram із зображення

Ви зацікавлені в створенні кращих програм? Приєднайтеся до нашого тренінгу з веб-розробки і навчіться створювати повнофункціональний продукт!


By Omar Mokhfi

Career Services background pattern

Кар'єрні послуги

Contact Section background image

Давайте залишатися на зв'язку

Code Labs Academy © 2024 Всі права захищені.