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
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 nodatabricks-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 nodatabricks-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.