{"id":50969332,"url":"https://github.com/databricks-solutions/databricks-aibi-design-first-accelerator","last_synced_at":"2026-06-19T00:30:37.943Z","repository":{"id":362545614,"uuid":"1258358172","full_name":"databricks-solutions/databricks-aibi-design-first-accelerator","owner":"databricks-solutions","description":null,"archived":false,"fork":false,"pushed_at":"2026-06-04T19:50:06.000Z","size":2833,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-06-04T21:16:54.195Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/databricks-solutions.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":"CODEOWNERS.txt","security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":"NOTICE.md","maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-06-03T13:59:48.000Z","updated_at":"2026-06-04T19:03:09.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/databricks-solutions/databricks-aibi-design-first-accelerator","commit_stats":null,"previous_names":["databricks-solutions/databricks-aibi-design-first-accelerator"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/databricks-solutions/databricks-aibi-design-first-accelerator","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/databricks-solutions%2Fdatabricks-aibi-design-first-accelerator","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/databricks-solutions%2Fdatabricks-aibi-design-first-accelerator/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/databricks-solutions%2Fdatabricks-aibi-design-first-accelerator/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/databricks-solutions%2Fdatabricks-aibi-design-first-accelerator/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/databricks-solutions","download_url":"https://codeload.github.com/databricks-solutions/databricks-aibi-design-first-accelerator/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/databricks-solutions%2Fdatabricks-aibi-design-first-accelerator/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34513020,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-18T02:00:06.871Z","response_time":128,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2026-06-19T00:30:37.111Z","updated_at":"2026-06-19T00:30:37.924Z","avatar_url":"https://github.com/databricks-solutions.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# AIBI Design-First Accelerator\n\n![AIBI Design-First Accelerator architecture](docs/images/architecture-diagram.png)\n\n## Design-first AI/BI on Databricks — greenfield or brownfield\n\n**Why we built this:** Teams already start AI/BI work with the right design—KPI catalogs, data models, governance rules—but each engagement still hand-builds tables, Metric View YAML, Lakeview dashboards, and Genie spaces from scratch. Metrics drift across SQL and BI; POCs burn weeks before anyone can ask real questions.\n\n**What it gives you:** One Genie pipeline, two starting points:\n\n- **Greenfield** — KPI spec + **ERD image** + best practices → synthetic UC tables, **Metric Views**, **dashboards**, and **Genie** (hours to a governed demo).\n- **Brownfield** — KPI spec + **existing UC schema(s)** (one or many catalogs/schemas, no ERD) → profile live data, same semantic and consumption stack on production tables.\n\nBoth paths share a single `MEASURE()` source of truth. **DAB** deploys the toolkit; **Genie** generates assets. Start synthetic, switch to `live_schema` when you connect real data.\n\nBuilt for **customers**, **data platform teams**, **analytics engineers**, and **Solution Architects**.\n\n**[Design guide](docs/design.md)** · **[Configuration](docs/design.md#configuration)** · **[Validation](docs/design.md#validation)**\n\n---\n\n## Get started in 3 steps\n\nFrom clone to a full synthetic healthcare stack on your workspace in three moves.\n\n### 1. Configure\n\nEdit two files before deploy:\n\n**[`databricks.yml`](databricks.yml)** — workspace and warehouse:\n\n```yaml\nvariables:\n  sql_warehouse_id:\n    default: \"\u003cyour-sql-warehouse-id\u003e\"\n\ntargets:\n  dev:\n    workspace:\n      host: https://\u003cyour-workspace\u003e.cloud.databricks.com/\n```\n\n`deploy_root` uses `${workspace.current_user.userName}` — no hardcoded email.\n\n**[`examples/member_claims/accelerator.yaml`](examples/member_claims/accelerator.yaml)** — catalogs and schemas (adjust for your UC):\n\n```yaml\ncatalog:\n  source:\n    catalog: aira_test\n    schema: member_claims_source\n  target:\n    catalog: aira_test\n    schema: member_claims_semantic\n```\n\nValidate locally:\n\n```bash\npython3 scripts/validate_dab_config.py examples/member_claims\n```\n\n### 2. Deploy\n\nInstall the [Databricks CLI](https://docs.databricks.com/en/dev-tools/cli/install.html) (v0.218+), authenticate (`databricks auth login --host \u003cyour-host\u003e`), then:\n\n```bash\ncd aibi-design-first-accelerator\ndatabricks bundle validate -t dev\ndatabricks bundle deploy -t dev\n```\n\nFiles sync to:\n\n`/Workspace/Users/\u003cyou\u003e/aibi-design-first-accelerator/`\n\n### 3. Run Genie\n\nOpen **Databricks Genie** (agent) and paste:\n\n```\nExecute the master prompt at /Workspace/Users/\u003cyou\u003e/aibi-design-first-accelerator/framework/prompts/00_master_prompt.md with EXAMPLE_DIR /Workspace/Users/\u003cyou\u003e/aibi-design-first-accelerator/examples/member_claims — run end to end.\n```\n\nReplace `\u003cyou\u003e` with your workspace user name. The master prompt loads `accelerator.yaml` from **EXAMPLE_DIR** and runs the full pipeline.\n\n**Agentic execution:** Genie should resolve paths from config, follow step prompts, and finish with minimal manual intervention.\n\nGenerated assets land under `examples/member_claims/output/` on the workspace (not in git).\n\n---\n\n## How it works\n\n```mermaid\nflowchart LR\n  subgraph in [You provide]\n    KPI[KPI spec]\n    ERD[ERD image]\n    BP[Best practices]\n  end\n  subgraph deploy [Step 2 — DAB]\n    DAB[bundle deploy]\n  end\n  subgraph genie [Step 3 — Genie]\n    G[Master prompt pipeline]\n  end\n  subgraph out [Generated]\n    T[UC tables]\n    MV[Metric views]\n    D[Dashboards]\n    GN[Genie space]\n  end\n  KPI --\u003e G\n  ERD --\u003e G\n  BP --\u003e G\n  DAB --\u003e G\n  G --\u003e T --\u003e MV --\u003e D\n  MV --\u003e GN\n```\n\n| Step | Tool | What happens |\n|------|------|----------------|\n| 1 | You | KPI spec + ERD (+ optional existing schema) |\n| 2 | DAB | Sync `framework/` + `examples/\u003cdomain\u003e/` to workspace |\n| 3 | Genie | Orchestrated prompts → data, semantic layer, consumption |\n\n---\n\n## Platform\n\n| Capability | Description |\n|------------|-------------|\n| **Data layer** | **Greenfield:** ERD image → DDL + synthetic data. **Brownfield:** profile existing UC tables across one or many `catalog.schema` locations (no synthetic run). |\n| **Semantic layer** | Unity Catalog Metric Views from KPI spec + [best practices](framework/inputs/best_practices.md) |\n| **Dashboards** | Live AI/BI Lakeview dashboards — see [Design guide → Framework](docs/design.md#framework-reference) |\n| **Genie** | Configuration notebook + governed Genie space |\n| **Validation** | [Design guide → Validation](docs/design.md#validation) |\n\n**Inputs (everything else is generated):**\n\n| Input | Greenfield | Brownfield |\n|-------|------------|------------|\n| KPI specification | `examples/\u003cdomain\u003e/inputs/kpi_spec.md` | Same |\n| Best practices | `framework/inputs/best_practices.md` | Same |\n| Data model | `inputs/erd.png` | `data_source.live_schemas[]` or `live_schema` pointing at existing UC tables (no ERD) |\n\n---\n\n## Examples\n\n### `member_claims` — try it first (synthetic healthcare)\n\nReference module with a star-schema ERD and KPI catalog. **Inputs only in git** — Genie generates tables, metric views, dashboards, and Genie under `output/`.\n\n```\nexamples/member_claims/\n├── accelerator.yaml\n└── inputs/\n    ├── erd.png\n    └── kpi_spec.md\n```\n\nUse the [3-step flow above](#get-started-in-3-steps) with `examples/member_claims`.\n\n**After a successful run:**\n\n```\n.../examples/member_claims/output/\n├── erd_parsed.yaml\n├── notebooks/\n├── metric_views/\n├── dashboards/          # manifest JSON (dashboard_id, links) — live dashboards in AI/BI\n├── genie_space/\n└── readme.md\n```\n\n### Your own domain\n\n```bash\ncp -r examples/member_claims examples/\u003cyour_domain\u003e\n```\n\n| Task | Action |\n|------|--------|\n| KPIs | Edit from [`framework/inputs/kpi_spec.template.md`](framework/inputs/kpi_spec.template.md) |\n| ERD | Replace `inputs/erd.png` |\n| Config | Update `accelerator.yaml` — `domain.name` must match folder name |\n| DAB | Set `variables.example_domain` and add `examples/\u003cyour_domain\u003e` to `sync.paths` in [`databricks.yml`](databricks.yml) — see [Deploy](docs/design.md#deploy) |\n| Run | `validate_dab_config.py` → `bundle deploy` → execute the same master prompt (new `examples/\u003cdomain\u003e/`) |\n\n| Mode | `data_source.type` | Behavior |\n|------|-------------------|----------|\n| Greenfield | `erd` | ERD → DDL + synthetic data |\n| Brownfield | `live_schema` | Profile existing tables; **no** synthetic generation |\n| Brownfield (multi-schema) | `live_schema` + `live_schemas[]` | Profile multiple `catalog.schema` locations; cross-schema joins in metric views |\n| Both | `erd_and_live_schema` | Optional greenfield + validate against live |\n\nBrownfield YAML examples — see [Design guide → Configuration](docs/design.md#configuration).\n\n---\n\n## Why teams use this\n\n| Challenge | How the accelerator helps |\n|-----------|---------------------------|\n| Weeks to wire KPIs into AI/BI assets | Structured Genie pipeline with shared prompts and templates |\n| Metric drift across SQL, dashboards, Genie | One `MEASURE()` source of truth in Metric Views |\n| Unclear “done” for a POC | [Validation checklist](docs/design.md#validation) + generated run summary |\n| Hard to move from prototype to production | Start greenfield (`erd`), then switch to `live_schema` — [Configuration](docs/design.md#data-source-modes) |\n\n**Typical journey:** run the sample → customize KPIs and ERD → re-run → connect real data → promote to shared UC.\n\n---\n\n## Prerequisites\n\n- Databricks workspace with **Unity Catalog**, **AI/BI / Lakeview**, and **Genie**\n- SQL warehouse (Pro or Serverless)\n- [Databricks CLI](https://docs.databricks.com/en/dev-tools/cli/install.html) v0.218+ with authentication\n- **Genie Code** with workspace file access\n- Python 3.9+ (optional, for `scripts/validate_dab_config.py`)\n\n---\n\n## Troubleshooting\n\nSee [Design guide → Troubleshooting](docs/design.md#troubleshooting).\n\n---\n\n## Repository structure\n\n```\naibi-design-first-accelerator/\n├── databricks.yml           # Workspace + DAB deploy\n├── framework/               # Prompts, templates, shared inputs (immutable)\n├── examples/\n│   └── member_claims/       # Reference example (inputs + config)\n├── docs/                    # Design guide (single doc)\n├── scripts/                 # validate_dab_config.py\n└── VALIDATION.md            # → docs/design.md#validation\n```\n\nGenie pipeline: `framework/prompts/00_master_prompt.md` → steps `01`–`06`. Details: [Design guide](docs/design.md).\n\n---\n\n## Appendix: Configuration\n\nDetailed reference lives in **[docs/design.md](docs/design.md)** — one design document for the accelerator.\n\n| Topic | Section |\n|-------|---------|\n| **Configuration** | [Configuration](docs/design.md#configuration) — `databricks.yml`, `accelerator.yaml`, paths, EXAMPLE_DIR, data modes, `clean_start` |\n| **Deploy** | [Deploy](docs/design.md#deploy) — DAB commands, workspace layout, add example modules, Genie kickoff |\n| **Validation** | [Validation](docs/design.md#validation) — definition of done, KPI checks |\n| **Framework reference** | [Framework reference](docs/design.md#framework-reference) — inputs, prompts, templates, examples |\n| **Troubleshooting** | [Troubleshooting](docs/design.md#troubleshooting) |\n\n---\n\n## Contributing\n\nIssues and pull requests welcome. Maintainer notes live under [`plan/`](plan/).\n\n---\n\n## How to get help\n\nDatabricks support doesn't cover this content. For questions or bugs, please open a GitHub issue and the team will help on a best effort basis.\n\n\n## License\n\n\u0026copy; 2025 Databricks, Inc. All rights reserved. The source in this notebook is provided subject to the Databricks License [https://databricks.com/db-license-source].  All included or referenced third party libraries are subject to the licenses set forth below.\n\n| library                                | description             | license    | source                                              |\n|----------------------------------------|-------------------------|------------|-----------------------------------------------------|\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdatabricks-solutions%2Fdatabricks-aibi-design-first-accelerator","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdatabricks-solutions%2Fdatabricks-aibi-design-first-accelerator","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdatabricks-solutions%2Fdatabricks-aibi-design-first-accelerator/lists"}