-
Notifications
You must be signed in to change notification settings - Fork 1.2k
feat: Add blog post on Feast dbt integration #5915
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: Add blog post on Feast dbt integration #5915
Conversation
Co-authored-by: franciscojavierarceo <4163062+franciscojavierarceo@users.noreply.github.com>
|
|
||
| # Streamlining ML Feature Engineering with Feast and dbt | ||
|
|
||
| If you're building machine learning models in production, you've likely faced the challenge of managing features consistently across training and serving environments. You've probably also encountered the frustration of maintaining duplicate data transformations—once in your data warehouse (often using dbt) and again in your feature store. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@copilot We should reframe this from the lens of a user of DBT that loves their models and wants to easily get some dbt model into production.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Reframed the entire blog post from a dbt user's perspective. The post now:
- Opens by speaking directly to dbt users who've invested in their models
- Emphasizes that existing dbt models are already ML-ready and don't need rewriting
- Frames steps as using "existing" models rather than creating new ones
- Adds a "What Just Happened?" section to highlight the value of going from dbt to production
- Updates the conclusion to be action-oriented for dbt users
The narrative now centers on dbt users who love their models and want to easily get them into production for ML without duplication. ✨
Commit: 48768fd
Co-authored-by: franciscojavierarceo <4163062+franciscojavierarceo@users.noreply.github.com>
Co-authored-by: franciscojavierarceo <4163062+franciscojavierarceo@users.noreply.github.com>
|
Just as a heads up, I was blocked by some firewall rules while working on your feedback. Expand below for details. Warning Firewall rules blocked me from connecting to one or more addresses (expand for details)I tried to connect to the following addresses, but was blocked by firewall rules:
If you need me to access, download, or install something from one of these locations, you can either:
|
franciscojavierarceo
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@copilot please replace instances of ML/machine learning with AI.
Co-authored-by: franciscojavierarceo <4163062+franciscojavierarceo@users.noreply.github.com>
Replaced all instances of ML/machine learning with AI throughout the blog post. Changes include:
The blog post now consistently uses AI terminology while maintaining all technical content and the dbt-user-centric perspective. Commit: 564a01f Warning Firewall rules blocked me from connecting to one or more addresses (expand for details)I tried to connect to the following addresses, but was blocked by firewall rules:
If you need me to access, download, or install something from one of these locations, you can either:
|
- Use -m/--manifest-path flag instead of positional args (9 instances) - Replace --tag-filter with correct --tag flag (3 instances) - Remove non-existent --no-online flag - Fix CI/CD example: -t feast set timestamp-field, use --tag feast - Update feast dbt list output to match actual CLI format - Bump GitHub Actions versions from v2 to v4/v5 - Update Python version from 3.9 to 3.11 Signed-off-by: yassinnouh21 <yassinnouh21@gmail.com>
| --- | ||
|
|
||
| <div class="hero-image"> | ||
| <img src="/images/blog/rocket.png" alt="Feast and dbt Integration" loading="lazy"> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@copilot can you use this photo?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm unable to download the image from the GitHub URL due to network restrictions in this environment. Could you:
- Upload the image directly to the repository at
infra/website/public/images/blog/feast-dbt-integration.png, or - Provide the image through a different accessible URL?
Once the image is available in the repository, I can update the blog post to reference it.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@copilot I updated it and called it dbt+feast.png please update the blog post
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Updated the blog post to use the new hero image dbt+feast.png.
The image featuring the dbt and Feast logos with the rocket launch visual is now live in the blog post.
Commit: ab1f729
|
Just as a heads up, I was blocked by some firewall rules while working on your feedback. Expand below for details. Warning Firewall rules blocked me from connecting to one or more addresses (expand for details)I tried to connect to the following addresses, but was blocked by firewall rules:
If you need me to access, download, or install something from one of these locations, you can either:
|
Co-authored-by: franciscojavierarceo <4163062+franciscojavierarceo@users.noreply.github.com>
|
Just as a heads up, I was blocked by some firewall rules while working on your feedback. Expand below for details. Warning Firewall rules blocked me from connecting to one or more addresses (expand for details)I tried to connect to the following addresses, but was blocked by firewall rules:
If you need me to access, download, or install something from one of these locations, you can either:
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: ab1f729372
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| cd your_dbt_project | ||
| dbt compile | ||
| feast dbt import -m target/manifest.json -e your_entity_column -d bigquery |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Add output mode to final quickstart import command
The closing “try it out” snippet asks users to run feast dbt import directly from your_dbt_project without --output or --dry-run, which makes the command try to apply objects to a Feast registry and requires a valid feature_store.yaml in the current directory. In the common case where readers are following this as their first Feast setup from a dbt project, this command will fail before they can see results; either switch to an existing Feast repo before this step or include --output ... in this final example.
Useful? React with 👍 / 👎.

What this PR does / why we need it:
Adds blog post documenting Feast's dbt integration to
infra/website/docs/blog/feast-dbt-integration.md, written from the perspective of dbt users who want to leverage their existing models for production AI.Content structure:
manifest.jsonNarrative approach:
The blog post speaks directly to dbt users, emphasizing that their existing models are already AI-ready and can go to production without rewriting. All examples frame steps as using "existing" models rather than creating new ones, positioning Feast as respecting dbt as the single source of truth. Uses AI terminology consistently throughout (e.g., "AI features", "AI team", "AI predictions", "AI deployment").
Visual design:
Features a custom hero image (
dbt+feast.png) showcasing the dbt and Feast logos with a rocket launch visual, symbolizing the powerful integration and the journey from dbt models to production AI features.Misc
Blog post validated with Astro build system. Uses custom hero image asset featuring dbt and Feast branding. Authored by Francisco Javier Arceo and Yassin Nouh.
Original prompt
💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.