Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Функция
Область применения:
Databricks SQL
Databricks Runtime
Внимание
Эта функция доступна в общедоступной предварительной версии и соответствии HIPAA.
Во время предварительной версии:
- Базовая языковая модель может обрабатывать несколько языков, но эта функция ИИ настраивается для английского языка.
- См. сведения о функциях с ограниченной региональной доступностью для региона "Функции ИИ".
Функция ai_classify() классифицирует текстовое содержимое в соответствии с предоставленными пользовательскими метками. Вы можете использовать простые имена меток для базовой классификации или добавить описания меток и инструкции для повышения точности для таких вариантов использования, как маршрутизация поддержки клиентов, классификация документов и анализ содержимого.
Функция принимает текст или VARIANT выходные данные из других функций ИИ, таких как ai_parse_documentвключение составных рабочих процессов.
Сведения о версии пользовательского интерфейса для итерации ai_classifyсм. в разделе "Классификация".
Требования
Лицензия Apache 2.0
Базовые модели, которые могут использоваться в настоящее время, лицензируются в соответствии с лицензией Apache 2.0, авторским правом © Apache Software Foundation. Клиенты отвечают за обеспечение соответствия применимым лицензиям модели.
Databricks рекомендует просматривать эти лицензии, чтобы обеспечить соответствие любым применимым условиям. Если модели появляются в будущем, которые лучше работают в соответствии с внутренними тестами Databricks, Databricks может изменить модель (и список применимых лицензий, предоставленных на этой странице).
Модель, работающая с этой функцией, становится доступной с помощью API модели обслуживания модели. Сведения о моделях, доступных в Databricks, и лицензиях и политиках, которые управляют использованием этих моделей, см. в применимых условиях модели.
Если модели появляются в будущем, которые лучше работают в соответствии с внутренними тестами Databricks, Databricks может изменить модели и обновить документацию.
- Эта функция доступна только в некоторых регионах, см. сведения о доступности функций ИИ.
- Эта функция недоступна в Azure Databricks классической версии SQL.
- Проверьте страницу цен на Databricks SQL.
- В Databricks Runtime 15.1 и более поздних версиях эта функция поддерживается в записных книжках Databricks, включая записные книжки, которые выполняются как задача в рабочем процессе Databricks.
- Для повышения производительности рабочих нагрузок пакетного вывода требуется Среда выполнения Databricks Runtime 15.4 ML LTS.
Синтаксис
Версия 2 (рекомендуется)
ai_classify(
content VARIANT | STRING,
labels STRING,
[options MAP<STRING, STRING>]
) RETURNS VARIANT
Версия 1
ai_classify(
content STRING,
labels ARRAY<STRING>,
[options MAP<STRING, STRING>]
) RETURNS STRING
Аргументы
Версия 2 (рекомендуется)
content: ВыражениеVARIANTилиSTRING. Принимает любую из них:- Необработанный текст в виде
STRING - Созданная
VARIANTдругой функцией ИИ (напримерai_parse_document, илиai_extract)
- Необработанный текст в виде
labels: литералSTRING, определяющий метки классификации. Метки могут быть следующими:- Простые метки: массив JSON имен меток.
["urgent", "not_urgent"] - Метки с описаниями: имена меток сопоставления объектов JSON с описаниями. Описания меток должны быть 0–1000 символов.
{ "billing_error": "Payment, invoice, or refund issues", "product_defect": "Any malfunction, bug, or breakage", "account_issue": "Login failures, password resets" }
Каждая метка должна содержать 1–100 символов.
labelsдолжен содержать не менее 2 меток и не более 500 меток.- Простые метки: массив JSON имен меток.
options: необязательный,MAP<STRING, STRING>содержащий параметры конфигурации:-
version: параметр версии для поддержки миграции ("1.0"для поведения"2.0"версии 1 для поведения версии 2). Значение по умолчанию основано на типах входных данных, но будет возвращаться к"1.0". -
instructions: глобальное описание задачи и домена для улучшения качества классификации. Должно быть меньше 20 000 символов. -
multilabel: устанавливается для"true"возврата нескольких меток при применении нескольких категорий. По умолчанию используется"false"классификация одноклеек.
-
Версия 1
contentSTRING: выражение, содержащее текст для классификации.labelsARRAY<STRING>: литерал с ожидаемыми метками классификации выходных данных. Должен содержать не менее 2 элементов и не более 20 элементов. Каждая метка должна быть 1–50 символами.options: необязательный,MAP<STRING, STRING>содержащий параметры конфигурации:-
version: параметр версии для поддержки миграции ("1.0"для поведения"2.0"версии 1 для поведения версии 2). Значение по умолчанию основано на типах входных данных, но будет возвращаться к"1.0".
-
Возвраты
Версия 2 (рекомендуется)
VARIANT Возвращает содержащийся:
{
"response": ["label_name"], // Array with single label (or multiple if multilabel=true)
"error_message": null // null on success, or error message on failure
}
Поле содержит следующее response :
- Режим одноклейки (по умолчанию): массив с одним элементом, содержащим лучшую метку сопоставления
-
Режим нескольких меток (
multilabel: "true"): массив с несколькими метками при применении нескольких категорий - Имена меток точно соответствуют указанным в параметре
labels
Возвращает значение NULLcontent, если NULL содержимое не может быть классифицировано.
Версия 1
STRINGВозвращает значение . Значение соответствует одной из строк, предоставленных в аргументе labels .
Возвращает значение NULLcontent, если NULL содержимое не может быть классифицировано.
Примеры
Версия 2 (рекомендуется)
Простые метки — только имена меток
> SELECT ai_classify(
'My password is leaked.',
'["urgent", "not_urgent"]'
);
{
"response": ["urgent"],
"error": null
}
Метки с описаниями
> SELECT ai_classify(
'Customer cannot complete checkout due to payment processing error.',
'{
"billing_error": "Payment, invoice, or refund issues",
"product_defect": "Any malfunction, bug, or breakage",
"account_issue": "Login failures, password resets",
"feature_request": "Customer suggestions for improvements"
}'
);
{
"response": ["billing_error"],
"error": null
}
Использование глобальных инструкций
> SELECT ai_classify(
'User reports app crashes on startup after update.',
'["critical", "high", "medium", "low"]',
MAP('instructions', 'Classify bug severity based on user impact and frequency.')
);
{
"response": ["critical"],
"error": null
}
Классификация нескольких меток
> SELECT ai_classify(
'Customer wants refund and reports product arrived broken.',
'{
"billing_issue": "Payment or refund requests",
"product_defect": "Damaged or malfunctioning items",
"shipping_issue": "Delivery problems"
}',
MAP('multilabel', 'true')
);
{
"response": ["billing_issue", "product_defect"],
"error": null
}
Возможность создания с помощью ai_parse_document
> WITH parsed_docs AS (
SELECT
path,
ai_parse_document(
content,
MAP('version', '2.0')
) AS parsed_content
FROM READ_FILES('/Volumes/support/tickets/', format => 'binaryFile')
)
SELECT
path,
ai_classify(
parsed_content,
'["billing_error", "product_defect", "account_issue", "feature_request"]',
MAP('instructions', 'Customer support ticket classification.')
) AS ticket_category
FROM parsed_docs;
Классификация пакетной службы
> SELECT
description,
ai_classify(
description,
'["clothing", "shoes", "accessories", "furniture", "electronics"]'
) AS category
FROM products
LIMIT 10;
Версия 1
> SELECT ai_classify("My password is leaked.", ARRAY("urgent", "not urgent"));
urgent
> SELECT
description,
ai_classify(description, ARRAY('clothing', 'shoes', 'accessories', 'furniture')) AS category
FROM
products
LIMIT 10;
Ограничения
Версия 2 (рекомендуется)
Ограничения версии 2.
Эта функция недоступна в Azure Databricks классической версии SQL.
Эту функцию нельзя использовать с представлениями.
Имена меток должны иметь 1–100 символов.
Параметр
labelsдолжен содержать от 2 до 500 уникальных меток.Описания меток должны быть 0–1000 символов.
Максимальный общий размер контекста составляет 128 000 маркеров.
Версия 1
Ограничения версии 1:
Эта функция недоступна в Azure Databricks классической версии SQL.
Эту функцию нельзя использовать с представлениями.
Имена меток должны иметь 1–50 символов.
Массив
labelsдолжен содержать от 2 до 20 меток.Входные
contentданные должны быть меньше 128 000 маркеров (около 300 000 символов).