Сегодня искусственный интеллект (ИИ) все больше революционизирует принцип работы бизнеса и предоставляемые клиентам услуги.
Эта технология является для предпринимателей одной из наиболее востребованных ввиду ее способности быстро и достоверно анализировать невероятные объемы данных, открывая новые возможности для автоматизации, персонализации и предиктивной аналитики.
Но новичкам в этой области порой трудно выбрать комфортную стартовую точку. Из-за огромного множества вариантов и сложной терминологии бывает непросто понять, как внедрить ИИ в организацию.
Для этого и было написано данное руководство.
В нем вы получите подробные знания об ИИ на примере использования API OpenAI независимо от того, являетесь ли вы владельцем небольшого бизнеса, разработчиком или же руководителем в крупной корпорации. Эта статья научит вас применять искусственный интеллект для нужд бизнеса.
Приступим!
Создание аккаунта OpenAI: ваш ключ к доступу продвинутых возможностей ИИ
Если вы работали с ChatGPT, то у вас уже наверняка есть аккаунт OpenAI. Если же нет, то можете создать его, кликнув здесь. Перейдя по ссылке, в верхнем правом углу страницы вы увидите кнопку signup.
После успешного создания аккаунта вы сможете переходить на страницу управления им, кликнув по иконке профиля там же в правом верхнем углу.
Здесь вы увидите, что OpenAI зачислил на ваш аккаунт $18, предоставив возможность попробовать их ИИ, не затрачивая лишних средств.
![](https://cdn-images-1.medium.com/max/1000/0*_Nh1Vh_18c_Reymr.png)
Несмотря на то что API OpenAI является премиальным сервисом, этого бесплатного стартового предложения достаточно для того, чтобы познакомиться с возможностями платформы.
Используя предоставленные средства, вы можете опробовать ряд функций ИИ.
Чтобы создать приложение Node.js, нужно сгенерировать секретный ключ. Для этого перейдите во вкладку API keys и кликните кнопку Create new secret key.
![](https://cdn-images-1.medium.com/max/1000/0*nu-oeTCjZV77S0dF.png)
В результате вы получите личный секретный ключ, который нужно скопировать, поскольку он понадобиться в приложении Node.js.
Теперь, когда аккаунт у вас есть, пора приступить к освоению API OpenAI.
Создание приложения Node.js
Начну с основ и поэтапно буду переходить к более продвинутым темам.
В частности, я создам приложение Node.js, генерирующее код, изображения и текстовые ответы.
Поскольку для веб-разработки активно используется JavaScript, я буду создавать приложение на базе ИИ при помощи Node.js. И хотя код получится простой, он будет абсолютно функционален и полноценен.
Начнем.
1. Создание приложения Node.js
Для начала вам потребуется сам Node.js вместе с VS Code, а также некоторые навыки работы с ним. Если с этим порядок, откройте терминал и создайте в удобном расположении каталог openai
.
mkdir openai
Теперь откройте этот каталог в предпочтительном редакторе, например VS Code.
cd openai && code .
Открыв его, запустите встроенный в VS Code терминал и сгенерируйте файл package.json
в этом каталоге с помощью следующей команды:
npm init -y
Этот файл позволит устанавливать необходимые зависимости, чем мы далее и займемся, используя следующую команду:
npm i dotenv openai
Наконец, создайте файл index.js
и добавьте в объект scripts
файла package.json
строку “start”: “node index.js"
. Она позволит запускать программу командой npm start
.
Обновленный package.json
будет выглядеть примерно так:
{
"name": "openai",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"start": "node index.js"
},
"keywords": [],
"author": "",
"license": "ISC",
"dependencies": {
"dotenv": "^16.0.3",
"openai": "^3.2.1"
}
}
2. Задействуем мощь OpenAI
Ранее мы установили в приложении зависимость openai
. Этот пакет npm упрощает работу с API OpenAI.
Мы также установили dotenv
, которая позволит сохранить секретный ключ в отдельном файле .env
.
Этот файл нужно будет создать в корневом каталоге приложения. Откройте его и вставьте в него секретный ключ.
OPENAI_API_KEY=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
Примечание: не используйте ключ, приведенный в этой статье, так как он был удален. Вместо него сгенерируйте собственный. Если вы еще не создавали ключ, то можете повторить описанный процесс для его получения.
Начнем с простого примера, предоставленного пакетом OpenAI.
const dotenv = require('dotenv');
dotenv.config();
const { Configuration, OpenAIApi } = require("openai");
const configuration = new Configuration({
apiKey: process.env.OPENAI_API_KEY,
});
const openai = new OpenAIApi(configuration);
(async () => {
const response = await (await openai.listModels()).data.data;
console.log(response);
})();
Здесь мы просто перечисляем все предоставляемые API OpenAI модели.
Список доступных моделей ChatGPT можно вывести командой npm start
.
Вывод будет примерно таким:
{
id: 'code-davinci-edit-001',
object: 'model',
created: 1649880484,
owned_by: 'openai',
permission: [ [Object] ],
root: 'code-davinci-edit-001',
parent: null
},
{
id: 'text-davinci-001',
object: 'model',
created: 1649364042,
owned_by: 'openai',
permission: [ [Object] ],
root: 'text-davinci-001',
parent: null
},
....
{
id: 'code-search-ada-text-001',
object: 'model',
created: 1651172507,
owned_by: 'openai-dev',
permission: [ [Object] ],
root: 'code-search-ada-text-001',
parent: null
},
....
Тут вы можете поэкспериментировать и получить дополнительную информацию.
3. Генерация текста и кода
Теперь напишем простой код, используя модель text-davinci-003
, которая способна генерировать текст на основе представленной инструкции, используя OpenAI API.
const dotenv = require('dotenv');
dotenv.config();
const { Configuration, OpenAIApi } = require("openai");
const configuration = new Configuration({
apiKey: process.env.OPENAI_API_KEY,
});
const openai = new OpenAIApi(configuration);
(async () => {
const completion = await openai.createCompletion({
model: "text-davinci-003",
prompt: "Hello, how are you?",
});
console.log(completion.data.choices[0].text);
})();
Здесь мы вместе с инструкцией передаем используемую модель.
Выполнение этого кода приведет к генерации следующего ответа:
I’m doing well, thank you. How about you?
В этом случае вы также можете корректировать инструкцию под собственные потребности.
В качестве примера я использовал в коде ниже инструкцию: “Can you write a simple hello world python code?”.
const dotenv = require('dotenv');
dotenv.config();
const { Configuration, OpenAIApi } = require("openai");
const configuration = new Configuration({
apiKey: process.env.OPENAI_API_KEY,
});
const openai = new OpenAIApi(configuration);
(async () => {
const completion = await openai.createCompletion({
model: "text-davinci-003",
prompt: "Can you write a simple hello world python code?",
});
console.log(completion.data.choices[0].text);
})();
Этот код на выходе даст ожидаемый результат.
Тем не менее сейчас необходимо, чтобы пользователь передавал в качестве инструкции содержание, что может быть не очень удобно. Для большего удобства мы изменим код так, чтобы пользователь мог вводить инструкцию через терминал.
const dotenv = require('dotenv');
dotenv.config();
const { Configuration, OpenAIApi } = require('openai');
const readline = require('readline');
const openAi = new OpenAIApi(
new Configuration({
apiKey: process.env.OPENAI_API_KEY,
})
);
const userInterface = readline.createInterface({
input: process.stdin,
output: process.stdout,
});
userInterface.prompt();
userInterface.on('line', async (input) => {
const response = await openAi.createChatCompletion({
model: 'gpt-3.5-turbo',
messages: [{ role: 'user', content: input }],
});
console.log(response.data.choices[0].message.content);
userInterface.prompt();
});
При выполнении этого кода в терминале будет появляться окно для ввода нужной инструкции. На основе этой инструкции программа сгенерирует соответствующий вывод, используя указанную модель.
Нужно отметить, что мы задействовали другую модель под названием gpt-3.5-turbo
, которая может генерировать почти все, что угодно.
Это означает, что после ввода инструкции программа будет соответствующим образом генерировать различный вывод.
![](https://cdn-images-1.medium.com/max/1000/0*dQzEPiKoY8qQKyO6.png)
4. Генерация изображений
В предыдущем примере мы научились использовать модель для генерации текста на основе пользовательского ввода. Однако OpenAI API также умеет генерировать изображения.
Следующий код демонстрирует, как этого добиться:
const dotenv = require('dotenv');
dotenv.config();
const { Configuration, OpenAIApi } = require("openai");
const configuration = new Configuration({
apiKey: process.env.OPENAI_API_KEY,
});
const openai = new OpenAIApi(configuration);
async function createImage() {
try {
const response = await openai.createImage({
prompt: "A cute baby sea otter",
n: 2,
size: "1024x1024",
});
console.log(response.data);
} catch (error) {
console.log(error);
}
}
createImage();
Здесь мы получим два изображения, поскольку значение n было установлено на 2.
{
created: 1680000483,
data: [
{
url: 'https://oaidalleapiprodscus.blob.core.windows.net/123456789'
},
{
url: 'https://oaidalleapiprodscus.blob.core.windows.net/987654321'
}
]
}
Имейте ввиду, что представленный в выводе URL у вас работать не будет ввиду отсутствия аутентификации. Однако, когда вы выполните этот код с собственной инструкцией, он сгенерирует два изображения.
Можете смело изменять инструкцию под собственные нужды.
Читайте также:
- Как создать веб-приложение для преобразования речи в текст с Node.js
- Как использовать агенты Hugging Face для решения задач NLP
- Настраиваем автоматизированную модерацию с помощью OpenAI
Читайте нас в Telegram, VK и Дзен
Перевод статьи Nitin Sharma: No More ChatGPT: Build Your Own AI With OpenAI