API de Python

Esta página proporciona vínculos a la documentación de la API de Python de la Ingeniería de características de Databricks y del Almacén de características del área de trabajo de Databricks, así como información sobre los paquetes cliente databricks-feature-engineering 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 Migrar 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á desarrollada en su versión de Databricks Runtime ML, consulte la Matriz de compatibilidad de ingeniería de características.

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 Unity Catalog 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 Unity Catalog databricks-feature-engineering FeatureEngineeringClient
Databricks Runtime 14.2 ML y versiones anteriores Área de trabajo databricks-feature-store FeatureStoreClient

Referencia de la API de Python de 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 e inferiores, use los vínculos de la tabla para descargar o visualizar la referencia de la API de Python del Almacén de características. 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 por debajo de la versión 0.2.0 solo funciona 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

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 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 el Almacén de características del área de trabajo, 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 almacenes en línea de cara al 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.

Uso de los clientes para un entorno de desarrollo integrado (IDE)

Puede usar el cliente de ingeniería de características en Unity Catalog o el cliente de Feature Store con un IDE para el desarrollo de software con Databricks. Para más información, consulte Uso de dbx con Visual Studio Code.