API Python per l'ingegneria delle funzionalità e l'area di lavoro
Questa pagina fornisce collegamenti alla documentazione dell'API Python di Databricks Feature Engineering e Databricks legacy Workspace Feature Store e informazioni sui pacchetti client databricks-feature-engineering
e databricks-feature-store
.
Nota
A partire dalla versione 0.17.0, databricks-feature-store
è stato deprecato. Tutti i moduli esistenti di questo pacchetto sono ora disponibili nella databricks-feature-engineering
versione 0.2.0 e successive. Per informazioni sulla migrazione a databricks-feature-engineering
, vedere Eseguire la migrazione a databricks-feature-engineering.
Matrice di compatibilità
Il pacchetto e il client da usare dipendono dalla posizione in cui si trovano le tabelle delle funzionalità e dalla versione di Machine Learning di Databricks Runtime in esecuzione, come illustrato nella tabella seguente.
Per identificare la versione del pacchetto incorporata nella versione di Databricks Runtime ML, vedere la matrice di compatibilità progettazione delle funzionalità.
Versione Databricks Runtime | Per le tabelle delle funzionalità in | Usare il pacchetto | Usare il client Python |
---|---|---|---|
Databricks Runtime 14.3 ML e versioni successive | Catalogo Unity | databricks-feature-engineering |
FeatureEngineeringClient |
Databricks Runtime 14.3 ML e versioni successive | Area di lavoro | databricks-feature-engineering |
FeatureStoreClient |
Databricks Runtime 14.2 ML e versioni successive | Catalogo Unity | databricks-feature-engineering |
FeatureEngineeringClient |
Databricks Runtime 14.2 ML e versioni successive | Area di lavoro | databricks-feature-store |
FeatureStoreClient |
Nota
-
databricks-feature-engineering<=0.7.0
non è compatibile conmlflow>=2.18.0
. Per usaredatabricks-feature-engineering
con MLflow 2.18.0 e versioni successive, eseguire l'aggiornamento adatabricks-feature-engineering
versione 0.8.0 o successiva.
Note sulla versione
Informazioni di riferimento sulle API Python per la progettazione di funzionalità
Vedere le informazioni di riferimento sull'API Python di progettazione delle funzionalità.
Informazioni di riferimento sulle API Python per l'archivio delle funzionalità dell'area di lavoro (deprecate)
Nota
- A partire dalla versione 0.17.0,
databricks-feature-store
è stato deprecato. Tutti i moduli esistenti di questo pacchetto sono ora disponibili nelladatabricks-feature-engineering
versione 0.2.0 e successive.
Per databricks-feature-store
la versione 0.17.0, vedere Informazioni di riferimento sulle API Python di Databricks FeatureStoreClient
in Progettazione delle funzionalità per l'API dell'archivio delle funzionalità più recenti.
Per v0.16.3 e versioni successive, usare i collegamenti nella tabella per scaricare o visualizzare le informazioni di riferimento sull'API Python di Feature Store. Per determinare la versione preinstallata per la versione di Databricks Runtime ML, vedere la matrice di compatibilità.
Versione | Scarica PDF | Informazioni di riferimento sulle API online |
---|---|---|
da v0.3.5 a v0.16.3 | PDF di riferimento per l'API Python dell'archivio funzionalità 0.16.3 | Informazioni di riferimento sulle API online |
v0.3.5 e versioni successive | PDF di riferimento per l'API Python dell'archivio funzionalità 0.3.5 | Informazioni di riferimento sulle API online non disponibili |
Pacchetto Python
Questa sezione descrive come installare i pacchetti Python per usare Databricks Feature Engineering e Databricks Workspace Feature Store.
Progettazione delle caratteristiche
Nota
- A partire dalla versione 0.2.0,
databricks-feature-engineering
contiene moduli per l'uso di tabelle delle funzionalità sia nel catalogo unity che nell'archivio delle funzionalità dell'area di lavoro.databricks-feature-engineering
la versione 0.2.0 seguente funziona solo con le tabelle delle funzionalità nel catalogo unity.
Le API di progettazione delle funzionalità di Databricks sono disponibili tramite il pacchetto databricks-feature-engineering
client Python . Il client è disponibile in PyPI ed è preinstallato in Databricks Runtime 13.3 LTS ML e versioni successive.
Per un riferimento alla versione client corrispondente alla versione di runtime, vedere la matrice di compatibilità.
Per installare il client in Databricks Runtime:
%pip install databricks-feature-engineering
Per installare il client in un ambiente Python locale:
pip install databricks-feature-engineering
Archivio funzionalità dell'area di lavoro (deprecato)
Nota
- A partire dalla versione 0.17.0,
databricks-feature-store
è stato deprecato. Tutti i moduli esistenti di questo pacchetto sono ora disponibili indatabricks-feature-engineering
, versione 0.2.0 e successive. - Per altre informazioni, vedere Eseguire la migrazione a databricks-feature-engineering .
Le API dell'archivio funzionalità di Databricks sono disponibili tramite il pacchetto databricks-feature-store
client Python. Il client è disponibile in PyPI ed è preinstallato in Databricks Runtime per Machine Learning. Per informazioni di riferimento sul runtime che include la versione client, vedere la matrice di compatibilità.
Per installare il client in Databricks Runtime:
%pip install databricks-feature-store
Per installare il client in un ambiente Python locale:
pip install databricks-feature-store
Eseguire la migrazione a databricks-feature-engineering
Per installare il databricks-feature-engineering
pacchetto, usare pip install databricks-feature-engineering
invece di pip install databricks-feature-store
. Tutti i moduli in sono stati spostati databricks-feature-store
in databricks-feature-engineering
, quindi non è necessario modificare alcun codice. Le istruzioni import, from databricks.feature_store import FeatureStoreClient
ad esempio , continueranno a funzionare dopo l'installazione databricks-feature-engineering
di .
Per usare le tabelle delle funzionalità in Unity Catalog, usare FeatureEngineeringClient
. Per usare l'archivio funzionalità dell'area di lavoro, è necessario usare FeatureStoreClient
.
Scenari supportati
In Databricks, incluso Databricks Runtime e Databricks Runtime per Machine Learning, è possibile:
- Creare, leggere e scrivere tabelle delle funzionalità.
- Eseguire il training e il punteggio dei modelli sui dati delle funzionalità.
- Pubblicare tabelle delle funzionalità negli archivi online per la gestione in tempo reale.
Da un ambiente locale o da un ambiente esterno a Databricks, è possibile:
- Sviluppare codice con il supporto dell'IDE locale.
- Unit test usando framework fittizi.
- Scrivere test di integrazione da eseguire in Databricks.
Limiti
La libreria client può essere eseguita solo in Databricks, tra cui Databricks Runtime e Databricks Runtime per Machine Learning. Non supporta la chiamata di Progettazione funzionalità in Unity Catalog o API di Feature Store da un ambiente locale o da un ambiente diverso da Databricks.
Usare i client per unit test
È possibile installare la progettazione delle funzionalità nel client del catalogo Unity o il client di Feature Store in locale per facilitare l'esecuzione di unit test.
Ad esempio, per verificare che un metodo update_customer_features
chiami FeatureEngineeringClient.write_table
correttamente (o per l'archivio delle funzionalità dell'area di lavoro, FeatureStoreClient.write_table
), è possibile scrivere:
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'
)
Usare i client per i test di integrazione
È possibile eseguire test di integrazione con la progettazione delle funzionalità nel client di Catalogo Unity o con il client di Feature Store in Databricks. Per informazioni dettagliate, vedere Developer Tools and Guidance: Use CI/CD (Strumenti di sviluppo e indicazioni: usare CI/CD).