Context Enrichment
Fino automatically analyzes your data sources to understand their structure, meaning, and business context. This semantic understanding powers more accurate natural language queries, better visualizations, and smarter insights.
Overview
When you connect a data source or import a dataset, Fino's AI:
- Analyzes the schema - Examines tables, fields, and relationships
- Generates descriptions - Creates human-readable explanations
- Identifies patterns - Detects business metrics, entity types, and data categories
- Builds a glossary - Defines domain-specific terms and acronyms
This context is editable—you can review, refine, and enhance what Fino generates to improve accuracy.
Accessing Context
For Connected Sources
Navigate to Data → Sources, select a connection or dataset, then click the Context tab.
For Local Datasets
Navigate to Data → Sources → FinoDB, select a dataset, then click the Context tab.
Connection-Level Context
Connection-level context applies to an entire data source (all tables/indices within a connection).
Domain
A badge identifying the business domain of your data source.
Examples: E-commerce, Healthcare, Finance, Logistics, HR
To edit: Click the domain badge → type new value → press Enter or click ✓
Summary
An AI-generated description of what your data source contains and its purpose.
To edit: Click the summary text → modify in the textarea → click Save
Data Categories
Logical groupings of related tables within your data source.
| Field | Description |
|---|---|
| Name | Category identifier (e.g., "Customer Data", "Order Management") |
| Description | What this category represents |
| Tables | List of tables belonging to this category |
To add: Click "+ Add Category" → fill in details → click Save
Key Metrics
Important business metrics tracked in this data source.
| Field | Description |
|---|---|
| Name | Metric name (e.g., "Monthly Revenue", "Customer Churn Rate") |
| Description | What this metric measures |
| Source | Table or calculation source |
To add: Click "+ Add Metric" → fill in details → click Save
Entity Types (SQL connections only)
Core business entities and their identifying fields.
| Field | Description |
|---|---|
| Name | Entity name (e.g., "Customer", "Order", "Product") |
| Description | What this entity represents |
| Identifier | Primary key or unique identifier field |
To add: Click "+ Add Entity" → fill in details → click Save
Glossary
Business terms, acronyms, and domain-specific vocabulary.
| Field | Description |
|---|---|
| Term | The word or acronym (e.g., "MRR", "ARR", "SKU") |
| Definition | Plain-language explanation |
To add: Click "+ Add Term" → fill in details → click Save
Database Context (SQL Connections)
For SQL-based connections (BigQuery, Snowflake, PostgreSQL, etc.), Fino generates additional schema-level context that captures table structures and relationships.
Accessing Database Context
- Navigate to Data → Sources
- Select a SQL connection
- Click the Context tab
- Switch to the Database sub-tab
Tables
A list of all tables discovered in your database with their metadata.
| Field | Description |
|---|---|
| Table Name | The name of the table |
| Primary Key | The column that uniquely identifies rows |
| Description | AI-generated explanation of the table's purpose |
| Purpose | The business function this table serves |
Table Relationships (Joins)
Fino automatically detects relationships between tables based on foreign key patterns and column naming conventions.
| Field | Description |
|---|---|
| From Table → To Table | The tables involved in the relationship |
| Join Columns | Which columns are used to join (e.g., order_id → id) |
| Cardinality | The relationship type (1:1, 1:N, N:1, N:N) |
Views
ERD View
A visual Entity Relationship Diagram showing:
- Tables as boxes with their primary keys
- Relationship lines connecting related tables
- Cardinality labels on connections
- Hover tooltips for full details
Navigation:
- Pan by dragging the canvas
- Zoom with scroll wheel
- Hover over tables or relationships for details
List View
A browsable list of tables, each showing:
- Table name and primary key
- Outgoing relationships (this table references others)
- Incoming relationships (other tables reference this one)
How Relationships Improve Queries
When you ask Fino a question involving multiple tables:
- Without relationships: Fino may not know how to join tables correctly
- With relationships: Fino uses detected joins to automatically combine data across tables
Example:
- Question: "Show me orders with customer names"
- Fino knows
orders.customer_idjoins tocustomers.id(N:1 relationship) - Generates correct JOIN query automatically
Dataset-Level Context
Dataset-level context applies to individual tables or indices within a connection.
Data Source Overview
High-level information about the specific dataset.
| Field | Description |
|---|---|
| Category | Classification of this dataset's content |
| Description | What data this dataset contains |
To edit: Click the description text → modify → click Save
Field Descriptions
AI-generated descriptions for each field/column in the dataset.
Need Review Workflow
Fields are flagged for review based on AI confidence scores:
- Need Review - Low confidence, user review recommended
- Fields move out of "Need Review" when you click Looks Good or edit them
Field Card Details
Each field card shows:
- Field name - The column/field identifier
- Type - Data type (text, number, boolean, date, etc.)
- Description - AI-generated explanation of what this field contains
- Synonyms - Alternative names for this field (helps with natural language queries)
Editing Fields
- Click a field card to expand it
- Edit description - Modify the AI-generated text
- Add synonyms - Type alternative names and press Enter
- Remove synonyms - Click the × on any synonym badge
- Click Save to persist changes
Approving Fields
- Click Looks Good to approve a field without changes
- This increases the confidence score and removes it from "Need Review"
Filters
Pre-defined query filters that can be applied to this dataset.
| Field | Description |
|---|---|
| Name | Filter identifier |
| SQL Expression | The WHERE clause condition |
| Description | What this filter does |
To add: Click "+ Add Filter" → fill in details → click Save
YAML Editor
For advanced users, a YAML editor provides direct access to the full context structure.
Accessing YAML Editor
Click the YAML button in the context view header.
Use Cases
- Bulk editing multiple items at once
- Copy/paste context between data sources
- Version control friendly format
- Programmatic updates
Validation
The editor validates your YAML before saving and shows errors if the structure is invalid.
How Context Improves Queries
Natural Language Understanding
When you ask Fino a question like "Show me top customers by revenue":
- Without context: Fino guesses which fields represent "customers" and "revenue"
- With context: Fino uses your defined entities, metrics, and field descriptions to generate accurate queries
Synonym Resolution
If you define "order_id" with synonyms ["order number", "purchase id"]:
- Asking about "order numbers" correctly maps to the
order_idfield
Business Metric Accuracy
Defined key metrics ensure consistent calculations across queries and dashboards.
Best Practices
1. Review AI-Generated Context
The AI does a good job, but domain expertise improves accuracy:
- Check that field descriptions match your actual data meaning
- Add business-specific synonyms for key fields
- Correct any misidentified entity types or metrics
2. Prioritize High-Impact Fields
Focus review time on:
- Fields used in common queries
- Key metrics and KPIs
- Customer/user identifiers
- Financial and revenue fields
3. Keep Glossary Updated
Add terms as your team uses them:
- Internal acronyms (e.g., "CAC" = Customer Acquisition Cost)
- Industry jargon
- Company-specific terminology
4. Use Descriptive Categories
Well-organized data categories help users discover relevant tables:
- Group by business function (Sales, Marketing, Operations)
- Group by data type (Transactional, Reference, Analytics)
Troubleshooting
Context Not Generating
- Check connection status - Ensure the data source is accessible
- Verify permissions - Fino needs read access to analyze schemas
- Wait for processing - Large schemas may take a few minutes
Edits Not Saving
- Check for validation errors - Required fields must be filled
- Refresh the page - Try re-loading if saves seem stuck
- Check network - Ensure you have connectivity
AI Descriptions Seem Wrong
- Edit directly - Click to modify any description
- Add context - More synonyms and glossary terms improve future generations
- Use YAML editor - For bulk corrections
Next Steps
- Review your context - Start with high-priority data sources
- Add business glossary - Define your domain terminology
- Test with queries - Ask natural language questions to see context in action
- Iterate - Refine context as you discover improvements