在 Power BI 中优化 Copilot 语义模型

适用范围:Power BI Desktop Power BI 服务

在您开始将 Copilot 用于语义模型之前,我们建议您评估您的数据。 可能需要清理您的语义模型,以便Copilot能从中获取见解。

注意

请记住以下要求:

语义模型的 Copilot 使用注意事项

可以使用下表中的条件,通过 Copilot 创建准确的报表。 这些建议可帮助你生成准确的 Power BI 报表。

元素 注意事项 说明 申请地点 示例
表链接 定义明确的关系 确保表之间的所有关系都得到清晰和逻辑的定义。 指出哪些是一对多、多对一或多对多。 在模型视图中,使用“管理关系” Date[DateID]Sales[DateID]创建一对多关系,并验证关系是否处于活动状态。
度量值 标准化计算逻辑 度量值应具有标准化的清晰计算逻辑,易于解释和理解。 在度量值的定义和说明属性中 度量 DAX:Total Sales = SUM(Sales[SaleAmount]) 并添加描述:“所有销售金额的总和。”
度量值 命名约定 度量值的名称应清楚地反映其计算和用途。 创建度量值时的度量值名称字段中 使用描述性名称: Average Customer Rating 而不是缩写: AvgRating
度量值 预定义度量值 包括一组用户最有可能在报表中请求的预定义度量值。 在模型中创建用户通常需要的度量值 添加度量值,例如 YTD Sales = TOTALYTD(SUM(Sales[SaleAmount]), 'Date'[Date])MoM Growth = DIVIDE([This Month Sales] - [Last Month Sales], [Last Month Sales])
事实数据表 清晰划分 清晰地描述事实数据表,这些数据表保存可衡量的量化数据以用于分析。 在表属性和数据模型结构中 将表显式命名为事实数据表:FactSales、、FactTransactionsFactVisits
维度表 支持性描述性数据 创建维度表,其中包含与事实数据表中的量化度量值相关的描述性属性。 在表属性和数据模型结构中 创建维度表,例如DimProduct属性(ProductNameCategoryBrand)和DimCustomer特性(CustomerNameCitySegment)。
层次结构 逻辑分组 在数据中建立明确的层次结构,尤其是可用于在报表中向下钻取的维度表。 在表上下文菜单中,选择“新建层次结构” Date表中,创建层次结构:Year>Quarter>Month>Day 。 在 Geography 表中: Country/Region>State>City.
列名 明确标签 列名应清晰明确且一目了然。 避免使用需要进一步查找的 ID 或代码,而无需上下文。 在 Power Query 编辑器或模型视图中重命名列 将列从ProdID重命名为Product IDProduct Name,并从CustNo重命名为Customer Number
列数据类型 正确且一致 对所有表的列应用正确且一致的数据类型,以确保度量值正确计算并启用适当的排序和筛选。 在列属性中,设置数据类型 确保 Sales[SaleAmount] 为十进制数字(非文本), Date[Date] 是日期(而不是文本), Product[ProductID] 是整数。
关系类型 明确指定 为了确保准确生成报告,请明确指定关系(活动或非活动)的性质及其基数。 在关系属性对话框中 Date设置为Sales“多对一”(活动),将Product设置为Sales“多对一”(活动),并在适当时将角色扮演关系标记为非活动状态。
数据一致性 标准化值 在列中维护标准化值,以确保筛选器和报表中的一致性。 使用“查找和替换”或“Power Query”中的转换功能 Status列中,确保所有值都使用一致的大小写:Open、、 ClosedPending (不混合大小写,如openCLOSED)。
关键绩效指标 (KPI) 预定义和相关 建立一组与业务上下文相关并在报表中经常使用的 KPI。 为常用跟踪 KPI 创建度量值 定义度量值,例如ROI = DIVIDE([Profit], [Investment])CAC = DIVIDE([Marketing Spend], [New Customers])LTV = [Avg Order Value] * [Purchase Frequency] * [Customer Lifespan]
刷新时间表 透明化和定时 清楚地传达数据的刷新计划,以确保用户了解他们正在分析的数据的时间线。 在数据集设置和文档中 添加一个文本框或说明,指出:“每天在 UTC 上午 6:00 刷新数据”或“具有 15 分钟增量刷新的实时数据”。
安全性 角色级别定义 如果存在并非所有用户都应看到的敏感元素,请定义安全角色,以实现不同级别的数据访问。 在“模型”视图中,选择“管理角色” 分别创建角色“销售团队”和角色“HR”,其中“销售团队”使用筛选器 Sales[Region] = USERNAME(),“HR”筛选员工数据表。
元数据 结构文档 有关参考,请记录数据模型的结构,包括表、列、关系和度量值。 使用说明属性和外部文档 向表和列添加说明。 使用模型关系图、数据字典和度量值目录创建单独的文档。

下表列出了其他条件,这些条件可以帮助你创建Copilot准确的数据分析表达式(DAX)查询。 这些建议可帮助你生成准确的 DAX 查询。

元素 注意事项 说明 申请地点 示例
度量值、表和列 说明 在 description 属性中,定义每个元素以及如何使用它。 仅使用前 200 个字符。 在“属性”窗格中,度量值、表和列的“说明”字段 对于度量 [YOY Sales],请添加说明:“订单的逐年(YOY,年同比)差异”。 与“Date”[Year] 列一起使用,按最近一年以外的年份显示。 部分年份与上年同期相比。
计算组 说明 计算项不包括在模型元数据中。 使用计算组列的说明列出并说明计算项的使用。 仅使用前 200 个字符。 在计算组列的“属性”窗格中 对于 时间智能示例 计算组列,请添加说明:“将度量值和日期表用于 Current:当前值,MTD:本月至今,QTD:本季度至今,YTD:本年到目前为止,PY:前一年,PY MTD:前一年本月至今,PY QTD:前一年本季度至今,YOY:同比变化,YOY%:同比变化百分比。” 对于度量值表,请添加:“度量值用于汇总数据。” 这些度量值可以使用以下语法逐年显示:CALCULATE([Measure Name],Time intelligence[Time calculation] = YOY)。