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_ordersfeast 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_statsMaterializaçã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:00Disponibilizaçã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 applyregistra as definiçõesfeast materializecarrega 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 applyregistra entidades e visões de característicasfeast materializecarrega o armazenamento on-line para as datas fornecidasget_online_featuresdisponibiliza 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
- Padrões de arquitetura de sistemas de IA
- Pipelines escaláveis de aprendizado de máquina com Airflow
- Armazenamentos de atributos: Feast e Tecton
- Observabilidade e monitoramento de sistemas de IA