Notas de versão do Repositório de Recursos do Databricks e do Repositório de Recursos do Workspace herdado

Esta página lista as versões do cliente Engenharia de Recursos do Databricks no Catálogo do Unity e do Repositório de Recursos do Workspace do Databricks. Ambos os clientes estão disponíveis no PyPI: databricks-feature-engineering e databricks-feature-store.

As bibliotecas são usadas para:

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

Para obter a documentação de uso, consulte o Repositório de Recursos do Databricks. Para a documentação da API em Python, consulte API Python de Engenharia de Recursos.

O cliente de Engenharia de Recursos no Catálogo do Unity funciona com os recursos e tabelas de recursos no Catálogo do Unity. O cliente do Repositório de Recursos do Workspace funciona para recursos e tabelas de recursos no Repositório de Recursos do Workspace. Ambos os clientes vêm pré-instalados no Databricks Runtime para Machine Learning. Eles também podem ser executados no Databricks Runtime após instalar databricks-feature-engineering do PyPI (pip install databricks-feature-engineering). Somente em testes de unidade, os dois clientes podem ser usados localmente ou em ambientes de CI/CD.

Para obter uma tabela mostrando a compatibilidade de versão do cliente com versões do Databricks Runtime e do Databricks Runtime ML, confira Matriz de compatibilidade da Engenharia de Recursos. Versões mais antigas do cliente do Repositório de Recursos do Workspace do Databricks estão disponíveis no PyPI como databricks-feature-store.

databricks-feature-engineering 0.18.1

Esta versão inclui as seguintes melhorias nas Visualizações de Recursos:

  • O serviço online com o Lakebase agora dá suporte a nomes de recursos com mais de 64 caracteres.
  • RollingWindow agora aceita window_duration=None para a agregação Last durante toda a vida útil em fontes Delta com materialização baseada em gatilho de tabela somente online.
  • As funcionalidades baseadas em FeatureViewSource agora podem ser visualizadas usando compute_features(), incluindo dependências que abrangem múltiplas tabelas de fonte.
  • SawtoothWindow agora dá suporte a janelas de agregação em tempo de vida (window_duration=None) em create_training_set() e compute_features().
  • Correções de bugs e melhorias.

databricks-feature-engineering 0.18.0

  • FeatureViewSource:
    • O New FeatureViewSource define uma característica composta por outras características, aplicando CustomUDF linha a linha entre seus valores. Compatível com todo o ciclo de vida de treinamento e serviço, exceto para compute_features().
  • Recursos do CustomUDF:
    • create_feature() valida CustomUDFinput_bindings em relação à assinatura da função do Unity Catalog e verifica os tipos de coluna limitados em relação aos tipos de parâmetro da função, relatando incompatibilidades quando o recurso é criado, em vez de no momento do treinamento ou do serviço.
  • Recursos de streaming:
    • create_stream() adiciona record_type_filter, um predicado SQL que mantém apenas os registros correspondentes depois da decodificação, e excluded_columns, que remove colunas da ingestão. update_stream() também aceita excluded_columns.
  • Materialização:
    • materialize_features() aceita tags e budget_policy_id para acompanhamento e atribuição de custos.
    • CronSchedule suporta um modo de agendamento derivado que é gerado a partir das janelas de agregação e da temporização de um recurso, além de uma expressão cron definida manualmente.
  • Controle de tempo de início do recurso em janela:
    • Os recursos em janela agora sempre impõem start_time. Linhas de treinamento cujo final da janela ocorre antes do start_time de um recurso são excluídas para que os conjuntos de treinamento offline correspondam aos valores de serviço online. Defina start_time em um recurso em janela para controlar o limite.
  • Outras mudanças:
    • Funcionalidades de agregação rejeitam colunas de séries temporais DATE durante a criação. Use uma TIMESTAMP coluna, então.
    • Os recursos ColumnSelection aplicam o atraso de definição da fonte em create_training_set() e compute_features(), excluindo linhas de origem que ainda não foram definidas.
    • Adicionou suporte para tipos de strings de 18 runtime Databricks em entradas e saídas UDF de características.
    • Campos de temporização do recurso, como start_time, atraso de agregação e atraso de definição da fonte, agora persistem entre leituras e gravações do cliente.
    • Correções de bugs e melhorias.

Databricks-Feature-Engineering 0.17.1

  • Correções de bugs e melhorias.

