Хранилище компонентов Databricks

Databricks Feature Store — это центральный реестр функций, используемых в моделях искусственного интеллекта и машинного обучения. При регистрации функций и моделей в Unity Catalog вы получаете встроенное управление, родословную, точечные присоединения и обмен и обнаружение функций между рабочими пространствами.

Вы можете создавать материалы, используя два подхода.

Оба выпускают функции, управляемые каталогом Unity, которые публикуются в Интернет-магазине функций. См. Выберите стратегию написания.

При использовании Databricks весь рабочий процесс обучения модели выполняется на одной платформе, в том числе:

  • Конвейеры данных, которые загружают необработанные данные, создают таблицы характеристик, обучают модели и выполняют пакетное прогнозирование.
  • Модели и функции, обслуживающие конечные точки, доступные с одним щелчком мыши и предоставляющие миллисекунд задержки.
  • Мониторинг данных и моделей.

При использовании функций из Хранилища компонентов Databricks для обучения моделей модель автоматически отслеживает происхождение функций, которые использовались в обучении. Во время вывода модель автоматически ищет последние значения признаков. Хранилище функций Databricks также предоставляет вычисления функций по запросу для приложений в режиме реального времени, обрабатывая все задачи вычислений функций. Это устраняет отклонение обучения и обслуживания, гарантируя, что вычисления функций, используемые при выводе, совпадают с теми, которые используются во время обучения модели. Он также значительно упрощает клиентский код, так как все обращения к признакам и вычисления обрабатываются Databricks Feature Store.

Замечание

На этой странице описывается Хранилище компонентов Databricks для рабочих областей, которые включены для каталога Unity. Если рабочая область не включена для Unity Catalog, см. раздел «Хранилище компонентов рабочей области (устарело)».

Общие сведения

Общие сведения о том, как работает Хранилище компонентов Databricks и глоссарий терминов, см. в обзоре и глоссарии Databricks.

Выберите стратегию написания

Feature Store поддерживает два способа создания функций. Оба создают функции, управляемые каталогом Unity, и оба могут публиковать их в Интернет-магазине функций. В целом для большинства новых случаев рекомендуются Feature View, хотя таблицы признаков лучше всего подходят для гибких многоступенчатых пакетных нагрузок.

Strategy лучше всего подходит для Принцип работы
Рекомендуемые просмотры функций Большинство новых проектов, агрегации с временным окном и функции стриминга. Определите признаки декларативно как объекты Unity Catalog Feature . Databricks создаёт и управляет конвейерами функций. Вы можете экспериментировать с локально определёнными функциями в блокноте перед их регистрацией и материализовать конвейеры функций. Просмотры функций потока поддерживают свежие данные о функциях за секунду с прямой записью из режима реального времени в Онлайн-магазин функций.
Таблицы характеристик Функции, которые вы вычисляете с помощью Lakeflow или Spark Declarative Pipelines, а также рабочие нагрузки, требующие Delta Sharing, стороннего онлайн-магазина или общедоступного (GA) пути авторизации. Записывайте значения признаков в таблицу Delta в каталоге Unity, которая содержит первичный ключ. Вы владеете конвейером, который заполняет и обновляет таблицу.

Разработка функций

Функция Description
Просмотры функций Определяйте и вычисляйте функции декларативно с помощью Feature Views, включая агрегации с временными окнами и функции потоковой передачи.
Материализовать просмотры функций Материализуйте просмотры функций для офлайн-обучения или онлайн-обслуживания.
Таблицы компонентов в каталоге Unity Создание и работа с таблицами компонентов.

Открытие и совместное использование возможностей

Функция Description
Изучение таблиц компонентов в каталоге Unity Изучение таблиц компонентов и управление ими с помощью обозревателя каталогов и пользовательского интерфейса компонентов.
Использование тегов с таблицами компонентов и функциями в каталоге Unity Используйте простые пары "ключ-значение", чтобы классифицировать таблицы и функции функций и управлять ими.
Изучение представлений функций в каталоге Unity Просматривайте определения Feature View и статус материализации в интерфейсе Databricks.

Использование функций в рабочих процессах обучения

Функция Description
Обучение моделей с помощью таблиц компонентов Используйте функции для обучения моделей.
Соединения функций на определенный момент времени Используйте точность на определенный момент времени, чтобы создать обучающий набор данных, который отражает значения признаков по состоянию на время записи наблюдения меток.
API проектирования компонентов Python Справочник по API Python

Предоставление функций

Функция Description
Хранилища компонентов Databricks Online Обслуживают данные функций для онлайн-приложений и моделей машинного обучения в режиме реального времени. Работает на базе Databricks Lakebase.
Серверное обслуживание моделей с автоматическим поиском признаков Автоматический поиск значений параметров из онлайн-хранилища.
Конечные точки предоставления функций Предоставлять возможности моделям и приложениям вне Databricks.
Вычисление функций по запросу Вычислите значения признаков во время вывода.

Управление функциональностью и происхождение

Функция Description
Управление функциональностью и линейность Используйте каталог Unity для управления доступом к таблицам функций и просмотра происхождения таблицы признаков, модели или функции.

Tutorials

Tutorial Description
Примеры записных книжек для начала работы Базовая записная книжка. Показывает, как создать таблицу компонентов, обучить модель и запустить пакетную оценку с помощью автоматического поиска функций. Кроме того, отображается пользовательский интерфейс конструктора функций для поиска функций и просмотра происхождения.
Пример записной книжки для такси. Показывает процесс создания функций, их обновления и использования для обучения модели и пакетного вывода.
Пример. Развертывание и запрос конечной точки обслуживания компонентов Руководство и пример записной книжки, показывающие, как развернуть и запросить конечную точку обслуживания функций.
Пример: использование функций в структурированных приложениях RAG Руководство по использованию онлайновых таблиц Databricks и конечных точек подачи признаков для приложений генерации с расширенным извлечением (RAG).

Требования

Чтобы использовать Хранилище функций Databricks, рабочая область должна поддерживать Unity Catalog. Если рабочая область не включена для Unity Catalog, см. раздел «Хранилище компонентов рабочей области (устарело)».

Поддерживаемые типы данных

Databricks Feature Store и устаревшее хранилище функций рабочей области поддерживают следующие типы данных PySpark:

  • IntegerType
  • FloatType
  • BooleanType
  • StringType
  • DoubleType
  • LongType
  • TimestampType
  • DateType
  • ShortType
  • ArrayType
  • BinaryType [1]
  • DecimalType [1]
  • MapType [1]
  • StructType [2]

[1] BinaryType, DecimalTypeи MapType поддерживаются во всех версиях конструктора компонентов в каталоге Unity и в магазине компонентов рабочей области версии 0.3.5 или более поздней версии. [2] StructType поддерживается в конструкторе компонентов версии 0.6.0 или более поздней версии.

Перечисленные выше типы данных поддерживают типы функций, которые распространены в приложениях машинного обучения. Например:

  • Вы можете хранить сжатые векторы, тензоры и внедрения как ArrayType.
  • Вы можете хранить разреженные векторы, тензоры и внедрения как MapType.
  • Вы можете хранить текст как StringType.

При публикации в онлайн-магазинах функции ArrayType и MapType сохраняются в формате JSON.

В пользовательском интерфейсе хранилища признаков отображаются метаданные для типов данных признаков:

Пример сложных типов данных

Дополнительные сведения

Для получения дополнительной информации о лучших практиках скачайте Полное руководство по Feature Stores.