Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Important
Bu özellik Genel Önizleme aşamasındadır. Çalışma alanı yöneticileri Bu özelliğe erişimi Önizlemeler sayfasından denetleyebilir. Bkz. Azure Databricks önizlemelerini yönetme.
Özellik Görünümleri'ni çevrimiçi iki şekilde sunabilirsiniz:
- Model sunumu: Özellik Görünümleri üzerinde eğitilmiş bir modelin dağıtılması. Uç nokta, model kaydedildiğinde izlenen soy bilgisini kullanarak özellik değerlerini çevrimiçi mağazadan otomatik olarak getirir. Model tahminlerine hizmet etmek için bunu kullanın.
-
Özellik Sunumu: Model olmadan doğrudan Özellik Görünümlerine başvuran bir
FeatureSpecdağıtın. Uç nokta, aranmış özellik değerlerini döndürür. Bir uygulamanın model tahminleri yerine özellik değerlerine ihtiyacı olduğunda bunu kullanın.
Her iki yaklaşım da çevrimiçi bir mağazadan önceden derlenmiş özellik değerlerini okur, bu nedenle önce özellikleri çevrimiçi bir mağazaya gerçekleştirmeniz gerekir.
Databricks'in özellikleri kullanılarak eğitilen modeller, kökeni eğitildikleri özelliklere göre otomatik olarak izler. Model sunum uç noktaları olarak dağıtıldığında, bu modeller çevrimiçi mağazalardan özellikleri aramak için Unity Kataloğu'nu kullanır.
Permissions
Bir özelliği sunmak için, model sunma uç noktasını oluşturan asıl öğenin, materialize edilmiş özelliği destekleyen Unity Catalog tablosunda SELECT iznine sahip olması gerekir. Çevrimiçi aramalar doğrudan somutlaştırılmış tablodan okunur, bu nedenle sunum erişimi sağlayan şey tablo düzeyindeki SELECT olur. Ayrıcalık açıklaması için bkz SELECT. .
Somutlaştırılmış bir tablo birden fazla özellik içerebildiğinden, üzerinde SELECT izni vermek, yalnızca sunmayı amaçladığınız özelliğe değil, o tablodaki tüm özelliklere erişim sağlar. Hizmet verme erişimi vermeden önce, tabloyu paylaşan her özelliğin sorumluyla paylaşılabildiğini onaylayın. Maruz kalmayı sınırlamak için hassas özellikleri ayrı olarak somutlaştırın.
Tabloları el ile çözümlemeden bu erişime izin vermek için kullanın FeatureEngineeringClient.grant_feature_serving_access. Bir model veya özellik belirtimi verildiğinde, her özelliği karşılık gelen çevrimiçi tabloyla eşler, belirttiğiniz güvenlik sorumlularına bu tablolarda SELECT yetkisini (USE CATALOG ve USE SCHEMA ile birlikte) verir ve her tabloya ilişkin bir rapor ile bu iznin erişime açtığı ek özellikleri döndürür. Yetki vermeden önce raporu önizlemek için dry_run=True iletin.
from databricks.feature_engineering import FeatureEngineeringClient
fe = FeatureEngineeringClient()
# Preview the tables and the features each grant would expose.
report = fe.grant_feature_serving_access(
grant_to=["serving-principal@example.com"],
model_uri="models:/main.ecommerce.fraud_model/1",
dry_run=True,
)
print(report)
# Grant SELECT on the resolved online tables.
fe.grant_feature_serving_access(
grant_to=["serving-principal@example.com"],
model_uri="models:/main.ecommerce.fraud_model/1",
)
Uç nokta sunan bir model dağıtma
Uç nokta sunan mevcut bir modeli kullanın veya yeni bir tane oluşturmak için Databricks SDK'sını kullanın. Modelin Unity Kataloğu'na kaydedilmesi gerekir.
Aşağıdaki kod, uç nokta sunan yeni bir modelin nasıl oluşturulacağını gösterir. Daha fazla bilgi için bkz. Uç noktaları sunan özel model oluşturma.
from databricks.sdk import WorkspaceClient
from databricks.sdk.service.serving import EndpointCoreConfigInput, ServedEntityInput
w = WorkspaceClient()
endpoint_name = "fraud-detection-endpoint"
model_name = "main.ecommerce.fraud_model"
w.serving_endpoints.create(
name=endpoint_name,
config=EndpointCoreConfigInput(
name=endpoint_name,
served_entities=[
ServedEntityInput(
entity_name=model_name,
entity_version=1,
max_provisioned_concurrency=4,
min_provisioned_concurrency=0,
)
],
),
)
Uç noktayı sorgulama
from databricks.sdk import WorkspaceClient
w = WorkspaceClient()
response = w.serving_endpoints.query(
name="fraud-detection-endpoint",
dataframe_records=[
{"user_id": "user_123", "transaction_time": "2026-03-01T12:00:00"},
],
)
RequestSource özellikleriyle uç noktayı sorgulama
Model özelliklerle RequestSource eğitildiyse, istek yükü tüm RequestSource sütunları da içermelidir. Bu sütunlar sırasında log_modelMLflow modeli imzasına eklendiğinden uç noktanın API şeması gerekli istek alanlarını yansıtır.
response = w.serving_endpoints.query(
name="fraud-detection-endpoint",
dataframe_records=[
{
"user_id": "user_123",
"transaction_time": "2026-03-01T12:00:00",
"transaction_amount": 275.30, # RequestSource column
"vendor_id": "v_42", # RequestSource column (also used as entity key)
},
],
)
Varlık anahtarları, çevrimiçi mağazadan tablo destekli özellikleri aramak için kullanılır.
RequestSource sütunları doğrudan modele geçirilir.
ayrıca kullanabilirsiniz curl:
curl -X POST "https://<workspace>.cloud.databricks.com/serving-endpoints/<endpoint>/invocations" \
-H "Authorization: Bearer $DATABRICKS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"dataframe_records": [
{
"user_id": "user_123",
"transaction_time": "2026-03-01T12:00:00",
"transaction_amount": 275.30,
"vendor_id": "v_42"
}
]
}'
Özellikleri FeatureSpec ile sunun
Özellik Görünümlerini model olmadan sunmak için özelliklere başvuran bir FeatureSpec oluşturun ve özellik sunma uç noktasına dağıtın. Uç nokta, istekteki varlık anahtarları için arama özelliği değerlerini döndürür.
Uç noktayı oluşturmadan önce özelliklerin Unity Catalog'a kaydedilmesi ve çevrimiçi bir depoya materyalize edilmesi gerekir.
Note
Özellik Görünümleri içeren bir FeatureSpec, FeatureLookup veya FeatureFunction tanımlarını da içeremez. Özellik Görünümleri aynı FeatureSpeciçindeki bu tanımlarla karıştırılamaz.
from databricks.feature_engineering import FeatureEngineeringClient
from databricks.feature_engineering.entities.feature_serving_endpoint import (
EndpointCoreConfig,
ServedEntity,
)
fe = FeatureEngineeringClient()
# 1. Retrieve a registered Feature View
agg_feature = fe.get_feature(full_name="main.ecommerce.amount_sum_sliding_7d_1d")
# 2. Create a FeatureSpec that includes the Feature View
feature_spec_name = "main.ecommerce.transaction_feature_spec"
fe.create_feature_spec(name=feature_spec_name, features=[agg_feature])
# 3. Deploy a Feature Serving endpoint backed by the FeatureSpec
fe.create_feature_serving_endpoint(
name="transaction-features",
config=EndpointCoreConfig(
served_entities=ServedEntity(
feature_spec_name=feature_spec_name,
workload_size="Small",
scale_to_zero_enabled=True,
)
),
)
Gerçekleştirilmiş özellikleri aramak için kullanılan varlık anahtarlarıyla uç noktayı sorgulayın:
from databricks.sdk import WorkspaceClient
w = WorkspaceClient()
response = w.serving_endpoints.query(
name="transaction-features",
dataframe_records=[{"user_id": "user_123"}],
)
Özellik Sunma uç noktaları hakkında daha fazla bilgi için bkz. Özellik Sunma uç noktaları.