databricks-feature-engineering 0.17.0

  • Agregações de SawtoothWindow (versão prévia):
    • A nova classe de janela de tempo SawtoothWindow mantém janelas longas de agregação (por exemplo, 30, 60 ou 90 dias) sempre atualizadas: o limite inferior da janela avança em etapas diárias fixas, enquanto o limite superior permanece atualizado com os eventos mais recentes do fluxo, evitando uma recomputação completa a cada evento. Suportado para Sum, Avg, Count, Min, e Max agregações. window_duration deve ser maior que dois dias; uso RollingWindow para janelas mais curtas.
  • LastN Agregação (versão prévia):
    • A nova agregação LastN retorna os N valores mais recentes em uma janela como uma matriz, ordenados pela coluna de série temporal da feature. Compatível com janelas de tempo SlidingWindow e RollingWindow.
  • Janelas de agregação ao longo da vida:
    • SlidingWindow agora oferece suporte a janelas permanentes (infinitas) que agregam todo o histórico. Janelas de vida útil estão disponíveis apenas para recursos de lote; defina window_duration como None para definir uma em create_training_set() e compute_features().
  • Recursos do CustomUDF (Prévia):
    • Novo tipo de função CustomUDF para create_feature() aplica uma função registrada no Catálogo do Unity às colunas de origem, por linha. input_bindings mapeia cada parâmetro da função UC para a coluna de origem que o preenche. CustomUDF opera diretamente apenas sobre recursos RequestSource (tempo de solicitação); ele não pode ser aplicado a outros tipos de recursos.
  • Transformações de origem de streaming (Prévia):
    • StreamSource agora aceita uma transformation_sql expressão SQL SELECT , aplicada após a conversão de esquema do fluxo, para transformar registros antes do cálculo de características. Quando definido, forneça o esquema de saída transformado via dataframe_schema.
  • Registro de esquemas para fontes de streaming (Prévia):
    • create_stream() agora pode resolver esquemas de chave e carga útil de streaming a partir de um registro de esquemas externo (por exemplo, Confluent) por meio de uma conexão do Unity Catalog, usando SchemaRegistryConfig em vez de fornecer os esquemas diretamente. Formatos Avro e Protobuf são suportados.
  • Dependências personalizadas de serviço (Prévia):
    • Agora você pode declarar dependências extras do pip para o serving de features. create_feature_spec() e log_model() aceitam extra_pip_requirements, uma lista de pacotes pip (ou caminhos .whl de volumes do Unity Catalog) para instalar no ambiente de serving do modelo as bibliotecas de que seus UDFs de recursos precisam, mas que não estão disponíveis por padrão. Dependências declaradas na especificação de característica são mantidas quando o modelo é servido.
  • Outras melhorias:
    • Correções de bugs e melhorias.

Databricks-Feature-Engineering 0.16.1

  • create_training_set e score_batch agora reutilizam recursos de agregação materializada offline quando disponíveis, acelerando a criação do conjunto de dados de treinamento e a inferência em lote. Consulte Materializar exibições de recursos.
  • RequestSource Funcionalidades não exigem mais colunas de entidade e de séries temporais.
  • Corrigidos resultados incorretos de First e Last em create_training_set. Essas agregações agora incluem nulos por padrão; adicione uma filter_condition para excluir colunas de entrada nulas.
  • Corrigido o problema em compute_features, que retornava zeros ou valores nulos quando as linhas de origem continham valores nulos.
  • Correções de bugs e melhorias.

databricks-feature-engineering 0.16.0

  • Visualização Pública de Feature Views:
    • As Feature Views agora estão em Visualização Pública. Os utilitários is_beta_feature_view() e list_beta_feature_views() em FeatureEngineeringClient identificam recursos que foram registrados na API Beta e precisam ser migrados para a representação de Versão Prévia Pública.
    • O método Feature.clone() auxilia na migração de Feature Views de Beta para Visualização Pública.
    • create_pipeline está obsoleto para Feature Views; utilize a API de features materializadas em seu lugar.
  • Recursos de streaming:
    • StreamSource agora é compatível com create_feature() para definir funcionalidades de streaming baseadas em fontes do Kafka ou do Delta.
    • create_training_set agora suporta treinamento em recursos definidos com um StreamSource.
    • Novos métodos create_stream, get_stream, update_stream, delete_stream e list_streams em FeatureEngineeringClient para gerenciar fontes de funcionalidade de streaming.
    • O gatilho StreamingMode para materialize_features seleciona a materialização em microlotes.
  • Outras melhorias:
    • Nova list_features() API em FeatureEngineeringClient lista funcionalidades em um catálogo ou esquema.
    • O novo utilitário grant_feature_serving_access() concede as permissões necessárias para a disponibilização online de features materializadas, com um modo dry_run de visualização de acesso antes da aplicação.
    • DeltaTableSource.from_sql() agora aceita um SparkSession diretamente.
    • DeltaTableSource.dataframe_schema substitui o parâmetro preterido schema_json .
    • RollingWindow substitui o alias removido ContinuousWindow .
    • Foi removido o parâmetro preterido offset de RollingWindow; use delay em vez disso.
    • Removido o suporte para nomes de duas partes do Unity Catalog com um catálogo padrão.
    • Correções de bugs e melhorias.

