Urgent.News

What's breaking now, across thousands of outlets.

AI

ersioning Business Semantics for Enterprise AI

Your SQL can be perfectly reproducible while your business meaning is not. Suppose a user asks: What was revenue in Q1? Your data agent resolves Revenue , generates valid SQL, executes it successfully, and returns a number. Now suppose Finance changed the definition of Revenue in June. The old definition was: Revenue v3 = Recognized Revenue The new definition is: Revenue v4 = Recognized Revenue -…

In enterprise AI, it's crucial to version business semantics to ensure accurate and consistent results, despite changes in definitions over time. For instance, a user may ask about revenue in Q1, but the definition of revenue may have changed since then. The challenge lies in determining which definition should be applied to generate the correct answer.

A basic semantic layer may store a metric like revenue with a simple definition and aggregation method. However, when the definition changes, the old information is lost, making it difficult to understand the context of historical queries. To address this issue, semantic objects should be treated as immutable versions. This means separating the stable identity of a business concept from its various versions, each with its own definition, expression, owner, status, and effective time.

It's essential to distinguish between system time and business time. System time refers to when the semantic definition was created or published, while business time represents when the definition should apply. A semantic object may need to specify both the publication time and the effective time range.

When resolving semantics with time context, the semantic resolver should consider the effective time of the metric requested. For example, if a user asks about revenue in January, the semantic resolver needs to determine which definition was in effect during that period. This ensures that historical queries return accurate results based on the definitions that were valid at the time.

However, historical queries can have two interpretations: historical interpretation and restated interpretation. Historical interpretation calculates revenue using the definition that was valid in the historical period, while restated interpretation calculates January data using the current revenue definition. The system should have a policy defining which interpretation to use. Depending on the metric, the policy may vary. If the policy cannot be determined safely, clarification may be necessary.

Comparing metrics using different definitions can also be challenging. If the revenue definition changed in Q2, comparing Q1 and Q3 revenue using their respective historical definitions may not yield consistent results. Restating both periods using the latest definition ensures consistency but may not accurately reflect what was reported in Q1. This decision should be made within business governance, and the LLM should not invent the policy.

In summary, versioning business semantics is crucial for enterprise AI to maintain accuracy and consistency. Semantic objects should be treated as immutable versions, with separate timelines for system time and business time. The semantic resolver should consider temporal context when resolving semantics, and policies should be defined to handle historical queries. Comparison queries can be complex, and the LLM should rely on business governance to determine the most appropriate approach.

Written by urgent.news from Dev.to's reporting — not their text. Machine-written — may contain errors; check the original before relying on it.

Read the original at dev.to →

More in AI

More from Thursday 24 September →