Skip to content

JSON config file

tdfs4ds.json is the preferred place to keep non-secret project defaults so every notebook in the same repo starts from the same configuration.

Search order

  1. ./tdfs4ds.json (current working directory)
  2. ~/.tdfs4ds/config.json (user-wide)

Override with load_config(path='/path/to/feature_store.json').

Example

{
    "schema": "MY_DATABASE",
    "data_domain": "MY_PROJECT",
    "display_logs": true,
    "store_feature": "MERGE",
    "varchar_size": 1024,
    "instruct_model_provider": "openai",
    "instruct_model_model": "gpt-4o",
    "instruct_model_url": null,
    "embedding_model_provider": "vllm",
    "embedding_model_model": "text-embedding-3-small",
    "embedding_model_dim": 1536,
    "chroma_mode": "local",
    "chroma_path": "./tdfs4ds_chroma"
}

Keys are case-insensitive. Both snake_case and SCREAMING_SNAKE_CASE work.

What you cannot put here

instruct_model_api_key, embedding_model_api_key, and any other secret keys are rejected from JSON config to prevent accidental commits. Use a .env file or an OS environment variable instead.

Reloading

tdfs4ds.load_config(path='./tdfs4ds.json')