Динамическое назначение категорий
Динамическое назначение категорий позволяет модели классифицировать текст по заранее заданным категориям — даже без предварительного обучения на них.
С помощью функции pipeline() из Hugging Face для задачи zero-shot-classification передайте текст и предопределённые категории, чтобы найти наиболее подходящее соответствие.
Создайте классификатор, который предскажет метку для входного текста text — новостного заголовка, который уже загружен для вас.
Библиотека transformers с объектом pipelines предварительно импортирована для вашего удобства.
Примечание: В этом упражнении используется адаптированная версия пайплайна, которая позволяет вам изучить работу с этими функциями без необходимости скачивать модель.
Это упражнение является частью курса
Работа с Hugging Face
Инструкции к упражнению
- Создайте пайплайн и сохраните его в переменную
classifier. - Создайте список меток —
"politics","science","sports"— и сохраните его в переменнуюcategories. - Предскажите метку для
text, используя классификатор и заданные категории.
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
text = "AI-powered robots assist in complex brain surgeries with precision."
# Create the pipeline
____ = pipeline(____="zero-shot-classification", ____="facebook/bart-large-mnli")
# Create the categories list
categories = ["politics", "____", "____"]
# Predict the output
output = ____(____, ____)
# Print the top label and its score
print(f"Top Label: {output['labels'][0]} with score: {output['scores'][0]}")