Databricks-Feature-Engineering 0.15.0

  • RequestSource (Beta):
    • A nova classe RequestSource permite atributos calculados no momento da solicitação, a partir de dados passados diretamente ao modelo, sem exigir uma consulta a uma tabela de atributos.
    • create_feature(), create_training_set(), score_batch() e compute_features() oferecem suporte a recursos baseados em RequestSource.
    • log_model incorpora recursos de RequestSource à assinatura do modelo automaticamente.
  • ColumnSelection (Beta):
    • A nova ColumnSelection classe permite selecionar colunas de saída específicas de uma fonte de recurso, permitindo definições de recursos mais granulares.
    • Com suporte em create_feature(), create_training_set(), e compute_features()log_model.
  • Outras melhorias:
    • Novo tipo de gatilho TableTrigger para materialização de gatilhos materialize_features em atualizações de tabelas Delta.
    • score_batch agora é executado em runtimes sem servidor do Databricks Runtime.
    • DeltaTableSource.from_sql() agora rejeita cláusulas SQL sem suporte, como GROUP BY e ORDER BY.
    • RequestSource.from_dataframe() infere o esquema de solicitação de um DataFrame existente.
    • Removida a dependência do Flask de databricks-feature-engineering.
    • Correções de bugs e melhorias.

Databricks-Feature-Engineering 0.14.0

  • Recursos Declarativos de Lote (Beta):
    • A API de recursos declarativos para armazenar definições desses recursos como funções do Catálogo do Unity, com agregações e janelas de tempo.
    • A API de características materializadas agenda a materialização automática de características em lote para lojas online usando agendamentos cron configuráveis.
    • Os recursos materializados podem ser usados no serviço online para modelos registrados no Catálogo do Unity.
    • Suporte a janelas deslizantes e em cascata usando classes SlidingWindow e TumblingWindow para computação de recurso correta pontual em create_training_set().
    • filter_condition o parâmetro permite filtrar dados de origem ao calcular recursos.
  • Outras melhorias:
    • A nova list_online_stores() API lista todos os repositórios online em um catálogo ou esquema.
    • Suporte para usage_policy_id para acompanhamento de cobrança ao criar ou atualizar lojas online.
    • Mensagens de erro aprimoradas quando os repositórios online são excluídos ou indisponíveis.
    • Correção de bugs e melhorias de desempenho.

Databricks-Feature-Engineering 0.13.0

  • APIs para gerenciar repositórios de recursos online gerenciados pelo Databricks.
  • publish_table() agora aceita source_table_name, online_table_namee publish_mode parâmetros para especificação de tabela mais clara.
  • Suporte para read_replica_count ao criar ou atualizar repositórios online para melhorar a escalabilidade de leitura.
  • Correções de bugs e melhorias.

Databricks-Feature-Engineering 0.12.1

  • Dá suporte a valores padrão para pesquisas de funcionalidades.
  • Correções de bugs e melhorias.

Databricks-Feature-Engineering 0.11.0

  • Adicione suporte para a mlflow versão 3.0.
  • Correções de bugs e melhorias.

Databricks-Feature-Engineering 0.10.2

  • Adicione suporte para a mlflow versão 2.20.0 e superior.
  • Adicione suporte para a numpy versão 2.x.
  • Correções de bugs e melhorias.

databricks-feature-engineering 0.9.0

  • Suporte para usar prebuilt_env em invocações de score_batch.
  • Recursos pontuais que unem melhorias de desempenho com o Photon.
  • Correções de bugs e melhorias.

databricks-feature-engineering 0.8.0

  • Suporte ao uso de params em invocações de score_batch, o que permite que parâmetros adicionais sejam passados para o modelo para inferência.
  • Correções de bugs e melhorias.

Databricks-Feature-Engineering 0.7.0

databricks-feature-engineering 0.6.0

  • Agora há suporte para a execução das junções pontuais com o Spark nativo, além do suporte existente com o Tempo. Muito obrigado a Semyon Sinchenko por sugerir a ideia!
  • StructType agora tem suporte como um tipo de dados PySpark. StructType não tem suporte para serviços online.
  • write_table agora dá suporte à gravação em tabelas que têm clusterização líquida habilitada.
  • O parâmetro timeseries_columns para create_table foi renomeado para timeseries_column. Os fluxos de trabalho existentes podem continuar a usar o parâmetro timeseries_columns.
  • score_batch agora dá suporte para o parâmetro env_manager. Consulte a documentação do MLflow para obter mais informações.

databricks-feature-engineering 0.5.0

  • Nova API update_feature_spec em databricks-feature-engineering que permite que os usuários atualizem o proprietário de um FeatureSpec no Catálogo do Unity.

