ym88659208ym87991671
Работа с историей чата | Документация для разработчиков

Работа с историей чата

Обновлено 6 августа 2026

Передача истории чата позволяет GigaChat работать с результатами прошлых запросов пользователя. Когда вы переписываетесь с нейросетевой моделью в веб-интерфейсе, она автоматически учитывает историю чата.

Если для обмена сообщениями вы используете GigaChat API, историю чата нужно передавать явно в поле messages запроса POST /chat/completions.

Передавайте текст сообщений (поле content) в кодировке UTF8. Это позволит снизить расход токенов при обработке сообщения.

Пример запроса с историей чата:

curl --request POST \
--url https://gigachat-ift.sberdevices.delta.sbrf.ru/v1/chat/completions \
--cert <сертификат>.pem \
--key <ключ>.key \
-d '{
"model": "GigaChat-2-Max",
"messages": [
{
"role": "user",
"content": "Когда уже ИИ захватит этот мир?"
},
{
"role": "assistant",
"content": "Пока что это не является неизбежным событием. Несмотря на то, что искусственный интеллект (ИИ) развивается быстрыми темпами и может выполнять сложные задачи все более эффективно, он по-прежнему ограничен в своих возможностях и не может заменить полностью человека во многих областях. Кроме того, существуют этические и правовые вопросы, связанные с использованием ИИ, которые необходимо учитывать при его разработке и внедрении."
},
{
"role": "user",
"content": "Думаешь, у нас еще есть шанс?"
}
]
}'

Кэширование запросов

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

Кэширование может быть полезно для:

  • разработки разговорных агентов, которые должны учитывать большой контекст для ведения диалога.
  • создания ассистентов, которые помогают писать код. Например, вы можете закэшировать кодовую базу, которую модель должна будет учитывать при автодополнении.
  • работы с большими документами.
  • передачи в модель большого набора инструкций. Например, вы можете сохранить в кэше множество различных примеров желаемого результата работы модели.
  • сохранения результатов вызовов функций, при многократном обращении к ним.

Количество кэшированных токенов, использованных в ответе, содержится в поле precached_prompt_tokens, в ответе на запрос POST /chat/completions.

Чтобы повысить вероятность использования кэшированных токенов, передавайте запросы в рамках одной сессии. Для этого используйте заголовок X-Session-IDс идентификатором сессии в формате произвольной строки. При этом если заголовок отсутствует, сервер автоматически присвоит идентификатор сессии в формате uuid4.

С 1 августа при работе с моделью GigaChat Ultra 3.5 действует новая схема тарификации токенов. Теперь счет разделен на три независимые корзины:

  • Входящие — ваши запросы, системные промпты и загруженные документы.
  • Исходящие — ответы модели.
  • Кэшированные — сохраненные в рамках одной сессии.

Подробнее про тарифы — в разделе Тарификация GigaChat API .

Примеры запросов с заголовком X-Session-ID.

curl --request POST \
--url https://gigachat-ift.sberdevices.delta.sbrf.ru/v1/chat/completions \
--cert <сертификат>.pem \
--key <ключ>.key \
-H 'Content-Type: application/json' \
-H 'X-Session-ID: session-id-1' \
-d '{
"model": "GigaChat-2-Max",
"messages": [
{
"role": "user",
"content": "Когда уже ИИ захватит этот мир?"
},
{
"role": "assistant",
"content": "Пока что это не является неизбежным событием. Несмотря на то, что искусственный интеллект (ИИ) развивается быстрыми темпами и может выполнять сложные задачи все более эффективно, он по-прежнему ограничен в своих возможностях и не может заменить полностью человека во многих областях. Кроме того, существуют этические и правовые вопросы, связанные с использованием ИИ, которые необходимо учитывать при его разработке и внедрении."
},
{
"role": "user",
"content": "Думаешь, у нас еще есть шанс?"
},
{
"role":"assistant",
"content":"Шансы у человечества хорошие! По крайней мере, пока никаких признаков настоящего захвата мира искусственным интеллектом нет — всё больше разговоров именно о взаимовыгодной интеграции технологий и людей"
},
{
"role": "user",
"content": "хорошие новости"
}
]
}'
Заметили ошибку?
Выделите текст и нажмите
Ctrl
+
Enter
, чтобы сообщить нам об ошибке