Compartir a través de


API de Python

En esta página se proporcionan vínculos a la documentación de la API de Python de Databricks Feature Engineering y Databricks legacy Workspace Feature Store e información sobre los paquetes databricks-feature-engineering de cliente y databricks-feature-store.

Nota:

A partir de la versión 0.17.0, databricks-feature-store ha quedado en desuso. Todos los módulos existentes de este paquete están ahora disponibles en databricks-feature-engineering versión 0.2.0 y posteriores. Para obtener información sobre cómo migrar a databricks-feature-engineering, consulte Migre a databricks-feature-engineering.

Matriz de compatibilidad

El paquete y el cliente que debe usar dependen de dónde se encuentran las tablas de características y de la versión de Databricks Runtime ML que está ejecutando, como se muestra en la tabla siguiente.

Para identificar la versión del paquete que está incluida en su Databricks Runtime ML, consulte la Feature Engineering compatibility matrix.

Versión de Databricks Runtime Para las tablas de características de Usar paquete Usar cliente de Python
Databricks Runtime 14.3 ML y versiones posteriores Catálogo de Unity databricks-feature-engineering FeatureEngineeringClient
Databricks Runtime 14.3 ML y versiones posteriores Área de trabajo databricks-feature-engineering FeatureStoreClient
Databricks Runtime 14.2 ML y versiones anteriores Catálogo de Unity databricks-feature-engineering FeatureEngineeringClient
Databricks Runtime 14.2 ML y versiones anteriores Área de trabajo databricks-feature-store FeatureStoreClient

Nota:

  • databricks-feature-engineering<=0.7.0 no es compatible con mlflow>=2.18.0. Para usar databricks-feature-engineering con MLflow 2.18.0 y versiones posteriores, actualice a la databricks-feature-engineering versión 0.8.0 o superior.

Notas de la versión

Consulte las notas de la versión del Almacén de características del área de trabajo heredadas e ingeniería de características de Databricks.

Referencia de API de Python para ingeniería de Características

Consulte la referencia de la API de Python de ingeniería de características.

Referencia de la API de Python del Almacén de características del área de trabajo (en desuso)

Nota:

  • A partir de la versión 0.17.0, databricks-feature-store ha quedado en desuso. Todos los módulos existentes de este paquete están ahora disponibles en databricks-feature-engineering versión 0.2.0 y posteriores.

Para databricks-feature-store v0.17.0, consulte Databricks FeatureStoreClient en Referencia de la API de Python de ingeniería de características para obtener la última referencia de la API del Almacén de características del área de trabajo.

Para la versión 0.16.3 y anteriores, utilice los enlaces proporcionados en la tabla para descargar o visualizar la referencia de la API de Python del Feature Store. Para determinar la versión preinstalada de la versión de Databricks Runtime ML, consulte la matriz de compatibilidad.

Versión Descargar PDF Referencia de la API en línea
v0.3.5 a v0.16.3 PDF de referencia de la API de Python 0.16.3 del almacén de características Referencia de la API en línea
v0.3.5 y versiones anteriores PDF de referencia de Feature Store Python API 0.3.5 Referencia de la API en línea no disponible

Paquete de Python

Esta sección describe cómo instalar los paquetes Python para usar la Ingeniería de características de Databricks y el Almacén de características del área de trabajo de Databricks.

Diseño de características

Nota:

  • A partir de la versión 0.2.0, databricks-feature-engineering contiene módulos para trabajar con tablas de características tanto en Unity Catalog como en el Almacén de características del área de trabajo. databricks-feature-engineering anteriores a la versión 0.2.0 solo funcionan con tablas de características en Unity Catalog.

Las API de ingeniería de características de Databricks están disponibles a través del paquete de cliente de Python databricks-feature-engineering. El cliente está disponible en PyPI y está preinstalado en Databricks Runtime 13.3 LTS ML y versiones posteriores.

Para ver una referencia de qué versión de cliente corresponde a qué versión de entorno de ejecución, consulte la matriz de compatibilidad.

Para instalar el cliente en Databricks Runtime:

%pip install databricks-feature-engineering

Para instalar el cliente en un entorno de Python local:

pip install databricks-feature-engineering

Repositorio de características del espacio de trabajo (obsoleto)

Nota:

  • A partir de la versión 0.17.0, databricks-feature-store ha quedado en desuso. Todos los módulos existentes de este paquete ahora están disponibles en databricks-feature-engineering, versión 0.2.0 y posteriores.
  • Consulte Migración a databricks-feature-engineering para más información.

Las API del Almacén de características de Databricks están disponibles a través del paquete cliente de Python databricks-feature-store. El cliente está disponible en PyPI y está preinstalado en Databricks Runtime para Machine Learning. Para ver una referencia de qué entorno de ejecución incluye qué versión de cliente, consulte la matriz de compatibilidad.

Para instalar el cliente en Databricks Runtime:

%pip install databricks-feature-store

Para instalar el cliente en un entorno de Python local:

pip install databricks-feature-store

Migrar a databricks-feature-engineering

Para instalar el paquete de databricks-feature-engineering, use pip install databricks-feature-engineering en lugar de pip install databricks-feature-store. Todos los módulos de databricks-feature-store se han movido a databricks-feature-engineering, por lo que no es necesario cambiar ningún código. Las instrucciones de importación como from databricks.feature_store import FeatureStoreClient seguirán funcionando después de instalar databricks-feature-engineering.

Para trabajar con tablas de características en Unity Catalog, use FeatureEngineeringClient. Para usar Workspace Feature Store, debe usar FeatureStoreClient.

Escenarios admitidos

En Databricks, lo que incluye Databricks Runtime y Databricks Runtime para Machine Learning, puede:

  • Crear, leer y escribir tablas de características.
  • Entrenar y puntuar modelos en los datos de características.
  • Publicar tablas de características en tiendas en línea para el servicio en tiempo real.

Desde un entorno local o un entorno externo a Databricks, puede hacer lo siguiente:

  • Desarrolle código con compatibilidad con IDE local.
  • Prueba unitaria mediante marcos ficticios.
  • Escribir pruebas de integración para ejecutarse en Databricks.

Limitaciones

La biblioteca cliente solo se puede ejecutar en Databricks, lo que incluye Databricks Runtime y Databricks Runtime para Machine Learning. No admite llamar a las API de ingeniería de características en Unity Catalog o Feature Store desde un entorno local o desde un entorno que no sea Databricks.

Uso de los clientes para pruebas unitarias

Puede instalar el cliente de ingeniería de características en Unity Catalog o el cliente de Feature Store localmente para ayudar a ejecutar pruebas unitarias.

Por ejemplo, para validar que un método update_customer_features llama correctamente a FeatureEngineeringClient.write_table (o para Workspace Feature Store, FeatureStoreClient.write_table), puede escribir:

from unittest.mock import MagicMock, patch

from my_feature_update_module import update_customer_features
from databricks.feature_engineering import FeatureEngineeringClient

@patch.object(FeatureEngineeringClient, "write_table")
@patch("my_feature_update_module.compute_customer_features")
def test_something(compute_customer_features, mock_write_table):
  customer_features_df = MagicMock()
  compute_customer_features.return_value = customer_features_df

  update_customer_features()  # Function being tested

  mock_write_table.assert_called_once_with(
    name='ml.recommender_system.customer_features',
    df=customer_features_df,
    mode='merge'
  )

Uso de los clientes para pruebas de integración

Puede ejecutar pruebas de integración con el cliente de ingeniería de características en Unity Catalog o el cliente de Feature Store en Databricks. Para más información, consulte Herramientas de desarrollo y guía: uso de CI/CD.