Классификаторы на базе YandexGPT
Yandex AI Studio позволяет классифицировать передаваемые в промптах текстовые запросы. Классификация в моделях на базе YandexGPT реализована в AI Studio Text Classification API.
В AI Studio доступна классификация трех типов:
- Бинарная классификация относит запрос к одному из двух возможных классов. Например, спам
или не спам. - Многоклассовая классификация относит запрос к одному (и только к одному) из более чем двух классов. Например, центральный процессор компьютера может относиться только к одному поколению.
- Классификация с несколькими метками позволяет относить запрос одновременно к нескольким разным классам, которые не являются взаимоисключающими. Например, к одному и тому же посту в социальной сети может относиться одновременно несколько хештегов
.
Модели классификации доступны только в синхронном режиме.
Сервис AI Studio предоставляет классификаторы двух видов:
- по промпту на базе YandexGPT Lite и YandexGPT Pro — доступны бинарная и многоклассовая классификации;
- дообучаемые классификаторы на базе YandexGPT Lite — доступны все поддерживаемые виды классификации.
Чтобы использовать модели классификаторов Yandex AI Studio, необходима роль ai.languageModels.user или выше на каталог.
Классификаторы по промпту
Классификаторы по промпту AI Studio позволяют выполнять бинарную и многоклассовую классификацию, не требуют дообучения модели и управляются промптом. Метод fewShotClassify Text Classification API позволяет использовать два классификатора по промпту: Zero-shot и Few-shot. В метод fewShotClassify можно передать от двух до двадцати классов.
Совет
Задавайте осмысленные названия для классов labels: это обязательное условие получения корректных результатов классификации. Например: вместо классов хм и фз используйте классы химия и физика.
Классификатор Zero-shot
Классификатор Zero-shot позволяет выполнять бинарную и многоклассовую классификацию, передавая в теле запроса только идентификатор модели, описание задания, текст запроса и массив с именами классов.
Формат тела запроса для классификатора Zero-shot:
{
"modelUri": "string",
"taskDescription": "string",
"labels": [
"string",
"string",
...
"string"
],
"text": "string"
}
Где:
-
modelUri— идентификатор модели, которая будет использоваться для классификации сообщения. Параметр содержит идентификатор каталога Yandex Cloud. -
taskDescription— текстовое описание задания для классификатора. -
labels— массив классов.Задавайте осмысленные названия для классов
labels: это обязательное условие получения корректных результатов классификации. Например: вместо классовхмифзиспользуйте классыхимияифизика. -
text— текстовое содержимое сообщения.
Для запросов к классификаторам Zero-shot используйте эндпоинт https://llm.api.cloud.yandex.net/foundationModels/v1/fewShotTextClassification.
Классификатор Few-shot
Классификатор Few-shot позволяет выполнять бинарную и многоклассовую классификацию, передавая в модель массив с примерами запросов для классов, заданных в поле labels. Примеры запросов передаются в поле samples тела запроса и позволяют улучшить качество результатов, выдаваемых классификатором.
Формат тела запроса для классификатора Few-shot:
{
"modelUri": "string",
"taskDescription": "string",
"labels": [
"string",
"string",
...
"string"
],
"text": "string",
"samples": [
{
"text": "string",
"label": "string"
},
{
"text": "string",
"label": "string"
},
...
{
"text": "string",
"label": "string"
}
]
}
Где:
-
modelUri— идентификатор модели, которая будет использоваться для классификации сообщения. Параметр содержит идентификатор каталога Yandex Cloud. -
taskDescription— текстовое описание задания для классификатора. -
labels— массив классов.Задавайте осмысленные названия для классов
labels: это обязательное условие получения корректных результатов классификации. Например: вместо классовхмифзиспользуйте классыхимияифизика. -
text— текстовое содержимое сообщения. -
samples— массив с примерами запросов для классов, заданных в полеlabels. Примеры запросов передаются в виде объектов, каждый из которых содержит один образец текстового запроса и класс, к которому такой запрос следует относить.
Для запросов к классификаторам Few-shot используйте эндпоинт https://llm.api.cloud.yandex.net/foundationModels/v1/fewShotTextClassification.
Важно
Вы можете передавать несколько примеров классификации в одном запросе. Все примеры в запросе не должны превышать 6000 токенов.
Дообучаемые классификаторы
Если качество результатов классификаторов Zero-shot и Few-shot вас не устраивает или вам нужна многоклассовая классификация, дообучите собственный классификатор на базе YandexGPT Lite. Дообучаемые классификаторы могут быть обучены всем поддерживаемым типам классификации.
Чтобы выполнить запрос к дообученному классификатору, используйте метод classify Text Classification API. В этом случае в модель требуется передать только идентификатор модели и текст запроса. Имена классов, по которым модель будет распределять запросы, должны быть заданы в процессе дообучения модели и в запросе не передаются.
Формат тела запроса для дообученного классификатора:
{
"modelUri": "string",
"text": "string"
}
Где:
modelUri— идентификатор модели, которая будет использоваться для классификации сообщения. Параметр содержит идентификатор каталога Yandex Cloud и идентификатор дообученного классификатора.text— текстовое содержимое сообщения. Суммарное количество токенов на один запрос не должно превышать 8000.
Для запросов к дообучаемым классификаторам используйте эндпоинт https://llm.api.cloud.yandex.net:443/foundationModels/v1/textClassification.
Имена классов, по которым модель будет распределять запросы, должны быть заданы в процессе дообучения модели и в запросе не передаются.
Формат ответа
Все типы классификаторов AI Studio возвращают результат в следующем формате:
{
"predictions": [
{
"label": "string",
"confidence": "number",
},
{
"label": "string",
"confidence": "number",
},
...
{
"label": "string",
"confidence": "number",
}
],
"modelVersion": "string"
}
Где:
-
label— имя класса. -
confidence— значение вероятности отнесения текста запроса к данному классу.При многоклассовой классификации сумма значений полей вероятности (
confidence) для всех классов всегда равна1.При классификации с несколькими метками значение поля вероятности (
confidence) для каждого класса рассчитывается независимо (сумма значений не равна1).