{{vm._toast.message}}

Settings

Theme and branding
Preview
The quick brown fox jumps over the lazy dog 0123456789
Background Theme
Company Icon
Brand icon
No icon selected
{{vm.brandStatus.message}}
More options coming soon:

Layout

Enable Edit Mode to drag sections within the current page and save their order.

Bookmarks

Save and load your current setup
{{vm.bmStatus.message}}
No bookmarks yet.
👤 {{vm.auth.user.first_name}} {{vm.auth.user.last_name}}
{{vm.auth.user.username}}
�📧 {{vm.auth.user.email}}
🏢 {{vm.auth.user.organization}}
📁 {{vm.auth.user.area}}

Data Collection

Upload Datasets

Select method
CSV Excel Ingest SQL Query Ingest Full Table

CSV

Leave blank to auto-detect

Excel

Ingest SQL Query

Write a custom query

Ingest Full Table

Connect & copy a table

Datasets

  • {{d.name || d.id}} {{d.id}} ({{d.rows}}×{{d.cols}})
  • No datasets yet. Upload one above.

Preview

Rows {{vm.offset}} - {{vm.offset + vm.limit}} of {{vm.total}}
{{c}}
{{r[c]}}

Integration

{{vm.status.message}}
Validation: {{ vm.validation.ok ? 'OK' : 'Has issues' }} {{ vm.validation.warnings.length }} warning(s) {{ vm.validation.errors.length }} error(s)

Errors

  • {{e}}

Warnings

  • {{w}}

Semantic Model

Available datasets

  • {{d.name || d.id}} in model

Model sources

  • {{sid}} {{ (vm.dsColumns[sid] && vm.dsColumns[sid].length) ? (vm.dsColumns[sid].length + ' cols') : 'loading cols' }}

Relationships

  • {{r.leftDs}}.{{r.leftCol}} {{r.type || 'inner'}} join {{r.rightDs}}.{{r.rightCol}}

Advanced (optional)

Use Dimensions to group by fields, and Measures to compute aggregations like sum, avg, count distinct. You can ignore this section and just Preview/Export the integrated join.

Dimensions

  • {{d.source}}.{{d.column}} as {{d.alias}}

Measures

  • {{m.agg || 'sum'}}({{m.source}}.{{m.column}}) as {{m.alias}}

Saved Models

  • {{m.name}} ({{m.id}})

Integration Summary

Primary: {{ vm.integrationSummary.primary || '-' }}
Sources: {{ vm.integrationSummary.sourcesCount }}
Rows: {{ vm.integrationSummary.rows }}   Columns: {{ vm.integrationSummary.columns }}
Sample columns:
{{c}}

Relationships

  • {{rel}}
Summary reflects the latest Preview result.

Integrated Preview

Rows {{vm.semanticPreview.offset}} - {{vm.semanticPreview.offset + vm.semanticPreview.limit}} of {{vm.semanticPreview.total}}
{{c}}
{{r[c]}}

AI Assistant: Semantic Model Builder

Provide a goal; the assistant will suggest dimensions, measures, and relationships based on current data.
Context (auto):
{{ vm.aiContext() }}
Apply to model
Tip: choose an existing model to merge suggestions into it, or leave it blank and provide a new name.
Note: Select at least one dataset so the schema can be visualized. You can add more sources later in the Integration section.
{{vm.status.message}}
Debug info:
Current origin: {{vm._origin || 'unknown'}}
API endpoint: {{vm._apiUrl || 'http://127.0.0.1:8000'}}
{{vm.ai.status.message}}

Suggestions

Rationale:
  • {{r}}
Dimensions
  • {{d.name}} — cols: {{d.columns.join(', ')}}
Measures
  • {{m.name}} = {{m.expression}}
Relationships
  • {{rel.fromTable}}.{{rel.fromColumn}} → {{rel.toTable}}.{{rel.toColumn}} ({{rel.type||'inner'}})

Processing

{{vm.status.message}}

Available DataFrames

Datasets ({{vm.datasets.length || 0}})
{{ds.name}} No datasets found. Upload CSV files in Data Collection section.
Semantic Models ({{vm.semanticModels.length || 0}})
{{m.name}} No semantic models found. Create one in Data Collection section.
Selected Model Tables ({{vm.proc.tables.length || 0}})
{{t.var}} Select a semantic model below to see its tables Click "Refresh tables" to load
Notebook Outputs ({{vm.proc.outputs.length || 0}})
{{name}} Run cells to create output dataframes

Notebook

Cell {{$index+1}}
{{vm.proc.stdouts[$index]}}

Detected DataFrames

DataFrames created in cells (variables) appear here after running. Save them as datasets to reuse in Analytics and Visualization.
{{vm.proc.outputStatus[name].message}}
{{name}}
{{c}}
{{r[c]}}
Run your cells to see outputs here.

Analysis

Datasets for Analysis

Organized by Semantic Model → tables
{{grp.name}} ({{grp.smId}}) {{grp.datasets.length}} table(s)
Integrated {{d.name || d.id}} {{d.rows}}×{{d.cols}}
No datasets yet. Upload/ingest one in Data Collection.
Selected
{{ (vm.datasets | filter:{id: vm.ml.datasetId})[0].name || vm.ml.datasetId }} {{ (vm.semanticModels | filter:{id: vm.ml.smId})[0].name || vm.ml.smId }} Integrated -
Pick a semantic model's Integrated chip or a specific table chip.
Columns ({{vm.selectedSchema.columns.length}})
NameType
{{c}} {{vm.selectedSchema.dtypes[c] || '-'}}
Rows: {{vm.selectedSchema.rows || (vm.selectedSchema.total) || 'n/a'}}
Sample (first 5 rows)
{{c}}
{{r[c]}}

