Модель чата принимает серию сообщений в качестве входных данных и возвращает сообщение, сгенерированное моделью, в качестве выхода.
Хотя формат чата позволяет легко вести несколько раундов разговоров, он одинаково подходит для однораундовых задач без разговоров. Пример вызова API:
Параметр сообщений — самый важный параметр в методе createChatCompletion, который содержит несколько объектов сообщений. Каждое сообщение имеет свою роль и может бытьsystem、user、assistantЛюбой из них.
- user: Представляет сообщение, отправленное пользователем, то есть вопрос или инструкцию, введённую пользователем. В приведённом выше коде второе и четвёртое сообщения относятся к типу user.
- ассистент: представляет ответ или ответ, данный чат-ботом, вызывая алгоритм ИИ. В приведённом выше коде третье сообщение — это сообщение типа ассистента.
- system: Представляет сообщение, отправленное системой или клиентом через код. Цель системных сообщений — предоставлять дополнительные указания или инструкции ассистенту, чтобы он мог лучше реагировать.
Чат начинается с сообщения типа системы, за которым следуют чередующиеся сообщения пользователя и ассистента. Система типа сообщений может помочь задать поведение ассистента и подсказать, как он должен отвечать на вопрос пользователя, например, системное сообщение «Вы очень полезный ассистент ИИ» из приведённого выше примера.
Весь список сообщений может быть очень коротким, с одним сообщением или очень длинным, занимающим несколько страниц.
История чата также важна при взаимодействии с чат-ботом, так как инструкции пользователя могут потребовать ссылки на предыдущие сообщения. В примере кода выше последний вопрос пользователя: «Кто чемпион?» «Это имеет смысл только тогда, когда в предыдущих новостях упоминается чемпионат мира 2022 года.
Поскольку модель машинного обучения не содержит памяти предыдущих запросов, она должна предоставлять всю релевантную информацию в ходе разговора. Если диалог не вписывается в лимит токенов модели, требуется некоторое сокращение.
|