databricks-feature-engineering 0.4.0

  • Pequenas correções de bug e aprimoramentos.

engenharia de recursos do databricks 0.3.0

  • log_model agora usa o novo pacote databricks-feature-lookup PyPI, que inclui melhorias de desempenho para o serviço de modelo online.

databricks-feature-store 0.17.0

  • databricks-feature-store está obsoleto. Todos os módulos existentes neste pacote estão disponíveis no databricks-feature-engineering versão 0.2.0 e superior. Para obter detalhes, confira API do Python.

Databricks-Feature-Engineering 0.2.0

  • databricks-feature-engineering agora contém todos os módulos de databricks-feature-store. Para obter detalhes, confira API do Python.

databricks-feature-store 0.16.3

  • Corrige o bug de tempo limite ao usar o AutoML com tabelas de recursos.

Databricks-Feature-Engineering 0.1.3

  • Pequenos aprimoramentos no cliente de atualização.

databricks-feature-store 0.16.2

  • Agora você pode criar pontos de extremidade do Serviço de Recurso e Função. Para obter detalhes, consulte Recursos e Funcionalidades.

databricks-feature-store 0.16.1

  • Pequenas correções de bug e aprimoramentos.

databricks-feature-engineering 0.1.2 e databricks-feature-store 0.16.0

  • Pequenas correções de bug e aprimoramentos.
    • Correção de URLs de linhagem de trabalho incorretas registradas com determinadas configurações de espaço de trabalho.

databricks-feature-engineering 0.1.1

  • Pequenas correções de bug e aprimoramentos.

databricks-feature-engineering 0.1.0

  • Lançamento GA do cliente da Engenharia de Recursos no Catálogo do Unity para Python no PyPI

databricks-feature-store 0.15.1

  • Pequenas correções de bug e aprimoramentos.

databricks-feature-store 0.15.0

  • Agora você pode inferir e registrar automaticamente um exemplo de entrada ao registrar um modelo em log. Para fazer isso, defina infer_model_example como True ao chamar log_model. O exemplo é baseado nos dados de treinamento especificados no parâmetro training_set.

databricks-feature-store 0.14.2

  • Corrija o bug na publicação no Aurora MySQL do MariaDB Connector/J >=2.7.5.

databricks-feature-store 0.14.1

  • Pequenas correções de bug e aprimoramentos.

databricks-feature-store 0.14.0

A partir da versão 0.14.0, você deve especificar as colunas da chave de registro de data e hora no argumento primary_keys. Chaves de timestamp fazem parte das "chaves primárias" que identificam exclusivamente cada linha na tabela de características. Como outras colunas de chave primária, as colunas de chave de timestamp não podem conter valores nulos.

No exemplo a seguir, o DataFrame user_features_df contém as seguintes colunas: user_id, ts, purchases_30d e is_free_trial_active.

0.14.0 e superior

fs = FeatureStoreClient()

fs.create_table(
name="ads_team.user_features",
primary_keys=["user_id", "ts"],
timestamp_keys="ts",
features_df=user_features_df,
)

0.13.1 e inferior

fs = FeatureStoreClient()

fs.create_table(
name="ads_team.user_features",
primary_keys="user_id",
timestamp_keys="ts",
features_df=user_features_df,
)

databricks-feature-store 0.13.1

  • Pequenas correções de bug e aprimoramentos.

databricks-feature-store 0.13.0

  • A versão mínima necessária do mlflow-skinny agora é 2.4.0.
  • A criação de um conjunto de treinamento falhará se o DataFrame fornecido não contiver todas as chaves de pesquisa necessárias.
  • Ao registrar em log um modelo que usa tabelas de recursos no Catálogo do Unity, uma assinatura do MLflow é registrada automaticamente com o modelo.

databricks-feature-store 0.12.0

  • Agora você pode excluir um repositório online usando a API drop_online_table.

databricks-feature-store 0.11.0

  • Em workspaces habilitados para Unity Catalog, agora você pode publicar tabelas de recursos do workspace e do Unity Catalog em repositórios online do Cosmos DB. Isso requer o Databricks Runtime 13.0 ML ou posterior.

databricks-feature-store 0.10.0

  • Pequenas correções de bug e aprimoramentos.

databricks-feature-store 0.9.0

  • Pequenas correções de bug e aprimoramentos.

databricks-feature-store 0.8.0

  • Pequenas correções de bug e aprimoramentos.

databricks-feature-store 0.7.1

  • Adicione flask como dependência para corrigir o problema de dependência ausente ao pontuar modelos com score_batch.

databricks-feature-store 0.7.0

  • Pequenas correções de bug e aprimoramentos.

databricks-feature-store 0.6.1

  • Versão pública inicial do cliente do Repositório de Recursos do Databricks para o PyPI.