What is the Learning Sub Agent?
Julius includes an intelligent learning sub agent that automatically improves its understanding of your data as you use your data connectors. Rather than relying solely on the static schema (table and column names), Julius learns the relationships, patterns, and business context of your data through actual usage. This learning happens automatically in the background every time you interact with your data connectors. Over time, Julius builds a knowledge base that helps it generate more accurate queries, understand complex relationships between tables, and reduce errors, all without any manual setup. The learning sub agent is particularly powerful for databases with complex relationships, non-obvious foreign keys, or business-specific logic that isn’t captured in the raw schema alone.How It Works
The learning sub agent runs asynchronously in the background after each conversation where you use a data connector. It examines your chat history, the queries Julius generated, their outputs, and any errors to identify table relationships, column patterns, and business context specific to your data. Below is a diagram that demonstrates this process.
- Your prompts and questions
- The SQL queries or Python code Julius generates
- Query results and any errors
- Your existing learned schema knowledge
What Julius Learns
The learning sub agent focuses on contextual information that helps Julius understand how your data fits together and how you use it.
- 
Column Usage Patterns: Understanding what each column represents in business terms
- Example: sales.revenue→ “Total sales amount in USD”
- Example: orders.status→ “Values: pending, shipped, delivered, cancelled”
 
- Example: 
- 
Table Relationships: How tables connect to each other through foreign keys
- Example: sales.region_id→ “Links to regions.id table”
 
- Example: 
- 
Business Context: Domain-specific information gleaned from your conversations
- Example: customers→ “B2B customer master table with primary business contact info”
 
- Example: 
- 
Common Join Patterns: Frequently used table combinations and relationships
- Example: products.category→ “Product classification, often joined with sales for analysis”
 
- Example: 
Benefits
The learning sub agent provides several key advantages: More Accurate Queries: As Julius learns about your data relationships, it generates SQL queries with correct joins and references, reducing errors. Better Business Understanding: Julius learns the business meaning behind your column names and table structures, making it easier to ask questions in plain language. Improved Over Time: The more you use your data connectors, the smarter Julius becomes about your specific data. Zero Setup Required: Learning happens automatically—you don’t need to manually document your schema or configure anything. Persists Across Conversations: Learned knowledge carries over to all future conversations, so you don’t have to re-explain your data structure each time. You can view and manage all learned information at any time from your Data Connectors page, giving you full visibility and control over what Julius knows about your data.How Learning Improves Your Experience
Consider this example: You have a database withsales, customers, and regions tables. The first time you ask Julius to analyze sales by region, it might need to explore the schema to find the relationships. However, after that interaction, Julius learns that:
- sales.region_idlinks to- regions.id
- sales.customer_idlinks to- customers.id
- regionscontains geographic information for grouping sales
Privacy and Data
The learning sub agent only learns about the structure and relationships of your data, not the actual data values. It focuses on schema patterns, column purposes, and table relationships. Your actual data remains private and secure.The learning sub agent works with all data connector types including PostgreSQL, BigQuery, Snowflake, and MCP servers.
