0Pricing
Learn AI with Python · Aula

Armazenamentos de atributos: Feast e Tecton

Armazenamentos de atributos online versus offline, versionamento de atributos, junções no momento exato e latência de disponibilização.

Armazenamentos de atributos: Feast e Tecton é uma aula grátis de Learn AI with Python no CoddyKit. Esta é a aula 3 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Learn AI with Python, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Learn AI with Python inclui 4 aulas no total.

O Problema do Armazenamento de Características

As equipes reimplementam repetidamente as mesmas características, e os fluxos de treinamento as calculam de forma diferente do código de disponibilização. Um armazenamento de características centraliza as definições, a reutilização e a disponibilização das características, eliminando trabalho duplicado e o desalinhamento entre treinamento e disponibilização.

Feast e Tecton

Dois dos principais armazenamentos de características:

  • Feast: de código aberto e leve, usa sua própria infraestrutura
  • Tecton: comercial e gerenciado, acrescenta fluxos de características em transmissão contínua e governança

Ambos compartilham os conceitos fundamentais de entidades, características e armazenamentos off-line e on-line.

Entidades e Visões de Características

Uma entidade é aquilo que as características descrevem (um usuário, um produto). Uma visão de características agrupa características relacionadas de uma entidade e aponta para uma fonte de dados. Essas definições ficam no código e são versionadas como qualquer outro artefato.

# A user entity with features:
#   avg_purchase, days_since_signup, total_orders

feast apply

feast apply registra as definições de entidades e visões de características no registro do armazenamento de características. É assim que o armazenamento aprende quais características existem e de onde vêm seus dados.

feast apply
# Registered entity user
# Registered feature view user_stats

Materialização

As características precisam ser carregadas no armazenamento on-line antes da disponibilização. A materialização calcula os valores das características até determinado momento e os grava no armazenamento on-line (por exemplo, no Redis), deixando-os prontos para leituras de baixa latência.

feast materialize

feast materialize recebe uma data inicial e uma data final e carrega no armazenamento on-line os valores das características desse intervalo. Você o executa conforme um agendamento para manter as características on-line atualizadas.

feast materialize 2024-01-01T00:00:00 2024-01-31T00:00:00

Disponibilização On-line

No momento da inferência, você busca as características mais recentes das entidades fornecidas com get_online_features, passando entity_rows para identificar quais entidades devem ser consultadas. Ele retorna os valores mais atuais em milissegundos.

from feast import FeatureStore

store = FeatureStore(repo_path=".")
features = store.get_online_features(
    features=["user_stats:avg_purchase", "user_stats:total_orders"],
    entity_rows=[{"user_id": 123}],
).to_dict()

Criando Dados de Treinamento

Para o treinamento, você associa os valores das características aos rótulos históricos. O armazenamento de características lê o armazenamento off-line e retorna um conjunto de dados alinhado à marca temporal de cada rótulo, garantindo que as entradas de treinamento correspondam ao que a disponibilização fornecerá.

training_df = store.get_historical_features(
    entity_df=labels_df,        # has user_id and event_timestamp
    features=["user_stats:avg_purchase"],
).to_df()

Junções por Ponto no Tempo

A principal garantia do armazenamento de características é a junção por ponto no tempo: para cada rótulo de treinamento, ele busca apenas os valores de características que eram conhecidos no momento da marca temporal do rótulo ou antes dele. Isso impede o uso de informações futuras.

Evitando Vazamento de Dados

Sem a correção por ponto no tempo, você corre o risco de ter vazamento de dados: treinar com valores de características calculados depois do evento do rótulo, o que aumenta artificialmente as métricas off-line, mas faz o desempenho desabar em produção. O armazenamento de características impõe automaticamente a correção temporal.

O Ciclo de Vida Completo

O ciclo de vida do armazenamento de características reúne tudo:

  • feast apply registra as definições
  • feast materialize carrega o armazenamento on-line
  • o treinamento usa junções por ponto no tempo do armazenamento off-line
  • a disponibilização lê valores atuais por meio de get_online_features

Verificação rápida

Teste seus conhecimentos sobre armazenamento de características.

Recapitulação

Você aprendeu sobre armazenamentos de características com Feast e Tecton:

  • feast apply registra entidades e visões de características
  • feast materialize carrega o armazenamento on-line para as datas fornecidas
  • get_online_features disponibiliza valores atuais para entity_rows
  • Junções por ponto no tempo criam dados de treinamento sem vazamento

Perguntas Frequentes

A aula “Armazenamentos de atributos: Feast e Tecton” é grátis?

Sim — o texto completo de “Armazenamentos de atributos: Feast e Tecton” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Learn AI with Python, atualize para CoddyKit PRO. O curso de Learn AI with Python inclui 4 aulas no total.

O que vou aprender em “Armazenamentos de atributos: Feast e Tecton”?

Armazenamentos de atributos online versus offline, versionamento de atributos, junções no momento exato e latência de disponibilização. Você pratica Learn AI with Python com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.

Preciso ter experiência prévia para começar Learn AI with Python?

Nenhuma experiência prévia é necessária. Learn AI with Python no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 3 de 4.

Quanto tempo leva a aula “Armazenamentos de atributos: Feast e Tecton”?

A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.

Posso escrever e executar código nesta aula de Learn AI with Python?

Sim. Cada aula de Learn AI with Python inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.

Todas as aulas deste curso

  1. Padrões de arquitetura de sistemas de IA
  2. Pipelines escaláveis de aprendizado de máquina com Airflow
  3. Armazenamentos de atributos: Feast e Tecton
  4. Observabilidade e monitoramento de sistemas de IA
← Voltar para Learn AI with Python