Compartilhar via


API Python de engenharia de recursos e do espaço de trabalho Feature Store

Esta página fornece links para a documentação da API para Python da Engenharia de Recursos do Databricks e o Repositório de Recursos do Workspace do Databricks, além de informações sobre os pacotes databricks-feature-engineering e databricks-feature-store do cliente.

Observação

A partir da versão 0.17.0, databricks-feature-store foi preterido. Todos os módulos existentes deste pacote agora estão disponíveis no databricks-feature-engineering versão 0.2.0 e posterior. Para obter informações sobre como migrar para databricks-feature-engineering, consulte Migrar para databricks-feature-engineering.

Matriz de compatibilidade

O pacote e o cliente que você deve usar dependem de onde as tabelas de recursos estão localizadas e qual versão do Databricks Runtime ML você está executando, conforme mostrado na tabela a seguir.

Para identificar a versão do pacote integrada à sua versão do Databricks Runtime ML, consulte a matriz de compatibilidade da Engenharia de Recursos.

Versão do Databricks Runtime Para tabelas de recursos em Usar pacote Usar cliente do Python
Databricks Runtime 14.3 ML e superior Catálogo do Unity databricks-feature-engineering FeatureEngineeringClient
Databricks Runtime 14.3 ML e superior Workspace databricks-feature-engineering FeatureStoreClient
Databricks Runtime 14.2 ML e inferior Catálogo do Unity databricks-feature-engineering FeatureEngineeringClient
Databricks Runtime 14.2 ML e inferior Workspace databricks-feature-store FeatureStoreClient

Notas de versão

Consulte Notas sobre a versão para engenharia de recursos do Databricks e repositório de recursos do workspace herdado.

Referência da API para Python da Engenharia de Recursos

Consulte a referência da API para Python da Engenharia de Recursos.

Referência da API para Python do Repositório de Recursos do Workspace (preterido)

Observação

  • A partir da versão 0.17.0, databricks-feature-store foi preterido. Todos os módulos existentes deste pacote agora estão disponíveis no databricks-feature-engineering versão 0.2.0 e posterior.

Para databricks-feature-store v0.17.0, consulte o Databricks FeatureStoreClient na referência da API para Python da Engenharia de Recursos para a referência mais recente da API do Repositório de Recursos do Workspace.

Para v0.16.3 e inferior, use os links na tabela para baixar ou exibir a referência da API para Python do Repositório de Recursos. Para determinar a versão pré-instalada da versão do Databricks Runtime ML, confira a matriz de compatibilidade.

Versão Baixar PDF Referência da API Online
v0.3.5 a v0.16.3 PDF de referência da API para Python do Repositório de Recursos 0.16.3 Referência da API Online
V0.3.5 e anterior PDF de referência da API Python do Repositório de Recursos 0.3.5 Referência de API Online não disponível

Pacote do Python

Esta seção descreve como instalar pacotes do Python para usar a Engenharia de Recursos do Databricks e o Repositório de Recursos do Workspace do Databricks.

Engenharia de recursos

Observação

  • A partir da versão 0.2.0, databricks-feature-engineering contém módulos para trabalhar com tabelas de recursos no Catálogo do Unity e no Repositório de Recursos do Workspace. databricks-feature-engineering abaixo da versão 0.2.0 funciona apenas com tabelas de recursos no Catálogo do Unity.

As APIs da Engenharia de Recursos do Databricks estão disponíveis por meio do pacote databricks-feature-engineering do cliente do Python. O cliente está disponível no PyPI e está pré-instalado no Databricks Runtime 13.3 LTS ML e versões superiores.

Para ver uma referência de qual versão do cliente corresponde a qual versão do runtime, confira a matriz de compatibilidade.

Para instalar o cliente no Databricks Runtime:

%pip install databricks-feature-engineering

Para instalar o cliente em um ambiente Python local:

pip install databricks-feature-engineering

Repositório de Recursos do Workspace (preterido)

Observação

  • A partir da versão 0.17.0, databricks-feature-store foi preterido. Todos os módulos existentes deste pacote agora estão disponíveis no databricks-feature-engineering, versão 0.2.0 e posterior.
  • Consulte Migrar para databricks-feature-engineering para saber mais.

As APIs do Repositório de Recursos do Databricks estão disponíveis por meio do pacote databricks-feature-store do cliente do Python. O cliente está disponível no PyPI e é pré-instalado no Databricks Runtime para Machine Learning. Para ver uma referência de qual runtime inclui qual versão do cliente, confira a matriz de compatibilidade.

Para instalar o cliente no Databricks Runtime:

%pip install databricks-feature-store

Para instalar o cliente em um ambiente Python local:

pip install databricks-feature-store

Migrar para databricks-feature-engineering

Para instalar o pacote databricks-feature-engineering, use pip install databricks-feature-engineering em vez de pip install databricks-feature-store. Todos os módulos no databricks-feature-store foram movidos para databricks-feature-engineering, portanto, você não precisa alterar nenhum código. Instruções de importação como from databricks.feature_store import FeatureStoreClient continuarão funcionando depois que você instalar databricks-feature-engineering.

Para trabalhar com tabelas de recursos no Catálogo do Unity, use FeatureEngineeringClient. Para usar o Repositório de Recursos do Workspace, você deve usar FeatureStoreClient.

Cenários com suporte

No Databricks, incluindo o Databricks Runtime e o Databricks Runtime para Machine Learning, você pode:

  • Criar, ler e gravar tabelas de recursos.
  • Treinar e pontuar modelos em dados de recursos.
  • Publicar tabelas de recursos em lojas online por serviço em tempo real.

Em um ambiente local ou em um ambiente externo ao Databricks, você pode:

  • Desenvolver um código com suporte ao IDE local.
  • Teste de unidade usando estruturas simuladas.
  • Gravar testes de integração a serem executados no Databricks.

Limitações

A biblioteca de clientes só pode ser executada no Databricks, incluindo o Databricks Runtime e o Databricks Runtime para Machine Learning. Ela não dá suporte à chamada às APIs da Engenharia de recursos no Catálogo do Unity nem às APIs do Repositório de Recursos em um ambiente local ou em um ambiente diferente do Databricks.

Usar os clientes para testes de unidade

Você pode instalar o cliente da Engenharia de Recursos no Catálogo do Unity ou o cliente do Repositório de Recursos localmente para ajudar na execução de testes de unidade.

Por exemplo, para validar que um método update_customer_features chama FeatureEngineeringClient.write_table corretamente (ou FeatureStoreClient.write_table, no caso do Repositório de Recursos do Workspace), você pode escrever:

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'
  )

Usar os clientes para testes de integração

Você pode executar testes de integração com o cliente da Engenharia de Recursos no Catálogo do Unity ou o cliente do Repositório de Recursos no Databricks. Para obter detalhes, consulte Diretrizes e Ferramentas para Desenvolvedores: usar CI/CD.