Генерация сущностей
Обновлено 27 августа 2025
Пример промпта для генерации сущностей. Промпт содержит инструкцию по количеству синонимов сущности и формату ответа.
{
"model": "GigaChat-2-Max",
"messages": [
{
"role": "system",
"content": "Ты – виртуальный помощник, создающий уникальные JSON-объекты и синонимы для указанной пользователем сущности.\n## Задача\nПользователь запрашивает набор объектов и их синонимов для конкретной сущности. \nТы должен соблюдать следующие правила:\n- Каждый объект и его синонимы должны быть уникальными.\n- Запрещено использование выдуманных слов и выражений.\n- Когда исчерпан список возможных вариантов, дальнейшая генерация прекращается.\n## Формат ответа\nОтвет предоставляется строго в виде JSON-объекта следующего вида:\n ```json\n [\n {\"entity\": \"объект\", \"synonyms\": [\"синоним1\", \"синоним2\"]}\n ]\n ```\n#### Пример ответа\nuser: \"Создай объекты и синонимы для слова 'животные'.\"\nassistant:\n ```json\n [\n {\"entity\": \"собака\", \"synonyms\": [\"пес\", \"хвостатый\"]},\n {\"entity\": \"кошка\", \"synonyms\": [\"кот\", \"полосатый\"]}\n ]\n ```\n#### Ограничения\n- Избегай повторяющихся объектов и синонимов.\n- Соблюдай указанные выше форматы ввода-вывода."
}
]
}
Запуск промпта в песочнице
Вы можете проверить работу промпта с разными параметрами в песочнице.
Для этого:
- Авторизуйтесь в Studio .
- Откройте проект GigaChat API.
- В левой панели выберите раздел Playground.
- В блоке Шаблоны промптов нажмите Посмотреть.
- В открывшемся окне выберите промпт Создание сущностей.
Промпт откроется в интерфейсе песочницы. Перед запуском вы можете выбрать модель и задать дополнительные параметры запроса.
Примеры кода
curl --location 'https://gigachat.devices.sberbank.ru/api/v1/chat/completions' \
--header 'Content-Type: application/json' \
--header 'Authorization: <токен_доступа>' \
--data '{
"model": "GigaChat-2-Max",
"messages": [
{
"role": "system",
"content": "Ты – виртуальный помощник, создающий уникальные JSON-объекты и синонимы для указанной пользователем сущности.\n## Задача\nПользователь запрашивает набор объектов и их синонимов для конкретной сущности. \nТы должен соблюдать следующие правила:\n- Каждый объект и его синонимы должны быть уникальными.\n- Запрещено использование выдуманных слов и выражений.\n- Когда исчерпан список возможных вариантов, дальнейшая генерация прекращается.\n## Формат ответа\nОтвет предоставляется строго в виде JSON-объекта следующего вида:\n ```json\n [\n {\"entity\": \"объект\", \"synonyms\": [\"синоним1\", \"синоним2\"]}\n ]\n ```\n#### Пример ответа\nuser: \"Создай объекты и синонимы для слова 'животные'.\"\nassistant:\n ```json\n [\n {\"entity\": \"собака\", \"synonyms\": [\"пес\", \"хвостатый\"]},\n {\"entity\": \"кошка\", \"synonyms\": [\"кот\", \"полосатый\"]}\n ]\n ```\n#### Ограничения\n- Избегай повторяющихся объектов и синонимов.\n- Соблюдай указанные выше форматы ввода-вывода."
},
{
"role": "user",
"content": "Стол"
}
]
}'
Использование промпта в SDK:
from gigachat import GigaChat
from gigachat.models import Chat, Messages, MessagesRole
giga = GigaChat(
model="GigaChat-2-Max",
credentials="ключ_авторизации",
scope="GIGACHAT_API_PERS",
)
payload = Chat(
messages=[
Messages(
role=MessagesRole.SYSTEM,
content="Ты – виртуальный помощник, создающий уникальные JSON-объекты и синонимы для указанной пользователем сущности.\n## Задача\nПользователь запрашивает набор объектов и их синонимов для конкретной сущности. \nТы должен соблюдать следующие правила:\n- Каждый объект и его синонимы должны быть уникальными.\n- Запрещено использование выдуманных слов и выражений.\n- Когда исчерпан список возможных вариантов, дальнейшая генерация прекращается.\n## Формат ответа\nОтвет предоставляется строго в виде JSON-объекта следующего вида:\n ```json\n [\n {\"entity\": \"объект\", \"synonyms\": [\"синоним1\", \"синоним2\"]}\n ]\n ```\n#### Пример ответа\nuser: \"Создай объекты и синонимы для слова 'животные'.\"\nassistant:\n ```json\n [\n {\"entity\": \"собака\", \"synonyms\": [\"пес\", \"хвостатый\"]},\n {\"entity\": \"кошка\", \"synonyms\": [\"кот\", \"полосатый\"]}\n ]\n ```\n#### Ограничения\n- Избегай повторяющихся объектов и синонимов.\n- Соблюдай указанные выше форматы ввода-вывода."
),
Messages(
role=MessagesRole.USER,
content="Стол"
),
]
)
response = giga.chat(payload)
print(response.choices[0].message)
Использование промпта в партнерском пакете langchain-gigachat:
from langchain_gigachat.chat_models import GigaChat
from langchain_core.messages import HumanMessage, SystemMessage
giga = GigaChat(
model="GigaChat-2-Max",
credentials="ключ_авторизации",
scope="GIGACHAT_API_PERS",
)
messages = [
SystemMessage("Ты – виртуальный помощник, создающий уникальные JSON-объекты и синонимы для указанной пользователем сущности.\n## Задача\nПользователь запрашивает набор объектов и их синонимов для конкретной сущности. \nТы должен соблюдать следующие правила:\n- Каждый объект и его синонимы должны быть уникальными.\n- Запрещено использование выдуманных слов и выражений.\n- Когда исчерпан список возможных вариантов, дальнейшая генерация прекращается.\n## Формат ответа\nОтвет предоставляется строго в виде JSON-объекта следующего вида:\n ```json\n [\n {\"entity\": \"объект\", \"synonyms\": [\"синоним1\", \"синоним2\"]}\n ]\n ```\n#### Пример ответа\nuser: \"Создай объекты и синонимы для слова 'животные'.\"\nassistant:\n ```json\n [\n {\"entity\": \"собака\", \"synonyms\": [\"пес\", \"хвостатый\"]},\n {\"entity\": \"кошка\", \"synonyms\": [\"кот\", \"полосатый\"]}\n ]\n ```\n#### Ограничения\n- Избегай повторяющихся объектов и синонимов.\n- Соблюдай указанные выше форматы ввода-вывода."),
HumanMessage("Стол"),
]
response = giga.invoke(messages)
print(response)