Skip to main content
OpenAI ChatGPT — это очень мощная AI система диалога, которая может генерировать плавные и естественные ответы всего за несколько секунд, просто вводя подсказки. ChatGPT выделяется в отрасли благодаря своим выдающимся способностям к пониманию и генерации языка, и в настоящее время он широко используется в различных отраслях и сферах, его влияние становится все более значительным. Будь то повседневные беседы, креативное письмо или профессиональные консультации, программирование кода, ChatGPT может предоставить удивительную интеллектуальную помощь, значительно повышая эффективность и креативность человека. Этот документ в основном описывает процесс использования OpenAI Chat Completion API, с помощью которого мы можем легко использовать функции диалога официального OpenAI ChatGPT.

Процесс заявки

Чтобы использовать OpenAI Chat Completion API, сначала можно перейти на страницу OpenAI Chat Completion API и нажать кнопку «Acquire», чтобы получить необходимые для запроса учетные данные: Если вы еще не вошли в систему или не зарегистрированы, вас автоматически перенаправят на страницу входа, пригласив зарегистрироваться и войти в систему, после чего вы автоматически вернетесь на текущую страницу. При первой подаче заявки будет предоставлен бесплатный лимит, который можно использовать для бесплатного использования этого API.

Основное использование

Далее вы можете заполнить соответствующие поля на интерфейсе, как показано на изображении:

При первом использовании этого интерфейса нам необходимо заполнить как минимум три поля: одно из них — authorization, которое можно выбрать прямо из выпадающего списка. Другой параметр — model, model — это категория модели, которую мы выбираем для использования на официальном сайте OpenAI ChatGPT, здесь у нас в основном есть 20 моделей, подробности можно посмотреть в предоставленных моделях. Последний параметр — messages, messages — это массив наших вопросов, который представляет собой массив, позволяющий одновременно загружать несколько вопросов, каждый из которых содержит role и content, где role обозначает роль задающего вопрос, мы предоставили три роли: user, assistant, system. Другой content — это конкретное содержание нашего вопроса. Также вы можете заметить, что справа есть соответствующий сгенерированный код вызова, вы можете скопировать код и запустить его, или просто нажать кнопку «Try» для тестирования. Распространенные дополнительные параметры:
  • max_tokens: ограничивает максимальное количество токенов в одном ответе.
  • temperature: генерирует случайность, от 0 до 2, чем больше значение, тем более разнообразным будет ответ.
  • n: сколько вариантов ответа генерировать за раз.
  • response_format: настройки формата ответа.

После вызова мы обнаруживаем, что возвращаемый результат выглядит следующим образом:
Возвращаемый результат содержит несколько полей, описание которых приведено ниже:
  • id, ID задачи диалога, созданной для уникальной идентификации этой задачи.
  • model, выбранная модель OpenAI ChatGPT.
  • choices, информация о ответах ChatGPT на вопросы.
  • usage: статистическая информация о токенах для этого вопроса и ответа.
Где choices содержит информацию о ответах ChatGPT, внутри которой можно увидеть, как показано на изображении.

Можно увидеть, что поле content внутри choices содержит конкретное содержание ответа ChatGPT.

Потоковый ответ

Этот интерфейс также поддерживает потоковые ответы, что очень полезно для веб-интеграции, позволяя веб-странице реализовать эффект отображения по буквам. Если вы хотите получить потоковый ответ, вы можете изменить параметр stream в заголовке запроса на true. Изменение показано на изображении, однако код вызова должен быть соответствующим образом изменен, чтобы поддерживать потоковые ответы.

После изменения stream на true, API будет возвращать соответствующие JSON данные построчно, на уровне кода нам нужно внести соответствующие изменения, чтобы получить построчные результаты. Пример кода вызова на Python:
Вывод будет следующим:
Можно увидеть, что в ответе много data, data внутри choices является последним ответом, который соответствует описанному выше содержимому. choices - это новая информация ответа, которую вы можете интегрировать в вашу систему. Также окончание потокового ответа определяется по содержимому data, если содержимое равно [DONE], это означает, что потоковый ответ завершен. Возвращаемый результат data содержит несколько полей, описание которых приведено ниже:
  • id - уникальный идентификатор для данной задачи диалога.
  • model - выбранная модель OpenAI ChatGPT.
  • choices - информация о ответах ChatGPT на заданные вопросы.
JavaScript также поддерживается, например, код для потокового вызова Node.js выглядит следующим образом:
Пример кода на Java:
Другие языки можно адаптировать самостоятельно, принцип остается тем же.

Многоуровневый диалог

Если вы хотите интегрировать функцию многоуровневого диалога, вам нужно загрузить несколько вопросов в поле messages, конкретные примеры нескольких вопросов приведены на изображении ниже:

