Генерация структурированных данных
Обновлено 19 июня 2026
Модели GigaChat могут генерировать структурированные данные в соответствии с переданной в запросе JSON-схемой или регулярным выражением. Такая функциональность полезна, например, для извлечения сущностей из текста или парсинга документов.
Генерация структурированных данных доступна клиентам ООО «Салют для Бизнеса» при запросах к адресу https://api.giga.chat/.
Как и для генерации текста, для получения структурированных данных используются запросы POST /v1/chat/completions и POST /v2/chat/completions.
Формат и схема данных задаются в объекте response_format.
Возможные значения поля response_format.type:
text— принудительная генерация текста. В этом случае объектresponse_fortmatне может содержать другие поля;json_schema— генерация JSON-объекта, обернутого в строку. Схема объекта передается в полеresponse_format.schema.
Примеры запросов:
from gigachat import GigaChat
from gigachat.models import Chat, Messages, MessagesRole
from gigachat import GigaChat
client = GigaChat(
base_url="https://api.giga.chat/v1",
credentials="<ключ_авторизации>",
scope="GIGACHAT_API_CORP",
verify_ssl_certs=False,
)
PROMPT = "27 октября 2023 года у меня родился сын"
chat = Chat(
model="GigaChat-2-Max",
messages=[Messages(role=MessagesRole.USER, content=PROMPT)],
response_format={
"type": "json_schema",
"schema": {
"type": "object",
"properties": {
"date": {
"type": "string",
"description": "Дата в формате dd.mm"
},
"event": {
"type": "string",
"description": "Наименование события"
}
},
"additionalProperties": True,
"required": [
"date"
]
},
"strict": True
},
)
resp = client.chat(chat)
print(resp)