Skip to main content

fal setup (Python models)

Adapter no longer maintained

The dbt-fal adapter is no longer actively maintained. This means although the adapter is still operational, there is no further development or bug fixes planned and it may not be compatible with future versions of dbt. dbt-fal was test until dbt v1.5.

Documentation for dbt-fal are kept for reference purposes only and will eventually be removed from the site in the future.

  • Maintained by: fal.ai
  • Authors: Features & Labels
  • GitHub repo: fal-ai/fal
  • PyPI package: dbt-fal
  • Slack channel: #tools-fal
  • Supported dbt Core version: v1.3.0 and newer
  • dbt Cloud support: Not Supported
  • Minimum data platform version: n/a

Installing dbt-fal

Use pip to install the adapter. Before 1.8, installing the adapter would automatically install dbt-core and any additional dependencies. Beginning in 1.8, installing an adapter does not automatically install dbt-core. This is because adapters and dbt Core versions have been decoupled from each other so we no longer want to overwrite existing dbt-core installations. Use the following command for installation:

Configuring dbt-fal

For fal-specific configuration, please refer to fal configs.

Setting up fal with other adapter

fal offers a Python runtime independent from what database you are using and integrates seamlessly with dbt. It works by downloading the data as a Pandas DataFrame, transforming it in a local Python runtime and uploading it to the database. The only configuration change you need to do is adding it to the profiles.yml and setting the db_profile property as the database profile you are already using.

It will run all the SQL dbt models with the main adapter you specified in your profiles.yml and all the Python models are executed by the fal adapter.

Example:

profiles.yml
jaffle_shop:
target: dev_with_fal
outputs:
dev_with_fal:
type: fal
db_profile: dev_pg # This points to your main adapter
dev_pg:
type: postgres
...
0