Пример кода вызова на Python:
Загрузив несколько вопросов, можно легко реализовать многократный диалог, и получить следующий ответ:
Как видно, информация, содержащаяся в choices, соответствует основному использованию, это включает в себя конкретное содержание ответов ChatGPT на несколько диалогов, что позволяет отвечать на соответствующие вопросы на основе нескольких диалогов.

Интеграция с OpenAI-Python

Служба OpenAI Chat Completion API основана на официальной службе OpenAI, подробности можно найти в официальном OpenAI-Python, в этой статье будет кратко описано, как использовать предоставляемую официальную службу.
  1. Сначала необходимо настроить локальную среду Python, этот процесс можно найти в Google.
  2. Установите и настройте среду разработки, например, установите редактор VSCode.
  3. Настройте переменные окружения OpenAI.
  • В папке проекта создайте файл с именем .env и сохраните его.
  • Содержимое файла .env:
Замените sk-xxx на свой ключ. OPENAI_BASE_URL — это прокси-интерфейс для доступа к OpenAI.
  1. Установите зависимости проекта
В Mac OS команда будет:
  1. Создайте файл исходного кода примера
Предположим, мы создали пример кода index.py, его содержимое следующее:

Модель с подключением к интернету

Модели gpt-3.5-browsing и gpt-4-browsing отличаются от других моделей тем, что они могут выполнять поиск в интернете на основе вопросов и возвращать результаты поиска с соответствующими корректировками. В этой статье будет представлен конкретный пример демонстрации функции подключения к интернету, после чего можно будет заполнить соответствующее содержимое на интерфейсе OpenAI Chat Completion API, как показано на изображении:

Также вы можете заметить, что справа есть соответствующий сгенерированный код вызова, вы можете скопировать код и запустить его, или просто нажать кнопку «Попробовать» для тестирования.

После вызова мы обнаружили, что возвращаемый результат следующий:
Как видно, информация ответов в choices основана на результатах интернет-запроса, и также предоставлены соответствующие ссылки. Информация ответов в choices должна быть отформатирована с использованием синтаксиса markdown, чтобы получить наилучший опыт, в конечном итоге это также подчеркивает мощные преимущества функции подключения к интернету нашей модели.

Визуальная модель

gpt-4o — это многомодальная большая языковая модель, разработанная OpenAI, которая на основе GPT-4 добавила возможности визуального понимания. Эта модель может одновременно обрабатывать текстовые и графические входные данные, реализуя кросс-модальное понимание и генерацию. Использование текстовой обработки модели gpt-4o аналогично основному использованию, описанному выше, ниже будет кратко описано, как использовать возможности обработки изображений модели. Использование возможностей обработки изображений модели gpt-4o осуществляется путем добавления поля type к исходному содержимому content, с помощью которого можно определить, загружается ли текст или изображение, чтобы использовать возможности обработки изображений модели gpt-4o. Далее будет описано, как вызвать эту функцию с помощью Curl и Python.
  • Способ с использованием Curl
  • Способ с использованием Python
Затем можно получить следующий результат, информация в результате соответствует вышеупомянутой, конкретно следующая:
Можно увидеть, что содержание ответа основано на изображении, поэтому с помощью вышеупомянутых двух способов можно легко использовать текстовые и визуальные возможности модели gpt-4-vision. Кроме gpt-4o, есть еще одна более экономичная модель, называемая gpt-4o-mini. gpt-4o-mini — это последняя версия крупной языковой модели, разработанная OpenAI, которая не только быстро реагирует, но и стоит дешевле, также поддерживает мультимодальность. Использование функции vision можно посмотреть в содержании использования модели gpt-4o выше.

Модель рисования GPT-4o

Пример запроса:
Пример результата:

Обработка ошибок

При вызове API, если возникнет ошибка, API вернет соответствующий код ошибки и информацию. Например:
  • 400 token_mismatched:Неверный запрос, возможно, из-за отсутствующих или недействительных параметров.
  • 400 api_not_implemented:Неверный запрос, возможно, из-за отсутствующих или недействительных параметров.
  • 401 invalid_token:Неавторизован, недействительный или отсутствующий токен авторизации.
  • 429 too_many_requests:Слишком много запросов, вы превысили лимит частоты.
  • 500 api_error:Внутренняя ошибка сервера, что-то пошло не так на сервере.

Пример ответа об ошибке

Заключение

С помощью этого документа вы узнали, как использовать OpenAI Chat Completion API для легкой реализации функций диалога официального OpenAI ChatGPT. Надеемся, что этот документ поможет вам лучше интегрировать и использовать этот API. Если у вас есть какие-либо вопросы, пожалуйста, не стесняйтесь обращаться в нашу техническую поддержку.