Оглавление
Toggle
- Ключевые выводы
- 1. Получение ключа API OpenAI
- 2. Настройка среды разработки
- 3. Выполнение запросов API ChatGPT
- Использование API для завершения чата
- Использование API ChatGPT для дополнения текста
- Цены на API ChatGPT
- Создавайте приложения следующего поколения с помощью ChatGPT API
- Share this post!
Ключевые выводы
- OpenAI выпустила API ChatGPT, позволяющий разработчикам интегрировать возможности ChatGPT в свои приложения.
- Для начала вам понадобится ключ OpenAI API и среда разработки с официальными библиотеками.
- Вы можете использовать API ChatGPT как для завершения чата, так и для задач завершения текста, открывая возможности для различных приложений.
Выпустив свой API, OpenAI открыла возможности ChatGPT для всех. Теперь вы можете легко интегрировать функции ChatGPT в свое приложение.
Выполните следующие шаги, чтобы начать работу, независимо от того, хотите ли вы интегрировать ChatGPT в существующее приложение или разрабатывать с его помощью новые приложения.
1. Получение ключа API OpenAI
Чтобы начать использовать API ChatGPT, вам необходимо получить ключ API.
Код, используемый в этом проекте, доступен в
Репозиторий GitHub
и вы можете бесплатно использовать его по лицензии MIT.
2. Настройка среды разработки
Вы можете использовать конечную точку API напрямую или воспользоваться библиотекой openai Python/JavaScript, чтобы начать создавать приложения на базе API ChatGPT. В этом руководстве используется Python и openai-питон библиотека.
Для начала:
Убедитесь, что вы случайно не передали свой ключ API через систему контроля версий.
Добавьте файл .gitignore
в корневой каталог вашего проекта и добавьте к нему «.env», чтобы игнорировать файл dotenv.
3. Выполнение запросов API ChatGPT
GPT-3.5 Turbo, GPT-4 и GPT-4 Turbo OpenAI API — это те же модели, которые использует ChatGPT. Эти мощные модели способны понимать и генерировать текст и код на естественном языке. GPT-4 Turbo может даже обрабатывать входные изображения, что открывает возможности для нескольких целей, включая анализ изображений, анализ документов с рисунками и расшифровку текста из изображений.
Обратите внимание, что API ChatGPT — это общий термин, который относится к API OpenAI, использующим модели на основе GPT, включая модели gpt-3.5-turbo, gpt-4 и gpt-4-turbo.
API ChatGPT в первую очередь оптимизирован для чата, но он также хорошо работает для задач завершения текста. Хотите ли вы генерировать код, переводить языки или создавать проекты документов, этот API справится со всем этим.
Чтобы получить доступ к API GPT-4, вам необходимо совершить успешный платеж на сумму 1 доллар США или более. В противном случае вы можете получить сообщение об ошибке типа «Модель gpt-4 не существует или у вас нет к ней доступа».
Использование API для завершения чата
Вам необходимо настроить модель чата, чтобы подготовить ее к вызову API. Вот пример:
from openai import OpenAI
from dotenv import load_dotenv
load_dotenv()
client = OpenAI()
response = client.chat.completions.create(
model = «gpt-3.5-turbo-0125»,
temperature = 0.8,
max_tokens = 3000,
response_format={ «type»: «json_object» },
messages = [
{«role»: «system», «content»: «You are a funny comedian who tells dad jokes. The output should be in JSON format.»},
{«role»: «user», «content»: «Write a dad joke related to numbers.»},
{«role»: «assistant», «content»: «Q: How do you make 7 even? A: Take away the s.»},
{«role»: «user», «content»: «Write one related to programmers.»}
]
)
API ChatGPT отправляет ответ в следующем формате:
Вы можете извлечь содержимое ответа в виде строки JSON с помощью этого кода:
print(response.choices[0].message.content)
Запуск этого кода дает следующий результат:
Код демонстрирует вызов API ChatGPT с использованием Python. Обратите внимание, что модель понимала контекст («папина шутка») и тип ответа (форма вопросов и ответов), который мы ожидали, на основе подаваемых ей подсказок.
Наиболее важной частью конфигурации является параметр messages, который принимает массив объектов сообщений. Каждый объект сообщения содержит роль и содержимое. Вы можете использовать три типа ролей:
- система, которая настраивает контекст и поведение помощника.
- пользователь, который дает инструкции помощнику. Обычно это предоставляет конечный пользователь, но вы также можете заранее предоставить некоторые пользовательские запросы по умолчанию.
- помощник, который может включать примеры ответов.
Вы можете дополнительно настроить параметры модели температура и max_tokens, чтобы получить выходные данные в соответствии с вашими требованиями.
Чем выше температура, тем выше случайность выходного сигнала, и наоборот. Если вы хотите, чтобы ваши ответы были более целенаправленными и детерминированными, выберите более низкое значение температуры. А если вы хотите, чтобы оно было более креативным, используйте более высокое значение. Значение температуры находится в диапазоне от 0 до 2.
Как и ChatGPT, API также имеет ограничение на количество слов. Используйте параметр max_tokens, чтобы ограничить длину ответов. Имейте в виду, что установка меньшего значения max_tokens может вызвать проблемы, поскольку вывод может быть прерван на полпути.
На момент написания у модели gpt-3.5-turbo лимит токенов составлял 4096, а у модели gpt-4 — 8192. Последние модели gpt-3.5-turbo-0125 и gpt-4-turbo-preview имеют ограничения в 16 385 и 128 000 соответственно.
После большого спроса со стороны разработчиков OpenAI представила режим JSON, который предписывает модели всегда возвращать объект JSON. Вы можете включить режим JSON, установив для параметра response_format значение { «type»: «json_object» }. В настоящее время эта функция доступна только для последних моделей: gpt-3.5-turbo-0125 и gpt-4-turbo-preview.
Вы можете дополнительно настроить модель, используя другие параметры, предоставленные ОпенАИ.
Использование API ChatGPT для дополнения текста
Помимо задач многоходового диалога, Chat Completions API (ChatGPT API) хорошо справляется с завершением текста. В следующем примере показано, как настроить ChatGPT API для завершения текста:
from openai import OpenAI
from dotenv import load_dotenv
load_dotenv()
client = OpenAI()
response = client.chat.completions.create(
model = «gpt-3.5-turbo»,
temperature = 0.8,
max_tokens = 3000,
messages = [
{«role»: «system», «content»: «You are a poet who creates poems that evoke emotions.»},
{«role»: «user», «content»: «Write a short poem for programmers.»}
]
)
print(response.choices[0].message.content)
Вам даже не нужно предоставлять системную роль и ее содержимое. Предоставление только приглашения пользователя сделает всю работу за вас.
messages = [
{«role»: «user», «content»: «Write a short poem for programmers.»}
]
Запуск приведенного выше кода создаст стихотворение для программистов, например:
Цены на API ChatGPT
Цены на API ChatGPT основаны на модели «цена за 1000 токенов». Для запросов на завершение чата стоимость рассчитывается на основе количества входных токенов плюс количества выходных токенов, возвращаемых API. С точки зрения непрофессионала, токены эквивалентны фрагментам слов, где 1000 токенов примерно равны 750 словам.
Модель |
Вход |
Выход |
gpt-4-0125-предварительный просмотр |
0,01 доллара США / 1 тыс. токенов |
0,03 доллара США / 1 тыс. токенов |
gpt-4-1106-предварительный просмотр |
0,01 доллара США / 1 тыс. токенов |
0,03 доллара США / 1 тыс. токенов |
gpt-4-1106-vision-предварительный просмотр |
0,01 доллара США / 1 тыс. токенов |
0,03 доллара США / 1 тыс. токенов |
гпт-4 |
0,03 доллара США / 1 тыс. токенов |
0,06 доллара США / 1 тыс. токенов |
гпт-4-32к |
0,06 доллара США / 1 тыс. токенов |
0,12 доллара США / 1 тыс. токенов |
gpt-3.5-турбо-0125 |
0,0005 доллара США / 1 тыс. токенов |
0,0015 доллара США / 1 тыс. токенов |
gpt-3.5-турбо-инструкция |
0,0015 доллара США / 1 тыс. токенов |
0,0020 доллара США / 1 тыс. токенов |
Обратите внимание, что цены могут меняться со временем по мере улучшения модели.
Создавайте приложения следующего поколения с помощью ChatGPT API
API ChatGPT открыл разработчикам по всему миру возможность создавать инновационные продукты на базе искусственного интеллекта.
Вы можете использовать этот инструмент для разработки таких приложений, как авторы рассказов, переводчики кода, генераторы маркетинговых текстов и сумматоры текста. Ваше воображение — это предел создания приложений с использованием этой технологии.