Method Recommendation

Select a dataset or semantic model (left panel) to enable recommendations.
  • {{i}}
Source: {{vm.recommend.summary.source_type}} {{vm.recommend.summary.source_id}} · Rows {{vm.recommend.summary.rows}} · Cols {{vm.recommend.summary.columns}} · Numeric {{vm.recommend.summary.numeric_columns}} · Categorical {{vm.recommend.summary.categorical_columns}} · Target {{vm.recommend.summary.target}} (distinct {{vm.recommend.summary.target_distinct}})
Recommended Methods: {{m}}
Reasons:
  • {{r}}
Issues:
  • {{i}}
Analyzing...

Train Model

Pick a dataset above
{{vm.ml.methodStatus.message}}
{{vm.ml.healthStatus.message}}
{{vm.ml.trainStatus.message}}
Accuracy: {{ (vm.ml.trainSummary.accuracy*100) | number:1 }}% · Precision: {{ (vm.ml.trainSummary.macro_precision*100) | number:1 }}% · Recall: {{ (vm.ml.trainSummary.macro_recall*100) | number:1 }}% · F1: {{ (vm.ml.trainSummary.macro_f1*100) | number:1 }}% {{vm.ml.trainCopyMsg}}
Hyperparameters
Tips
  • Use Integrated to train on the joined model; or pick a single table.
  • For ANN, use hidden_layer_sizes like “64,32”.
  • For Random Forest, increase n_estimators for better accuracy.
  • For LSTM, ensure data is ordered chronologically; sequence_length defines past observations to use.
  • For RL, use stock data with OHLCV columns. Agent learns to buy/sell/hold to maximize returns. Q-Learning is simpler, DQN uses neural networks.

Reinforcement Learning Results

Training Summary
Method: {{vm.ml.result.method}}
Episodes: {{vm.ml.result.episodes}}
Initial Balance: ${{vm.ml.result.initial_balance | number:2}}
Best Portfolio: ${{vm.ml.result.best_portfolio_value | number:2}}
Return: {{vm.ml.result.final_return_pct | number:2}}%
Best Episode: {{vm.ml.result.best_episode}}
Last 20 Episodes Portfolio Values

Result

{{ vm.ml.result | json }}

Evaluate Model

{{vm.ml.evalStatus.message}}
Accuracy: {{ (vm.ml.evalSummary.accuracy*100) | number:1 }}% · Precision: {{ (vm.ml.evalSummary.macro_precision*100) | number:1 }}% · Recall: {{ (vm.ml.evalSummary.macro_recall*100) | number:1 }}% · F1: {{ (vm.ml.evalSummary.macro_f1*100) | number:1 }}% · AUC: {{ vm.ml.evalSummary.auc | number:3 }} {{vm.ml.evalCopyMsg}}
MSE: {{ vm.ml.evalSummary.mse | number:4 }} · MAE: {{ vm.ml.evalSummary.mae | number:4 }} · R²: {{ vm.ml.evalSummary.r2 | number:4 }}
Inertia: {{ vm.ml.evalSummary.inertia | number:3 }}
Final Portfolio: ${{ vm.ml.evalSummary.final_portfolio | number:2 }} · Return: {{ vm.ml.evalSummary.total_return_pct | number:2 }}% · Total Trades: {{ vm.ml.evalSummary.total_trades }}

Confusion Matrix

ROC Curve (binary)

RL Agent Performance

Final Portfolio: ${{vm.ml.eval.final_portfolio | number:2}}
Total Return: {{vm.ml.eval.total_return_pct | number:2}}%
Total Trades: {{vm.ml.eval.total_trades}}
Buy Actions: {{vm.ml.eval.buy_count}}
Sell Actions: {{vm.ml.eval.sell_count}}
Hold Actions: {{vm.ml.eval.hold_count}}
Portfolio Value Over Time

Regression Metrics

  • MSE: {{vm.ml.eval.mse}}
  • MAE: {{vm.ml.eval.mae}}
  • R²: {{vm.ml.eval.r2}}

Clustering Metrics

  • Inertia: {{vm.ml.eval.inertia}}

Cluster Sizes

Predict & Save

{{vm.ml.predStatus.message}}

AI Assistant: ML Pipeline Builder

Describe the goal; the assistant will suggest a model, target, features, and parameters based on the current selection.
{{vm.analysisAi.status.message}}

Suggested Pipeline Switch to: {{vm.analysisAi.pipeline.suggestedDatasetId}}

Task: {{vm.analysisAi.pipeline.task}} · Method: {{vm.analysisAi.pipeline.method}} · Target: {{vm.analysisAi.pipeline.target}}
Features:
{{f}} -
Params:
  • {{k}}: {{v}}
  • (none)
Rationale:
  • {{r}}

Visualization

Build & Save

Pick a source to load columns.
{{vm.viz.status.message}}

Saved visualizations

No visualizations yet.
  • {{v.name}} ({{v.viz_id}} · {{v.source_type}}: {{v.source_id}})

Charts

Quick exploratory charts for your data source. Select a source above in "Build & Save" section.
Select a data source in the "Build & Save" section above to enable charts.
📊 Histogram
📈 Value Counts (Top Values)
🔥 Correlation Heatmap
Shows correlations between numeric columns.
⚫ Scatter Plot
📦 Boxplot (Distribution)
{{vm.charts.status.message}}

Create New Project

{{vm.projectModalError}}

Share Project

Add User

{{vm.shareModalError}}
{{vm.shareModalSuccess}}

Users with Access

Loading users...
{{user.username}}
{{user.email}} • {{user.role}}
You