Funktionsutveckling och Funktionslager för arbetsyta Python API
Den här sidan innehåller länkar till Python API-dokumentationen för Databricks Feature Engineering och Databricks äldre funktionslager för arbetsytor och information om klientpaketen databricks-feature-engineering
och databricks-feature-store
.
Kommentar
Från och med version 0.17.0 databricks-feature-store
har inaktuellt. Alla befintliga moduler från det här paketet är nu tillgängliga i databricks-feature-engineering
version 0.2.0 och senare. Information om hur du migrerar till databricks-feature-engineering
finns i Migrera till databricks-feature-engineering.
Kompatibilitetsmatris
Vilket paket och vilken klient du ska använda beror på var dina funktionstabeller finns och vilken Databricks Runtime ML-version du kör, som du ser i följande tabell.
Information om vilken paketversion som är inbyggd i din Databricks Runtime ML-version finns i kompatibilitetsmatrisen för funktionstekniker.
Databricks Runtime-version | För funktionstabeller i | Använda paket | Använda Python-klienten |
---|---|---|---|
Databricks Runtime 14.3 ML och senare | Unity Catalog | databricks-feature-engineering |
FeatureEngineeringClient |
Databricks Runtime 14.3 ML och senare | Arbetsyta | databricks-feature-engineering |
FeatureStoreClient |
Databricks Runtime 14.2 ML och lägre | Unity Catalog | databricks-feature-engineering |
FeatureEngineeringClient |
Databricks Runtime 14.2 ML och lägre | Arbetsyta | databricks-feature-store |
FeatureStoreClient |
Kommentar
-
databricks-feature-engineering<=0.7.0
är inte kompatibelt medmlflow>=2.18.0
. Om du vill användadatabricks-feature-engineering
med MLflow 2.18.0 och senare uppgraderar du tilldatabricks-feature-engineering
version 0.8.0 eller senare.
Viktig information
Se Versionsanteckningar för Databricks funktionsutveckling och äldre Funktionsbutik för arbetsytor.
Referens för Python API för funktionsutveckling
Se referensen för Python API för funktionsutveckling.
Python API-referens för Arbetsytans funktionslager (inaktuell)
Kommentar
- Från och med version 0.17.0
databricks-feature-store
har inaktuellt. Alla befintliga moduler från det här paketet är nu tillgängliga idatabricks-feature-engineering
version 0.2.0 och senare.
För databricks-feature-store
v0.17.0, se Databricks i Funktionsutveckling FeatureStoreClient
Python API-referens för den senaste API-referensen för arbetsytans funktionslager.
För v0.16.3 och senare använder du länkarna i tabellen för att ladda ned eller visa Referens för Python API för funktionsarkiv. Information om hur du fastställer den förinstallerade versionen för din Databricks Runtime ML-version finns i kompatibilitetsmatrisen.
Version | Ladda ned PDF | Api-referens online |
---|---|---|
v0.3.5 till v0.16.3 | Referens-PDF för Python API 0.16.3 för Funktionsarkiv | Api-referens online |
v0.3.5 och lägre | Referens-PDF för Python API 0.3.5 för Funktionsarkiv | Online-API-referens är inte tillgänglig |
Python-paket
I det här avsnittet beskrivs hur du installerar Python-paketen för att använda Databricks Feature Engineering och Databricks Workspace Feature Store.
Funktionsframställning
Kommentar
- Från och med version 0.2.0
databricks-feature-engineering
innehåller moduler för att arbeta med funktionstabeller i både Unity Catalog och Workspace Feature Store.databricks-feature-engineering
nedanstående version 0.2.0 fungerar endast med funktionstabeller i Unity Catalog.
Api:erna för databricks-funktionsutveckling är tillgängliga via Python-klientpaketet databricks-feature-engineering
. Klienten är tillgänglig på PyPI och är förinstallerad i Databricks Runtime 13.3 LTS ML och senare.
En referens för vilken klientversion som motsvarar vilken körningsversion finns i kompatibilitetsmatrisen.
Så här installerar du klienten i Databricks Runtime:
%pip install databricks-feature-engineering
Så här installerar du klienten i en lokal Python-miljö:
pip install databricks-feature-engineering
Funktionsarkiv för arbetsyta (inaktuellt)
Kommentar
- Från och med version 0.17.0
databricks-feature-store
har inaktuellt. Alla befintliga moduler från det här paketet är nu tillgängliga idatabricks-feature-engineering
version 0.2.0 och senare. - Mer information finns i Migrera till databricks-feature-engineering .
Api:er för Databricks-funktionslager är tillgängliga via Python-klientpaketet databricks-feature-store
. Klienten är tillgänglig på PyPI och är förinstallerad i Databricks Runtime for Machine Learning. En referens för vilken körning som innehåller vilken klientversion finns i kompatibilitetsmatrisen.
Så här installerar du klienten i Databricks Runtime:
%pip install databricks-feature-store
Så här installerar du klienten i en lokal Python-miljö:
pip install databricks-feature-store
Migrera till databricks-feature-engineering
Om du vill installera databricks-feature-engineering
paketet använder du pip install databricks-feature-engineering
i stället för pip install databricks-feature-store
. Alla moduler i databricks-feature-store
har flyttats till databricks-feature-engineering
, så du behöver inte ändra någon kod. Importinstruktioner som from databricks.feature_store import FeatureStoreClient
fortsätter att fungera när du har installerat databricks-feature-engineering
.
Om du vill arbeta med funktionstabeller i Unity Catalog använder du FeatureEngineeringClient
. Om du vill använda Arbetsytans funktionslager måste du använda FeatureStoreClient
.
Stödda scenarier
På Databricks, inklusive Databricks Runtime och Databricks Runtime for Machine Learning, kan du:
- Skapa, läsa och skriva funktionstabeller.
- Träna och poängsätta modeller på funktionsdata.
- Publicera funktionstabeller i onlinebutiker för realtidsservering.
Från en lokal miljö eller en miljö utanför Databricks kan du:
- Utveckla kod med lokalt IDE-stöd.
- Enhetstest med hjälp av falska ramverk.
- Skriv integrationstester som ska köras på Databricks.
Begränsningar
Klientbiblioteket kan bara köras på Databricks, inklusive Databricks Runtime och Databricks Runtime för Machine Learning. Den stöder inte anrop av funktionstekniker i Unity-katalog- eller funktionslager-API:er från en lokal miljö eller från en annan miljö än Databricks.
Använda klienterna för enhetstestning
Du kan installera funktionstekniken i Unity Catalog-klienten eller Funktionsbutiksklienten lokalt för att underlätta körningen av enhetstester.
Om du till exempel vill verifiera att en metod update_customer_features
anropar FeatureEngineeringClient.write_table
(eller för Workspace Feature Store, FeatureStoreClient.write_table
) kan du skriva:
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'
)
Använda klienterna för integreringstestning
Du kan köra integreringstester med funktionstekniken i Unity Catalog-klienten eller Feature Store-klienten på Databricks. Mer information finns i Utvecklarverktyg och vägledning: Använd CI/CD.