test-demoprep / docs /new_vision_execution_notes.md
mikeboone's picture
docs: portal/new-vision session notes
eaeb114
|
Raw
History Blame Contribute Delete
3.78 kB

A newer version of the Gradio SDK is available: 6.26.0

Upgrade

DemoPrep New Vision 2 - Execution Notes

This document explains the current pipeline, where call volume comes from, and what to improve next.

1) End-to-end flow (current)

  1. User starts from chat or UI flow.
  2. Research stage builds company + industry context.
  3. DDL stage generates schema.
  4. Population stage runs LegitData (classification -> value generation -> repair -> quality gate -> write).
  5. ThoughtSpot deploy stage creates connection/tables/model.
  6. Liveboard stage (HYBRID):
    • MCP builds initial answers/liveboard.
    • TML post-processing polishes layout, groups, KPIs, and color.

Primary files:

  • chat_interface.py
  • legitdata_bridge.py
  • legitdata_project/legitdata/generator.py
  • thoughtspot_deployer.py
  • liveboard_creator.py

2) Why junk categorical data appeared

Observed failures (for example: branch/employee/department-like values) were primarily from fallback paths:

  • Name-like columns were sometimes treated as generic person names or weak fallbacks.
  • Some business dimensions (for example department) were not semantically typed strongly enough.
  • Validation focused on classic business categorical enums, but not enough on org/person realism.

New Vision 2 fixes now in place:

  • Stronger semantic routing for branch/department/person patterns.
  • Domain-backed generation for branch/org/department semantics.
  • Stricter sanitization for name-like business columns.
  • Validator/repair coverage extended for these semantics.

3) LLM/API call budget model

Call volume depends heavily on table/column count and how often AI/search fallback is needed.

Deterministic-ish stages:

  • Research: usually ~2 LLM calls (company + industry).
  • DDL: usually ~1 LLM call.
  • Liveboard questions: ~1 LLM call for question generation (if AI path enabled).
  • Liveboard answers: roughly one ThoughtSpot answer call per question (num_visualizations, often 6-8).

Variable stages (largest source of volume):

  • LegitData classification/generation:
    • AI classification calls (column-dependent).
    • AI value generation calls for AI_GEN columns (chunked by MAX_AI_ROWS_PER_CALL).
    • Web search calls for SEARCH_REAL columns.
    • Fallback may reduce quality and also shift call mix.

Practical planning heuristic per run:

  • Small run: 10-30 LLM-equivalent calls.
  • Medium run: 30-80 LLM-equivalent calls.
  • Large run (many AI_GEN/search columns): 80+.

4) How to measure calls today

Existing instrumentation:

  • Prompt logs are written to logs/prompts/*.md.
  • prompt_logger.py captures stage, model, timing, and token usage (when available).

Recommended operational check:

  1. Run one demo end-to-end.
  2. Open latest prompt log file.
  3. Summarize by stage:
    • research_company
    • research_industry
    • ddl
    • liveboard_questions
    • any population-related logged calls
  4. Record:
    • call count by stage
    • total tokens in/out
    • longest stage duration

5) Improvement backlog (priority order)

  1. Add a per-run call budget report in UI output:
    • counts by stage
    • token totals
    • top slow calls
  2. Add stricter quality gates for semantic text realism:
    • reject single-token junk for person/org-like dimensions
    • require domain membership for strict business categorical fields
  3. Add hybrid post-MCP enhancements:
    • deterministic chart diversity targets
    • safer dimension-selection heuristics for noisy fields
    • stronger duplicate-question prevention
  4. Add automatic "bad-dimension suppression" list at liveboard time:
    • hide suspect columns if data quality score is below threshold

6) Branching/project note

DemoPrep_new_vision2 is intended as a parallel workspace for faster iteration on realism + hybrid polish without blocking the original project flow.