SnowPro Specialty: Gen AI Question 9
Single answerCortex AnalystA retail company wants business users to ask natural-language questions such as "What were online sales in Germany last quarter by product category?" using Cortex Analyst. The analytics team has a semantic model over sales data, but users report that Analyst sometimes picks the wrong metric when the word "sales" is used because the model contains both GROSS_SALES and NET_SALES. The team wants to improve answer accuracy without changing the underlying warehouse tables or requiring users to learn SQL. Which action is the best way to address this issue?
- A
Update the semantic model to define clearer business-friendly metric names, descriptions, and synonyms so Cortex Analyst can better map user language to the intended measure
- B
Create a new virtual warehouse dedicated to Cortex Analyst queries so the model has more compute available when interpreting the prompt
- C
Convert the semantic model into a search service so Cortex Analyst can retrieve matching rows before generating SQL
- D
Replace the semantic model with a dynamic table that materializes both GROSS_SALES and NET_SALES into one column named SALES
Show answer and explanation
Correct answer: A
Explanation
Cortex Analyst is intended for natural-language analytics over structured data and depends on a well-designed semantic model to map user questions into the correct SQL. When multiple metrics are semantically close, such as GROSS_SALES and NET_SALES, the most effective remediation is to refine the semantic model by improving metric names, business descriptions, and synonyms so common user language is unambiguous. This aligns with Snowflake best practices for governed semantic layers: make business terms explicit, model metrics and dimensions clearly, and use user-friendly terminology that matches how consumers ask questions. Compute scaling may help latency, and transformation features like dynamic tables may help data preparation, but neither addresses the root cause of incorrect metric selection in Cortex Analyst.
- A. Correct.
Correct. Cortex Analyst relies on the semantic model to understand business concepts and map natural-language requests to the correct metrics, dimensions, and filters. If users say "sales" but the model has multiple candidate measures, the best practice is to improve the semantic layer with clearer metric definitions, descriptions, and synonyms/aliases that reflect how business users actually speak. This directly addresses ambiguity while preserving governed access to the underlying data.
- B. Incorrect.
Incorrect. A larger or dedicated virtual warehouse can improve query execution performance, but it does not resolve semantic ambiguity in natural-language interpretation. The problem described is that Analyst is selecting the wrong metric, which is a modeling and business-language issue rather than a compute-capacity issue.
- C. Incorrect.
Incorrect. Cortex Analyst is designed to work from a semantic model that helps generate accurate SQL over structured data. A search service is not a substitute for the semantic definitions needed to disambiguate business terms like GROSS_SALES versus NET_SALES. This option reflects a common misconception that retrieval infrastructure solves all LLM accuracy problems, even when the main issue is semantic modeling for analytics.
- D. Incorrect.
Incorrect. Combining distinct business metrics into a single column would reduce clarity and governance, and it would likely make reporting less accurate rather than more accurate. Dynamic tables can help with transformation or precomputation workflows, but they are not the correct tool for resolving meaning in user questions. The better solution is to preserve separate governed metrics and improve how they are represented in the semantic model.