ChatGPT — это платформа от OpenAI, которая позволяет создавать пользовательские чат-боты, используя языковую модель GPT-3.
Языковая модель GPT-3 (generative pre-training transformer 3, генеративный предварительно обученный трансформер 3-го поколения) — это крупнейшая продвинутая модель обработки естественного языка (NLP), разработанная OpenAI. Она обучена на огромном наборе данных из текстов, написанных человеком, и способна генерировать текст, близкий к человеческому, оперируя широким диапазоном языков и стилей.
Модель GPT-3 использует архитектуру трансформера — типа нейронной сети, оптимально подходящего для обработки последовательно передаваемых данных, таких как текст. GPT-3 способна выполнять различные задачи, связанные с языком, в том числе перевод, автоматическое реферирование и ответы на вопросы, а также генерировать текст, который трудно отличить от того, что создан человеком.
Платформа ChatGPT позволяет разработчикам использовать модель GPT-3 для создания чат-ботов, которые могут вступать в естественный диалог с пользователем. Она предоставляет разработчикам простой, интуитивно понятный интерфейс и настройки, что упрощает создание чат-ботов, которые можно интегрировать в различные приложения и платформы.
ChatGPT и Node.js
Чтобы интегрировать ChatGPT в приложение Node.js, нужно использовать API OpenAI, который предоставляет программный интерфейс для взаимодействия с моделью ChatGPT. Сначала нужно получить API-ключ OpenAI, а затем использовать клиентскую API-библиотеку, например npm-пакет openai
, для выполнения запросов к API из кода Node.js.
Получение API-ключа OpenAI
Чтобы получить API-ключ для API OpenAI, зарегистрируйтесь на сайте OpenAI.
Для этого нажмите кнопку “Sign Up” в правом верхнем углу главной страницы, а затем следуйте подсказкам по созданию нового аккаунта. После регистрации учетной записи вы сможете получить API-ключ, посетив раздел “API” в настройках аккаунта.
В разделе “API” нажмите кнопку “Generate API Key”, чтобы сгенерировать новый API-ключ, который затем можно использовать для выполнения запросов к API OpenAI из приложения Node.js. Позаботьтесь о безопасности API-ключа: не передавайте его другим лицам.
Создание проекта Node.js и установка пакета openai
Зарегистрировавшись на сайте OpenAI и получив API-ключ, приступайте к настройке нового проекта Node.js и установке пакета openai.
Сначала создайте папку нового проекта:
$ mkdir chatgpt-nodejs
Сделайте следующее изменение в папке проекта:
$ cd chatgpt-nodejs
Создайте файл package.json
с помощью следующей команды:
$ npm init -y
Теперь можно установить npm-пакет openai:
$ npm install openai
Библиотека OpenAI Node.js обеспечивает удобный доступ к API OpenAI из приложений Node.js. В следующих шагах эта библиотека будет использована для реализации приложения Node.js.
Также нужно установить пакет dotenv:
$ npm install dotenv --save
Чтобы приступить к реализации, создайте в папке проекта два новых файла: index.js
и .env
:
$ touch index.js .env
Откройте файл .env
в текстовом редакторе и вставьте следующую переменную среды (эта переменная содержит API-ключ из вашего аккаунта OpenAI):
OPENAI_API_KEY="INSERT YOUR OPENAI API KEY HERE"
Откройте файл index.js
и добавьте 2 оператора require
в его начало:
const { Configuration, OpenAIApi } = require("openai");
require('dotenv').config()
Теперь можно создать новую конфигурацию OpenAI, инициализировав объект Configuration
и передав объект в конструктор, содержащий свойство apiKey
. Значение, которое необходимо присвоить apiKey
, — это API-ключ OpenAI, который можно считать из файла .env
с помощью process.env.OPENAI_API_KEY
.
const configuration = new Configuration({
apiKey: process.env.OPENAI_API_KEY,
});
const openai = new OpenAIApi(configuration);
Далее реализуйте асинхронную функцию runCompletion
:
async function runCompletion () {
const completion = await openai.createCompletion({
model: "text-davinci-003",
prompt: "How are you today?",
});
console.log(completion.data.choices[0].text);
}
Внутри этой функции используется метод openai.createCompletion
для создания OpenAI Completion — типа языковой модели, способной генерировать текст на основе запросов пользователя. Чтобы определить модель Completion, нужно передать объект конфигурации, который содержит два свойства: model
(модель) и prompt
(запрос).
Свойство model
используется для указания языковой модели OpenAI, генерирующей ответ на текст, который присваивается свойству prompt
. Применяемая в этом случае языковая модель text-davinci-003 является той же самой языковой моделью, которая используется в фоновом режиме ChatGPT.
Ответ, полученный от OpenAI API, записывается в командную строку.
Вот полный код JavaScript для index.js
:
const { Configuration, OpenAIApi } = require("openai");
require('dotenv').config()
const configuration = new Configuration({
apiKey: process.env.OPENAI_API_KEY,
});
const openai = new OpenAIApi(configuration);
async function runCompletion () {
const completion = await openai.createCompletion({
model: "text-davinci-003",
prompt: "How are you today?",
});
console.log(completion.data.choices[0].text);
}
runCompletion();
Попробуйте запустить сценарий Node.js, набрав:
$ node index.js
После этого ответ от OpenAI можно будет прочитать в командной строке:
Читайте также:
- Как работает маршрутизация Express
- Обзор JavaScript на основе диалога с ChatGPT
- Настраиваем автоматизированную модерацию с помощью OpenAI
Читайте нас в Telegram, VK и Дзен
Перевод статьи Sebastian: A Beginner’s Guide to Integrating ChatGPT with Node.js