적용 대상:✅ Power BI 서비스
잘 준비된 의미 체계 모델은 Power BI 비즈니스 질문에 정확하게 답변할 수 있는 더 강력한 기반을 제공합니다Copilot. 사용자에게 소개 Copilot 하기 전에 모델을 평가하고 응답 품질에 영향을 줄 수 있는 문제를 해결합니다. 보고서에 이미 사용된 측정값, 관계 및 비즈니스 정의부터 시작합니다. 추가 지침이 부정확한 관계 또는 부적절한 집계를 수정할 수 없으므로 의미 체계 모델의 모델링 문제를 해결합니다. 그런 다음, 모델을 Copilot에 맞게 최적화하고 일관된 검토 프로세스를 수립합니다.
이 문서는 시맨틱 모델 작성자, 보고서 소유자 및 사용자에게 Copilot를 소개하는 팀을 위한 것입니다. 사용자가 질문하고 결과를 확인하는 방법을 설명하는 데이터에 대해 질문하기Copilot를 보완합니다. 이 문서에서는 시맨틱 모델을 준비하고 Copilot가 생성하는 답변을 평가하는 방법을 설명합니다.
참고
다음 요구 사항에 유의하세요.
- 관리자가 Microsoft Fabric에서 Copilot을 사용하도록 설정해야 합니다.
- 패브릭 용량은 이 문서 패브릭 지역 가용성에 나열된 지역 중 하나에 있어야 합니다. 그렇지 않으면 Copilot을 사용할 수 없습니다.
- Copilot 사용을 시작하기 전에 관리자가 테넌트 전환을 사용하도록 설정해야 합니다. 자세한 내용은 Copilot 테넌트 설정 문서를 참조하세요.
- Copilot는 테넌트 또는 용량이 미국 또는 EU 데이터 경계 밖에 있는 경우 기본적으로 비활성화됩니다. 한 가지 예외는 패브릭 테넌트 관리자가 Azure OpenAI로 전송된 데이터를 테넌트의 지리적 지역, 규정 준수 경계 또는 국가별 클라우드 인스턴스 테넌트 설정 외부에서 처리할 수 있도록 설정하는 경우입니다. 이 설정은 패브릭 관리 포털에서 찾을 수 있습니다.
- Microsoft Fabric의 Copilot은 평가판 SKU에서는 지원되지 않습니다. 유료 SKU만 지원됩니다.
- Power BI에서 독립 실행형 Copilot 환경을 보려면 테넌트 관리자가 테넌트 스위치를 사용하도록 설정해야 합니다.
참고
Power BI 서비스 웹 모델링 환경에서Copilot 모델을 평가하는 것 이상을 수행할 수 있습니다. 테이블 및 열 이름 바꾸기, 관계 만들기 및 DAX 측정값 생성과 같은 변경 내용을 직접 제안하고 적용할 수도 있습니다. 이 문서의 최적화 지침은 해당 분석에서 더 나은 결과를 직접 지원합니다. 잘 구조화되고 명확하게 명명된 모델은 보다 정확하고 유용한 제안을 생성하는 데 도움이 됩니다 Copilot .
중요 비즈니스 질문 시작
포커스가 있는 비즈니스 시나리오를 선택하고 사용자가 일반적으로 묻는 질문을 식별합니다. 각 질문에 대해 예상 측정값, 그룹화, 날짜 기준, 필터 및 유효성이 검사된 결과를 정의합니다.
모호성을 노출하는 질문을 포함합니다. 예를 들어 판매는 어떻게 수행되는가? 수익, 주문 볼륨, 증가 또는 마진을 참조할 수 있습니다. 기본 해석을 정의하거나 설명을 요청하도록 지시 Copilot 합니다.
의미 체계 모델이 지원하는 합계, 비교, 순위 및 추세에 대한 질문으로 시작합니다. 초기 집합에 일관되게 답변한 후 Copilot 더 복잡한 질문을 추가합니다.
의미 체계 모델 검토 및 개선
다음 표 Copilot 의 권장 사항을 사용하여 의미 체계 모델을 해석하고 응답 품질을 향상시킬 수 있습니다.
모델 구조
| 요소 | 고려 사항 | 설명 | 적용 위치 | 예시 |
|---|---|---|---|---|
| 테이블 연결 | 명확한 관계 정의 | 테이블 간의 모든 관계를 명확하게 정의하고 테이블이 논리적인지 확인합니다. 어떤 관계가 일대다, 다대일 또는 다대다인지 나타내십시오. | 모델 보기에서 관계 관리를 선택합니다. | 일대일 관계를 Date[DateID]Sales[DateID] 만들고 관계가 활성 상태인지 확인합니다. |
| 팩트 테이블 | 명확한 목적 및 세부 수준 | 팩트 테이블을 명확하게 식별하고 각 행이 나타내는 항목을 정의합니다. 계산에서 해당 세부 수준에 적합한 집계를 사용하는지 확인합니다. | 테이블 속성 및 모델 구조에서 | 팩트 테이블(예: FactSales팩트 테이블)을 명확하게 지정하고 주문 줄당 행 1개와 같은 세부 수준을 설명합니다. |
| 차원 테이블 | 지원 설명 데이터 | 팩트 테이블의 양적 측정값과 관련된 설명 특성을 포함하는 차원 테이블을 만듭니다. | 테이블 속성 및 데이터 모델 구조 |
DimProduct 속성(ProductName, Category, Brand)과 DimCustomer 속성(CustomerName, City, Segment) 같은 차원 테이블을 만듭니다. |
| 계층 구조 | 논리 그룹화 | 특히 보고서에서 드릴다운을 지원하는 차원 테이블의 경우 데이터 내에서 명확한 계층 구조를 설정합니다. | 테이블 상황에 맞는 메뉴에서 새 계층 구조를 선택합니다. |
Date 테이블에서 계층 구조를 만듭니다. Year>Quarter>Month>Day 표에서Geography: Country/Region>State>City. |
| 관계 유형 | 명확하게 지정됨 | 정확한 보고서 생성을 위해 관계의 특성(활성 또는 비활성)과 카디널리티를 명확하게 지정하세요. | 관계 속성 대화 상자에서 |
Date을/를 Sales로 다대일(활성)로 설정하고, Product을/를 Sales로 다대일(활성)로 설정하며, 적절한 경우 역할 재생 관계를 비활성으로 표시합니다. |
측정값 및 KPI
Copilot 는 임시 계산을 만들 수 있지만 자주 사용되거나 중요 비즈니스용 계산을 검토된 측정값으로 의미 체계 모델에 추가할 수 있습니다. 이 방법을 사용하면 보고서 작성자와 Copilot 일관된 비즈니스 정의를 사용할 수 있습니다.
| 요소 | 고려 사항 | 설명 | 적용 위치 | 예시 |
|---|---|---|---|---|
| 측정 | 표준화된 계산 논리 | 측정값에 설명하고 이해하기 쉬운 표준화되고 명확한 계산 로직을 제공합니다. | 측정값 정의 및 설명 속성 | DAX 측정: Total Sales = SUM(Sales[SaleAmount]) 및 설명 추가: "모든 판매 금액의 합계." |
| 측정 | 명명 규칙 | 계산 및 용도를 명확하게 반영하는 측정값 이름을 지정합니다. | 측정값을 만들 때 측정값 이름 필드에서 | 설명이 포함된 이름 사용: Average Customer Rating 약어 대신 : AvgRating. |
| 측정 | 미리 정의되고 검토된 측정값 | 일반적인 요청 및 중요 비즈니스용 계산에 재사용 가능한 측정값을 만듭니다. 보고서 작성자와 Copilot가 일관된 비즈니스 정의를 사용하도록 해당 논리를 검토합니다. | 측정값 정의 및 설명 속성에서 | 반품, 할인 및 취소된 주문에 대해 승인된 처리 방식으로 [Net Sales]를 정의하세요. 연간 매출 및 월별 증가와 같은 일반적으로 요청되는 측정값을 포함합니다. |
| 측정 | 비율 | 적절한 숫자, 분모 및 집계 동작을 사용하여 비율을 정의합니다. | 측정값 정의에서 | 승인된 총이익 측정값을 평균 행 수준 백분율 대신 승인된 순매출 측정값으로 나누어 정의 [Gross Margin %] 합니다. |
| 측정 | 개수 | 행 개수와 비즈니스 이벤트 수가 서로 다른 결과를 나타내는 경우 별도의 측정값을 만듭니다. | 측정값 정의에서 |
[Order Count]을(를) [Order Line Count]와 별도로 정의합니다. |
| 측정 | 특정 시점의 잔액 | 제품, 위치 및 날짜에 걸쳐 스냅샷을 적절하게 집계하는 측정값을 사용합니다. | 측정값 정의에서 | 여러 날짜에 걸친 일별 재고 스냅샷을 합산하는 대신 기말 재고 측정값을 정의합니다. |
| 측정 | 표시 형식 | 각 측정값의 단위 및 배율을 명확하게 하는 형식을 적용합니다. | 측정값의 형식 속성에서 | 통화 측정값을 통화로, 비율을 백분율로 지정하고, 정수로 계산합니다. |
| 핵심 성과 지표(KPI) | 미리 정의되고 관련됨 | 비즈니스 컨텍스트와 관련이 있고 보고서에 자주 표시되는 KPI 집합을 설정합니다. | 일반적으로 추적되는 KPI에 대한 측정값 만들기 | 와 같은 ROI = DIVIDE([Profit], [Investment])측정값을 CAC = DIVIDE([Marketing Spend], [New Customers])LTV = [Avg Order Value] * [Purchase Frequency] * [Customer Lifespan]정의합니다. |
열 및 데이터 품질
| 요소 | 고려 사항 | 설명 | 적용 위치 | 예시 |
|---|---|---|---|---|
| 열 이름 | 명확한 레이블 | 열 이름을 모호하고 설명적이지 않게 만듭니다. 유용한 비즈니스 식별자를 유지하지만 컨텍스트 없이 추가 조회가 필요한 ID 또는 코드를 피합니다. | 파워 쿼리 편집기 또는 모델 보기에서 열 이름 바꾸기 | 열 이름을 ProdID에서 Product ID 또는 Product Name로, CustNo에서 Customer Number로 변경합니다. |
| 열 데이터 형식 | 올바르고 일관적인 | 모든 테이블의 열에 대해 정확하고 일관된 데이터 형식을 적용하여 측정값이 올바르게 계산되도록 하고 적절한 정렬 및 필터링을 사용하도록 설정합니다. | 열 속성에서 데이터 형식 설정 |
Sales[SaleAmount]가 10진수(텍스트가 아님)인지, Date[Date]가 날짜(텍스트가 아님)인지, Product[ProductID]가 정수인지 확인합니다. |
| 데이터 일관성 | 표준화된 값 | 필터 및 보고의 일관성을 보장하기 위해 열 내에서 표준화된 값을 유지 관리합니다. | 찾기 및 바꾸기 또는 파워 쿼리 변환 사용 |
Status 열에서 모든 값이 일관된 대소문자(Open, Closed, Pending)를 사용하고 있는지 확인합니다 (예: open, CLOSED와 같이 혼합된 대소문자 사용을 피하십시오). |
| 날짜 열 | 명확한 비즈니스 의미 | 다른 비즈니스 의미로 날짜를 구분합니다. 회계연도가 언제 시작되는지를 포함하여, 기간 기준이 회계연도인지 달력연도인지 문서화하세요. 텍스트 레이블에만 의존하는 대신 날짜 열 및 관계를 사용합니다. | 날짜 테이블, 관계 및 설명 속성에서 | 고유 Order Date 열과 Shipment Date 열을 사용합니다. 와 같은 Q1레이블에만 의존하는 대신 회계 기간 열을 정의합니다. |
| 주요 열 | 완전 및 고유 값 | 관계 및 계산에서 정확한 결과를 생성할 수 있도록 누락되거나 중복된 키를 처리합니다. | 파워 쿼리 변환 및 원본 데이터에서 | 고객 차원의 각 행에 고유하고 비블랭크된 고객 키가 있는지 확인합니다. |
새로 고침, 보안 및 메타데이터
| 요소 | 고려 사항 | 설명 | 적용 위치 | 예시 |
|---|---|---|---|---|
| 새로 고침 일정 | 투명하고 예정된 | 데이터의 새로 고침 일정을 명확하게 전달하여 사용자가 분석하는 데이터의 타임라인을 이해할 수 있도록 합니다. | 데이터셋 설정 및 문서화 | "데이터는 매일 오전 6시 UTC에 새로 고침" 또는 "15분 증분 새로 고침을 사용하는 실시간 데이터"라는 텍스트 상자 또는 설명을 추가합니다. |
| 보안 | 역할 수준 정의 | 모든 사용자가 볼 수 없는 중요한 요소가 있는 경우 다양한 수준의 데이터 액세스에 대한 보안 역할을 정의합니다. | 모델 보기에서 역할 관리를 선택합니다. | 필터 Sales[Region] = USERNAME() 를 사용하여 역할 "영업 팀"을 만들고 직원 데이터 테이블에 대한 필터를 사용하여 역할 "HR"을 만듭니다. |
| 메타데이터 | 구조 설명서 | 참조를 위해 테이블, 열, 관계 및 측정값을 포함하여 데이터 모델의 구조를 문서화합니다. | 설명 속성 및 외부 설명서 사용 | 테이블 및 열에 설명을 추가합니다. 모델 다이어그램, 데이터 사전 및 측정값 카탈로그를 사용하여 별도의 문서를 만듭니다. |
DAX 쿼리 고려 사항
다음 표에는 정확한 DAX(Data Analysis Expressions) 쿼리를 만드는 데 도움이 되는 다른 조건이 나와 있습니다 Copilot. 이러한 권장 사항은 정확한 DAX 쿼리를 생성하는 데 도움이 될 수 있습니다.
| 요소 | 고려 사항 | 설명 | 적용 위치 | 예시 |
|---|---|---|---|---|
| 측정값, 테이블 및 열 | 설명 | 설명 속성에서 각 요소와 사용 방법을 정의합니다. 비즈니스 의미, 단위 및 중요한 제외로 시작합니다. Copilot 는 처음 200자만 사용합니다. | 속성 창에서 측정값, 테이블 및 열에 대한 설명 필드 | 측정값 [YOY Sales]에 대한 설명을 추가하십시오: "주문 수의 전년 대비(Year-over-Year, YOY) 차이입니다." 'Date'[Year] 열과 함께 사용하여 최신 연도가 아닌 연도별로 표시합니다. 부분 연도는 이전 연도의 동일한 기간과 비교됩니다." |
| 계산 그룹 | 설명 | 모델 메타데이터에는 계산 항목이 포함되지 않습니다. 계산 그룹 열에 대한 설명을 사용하여 계산 항목을 나열하고 사용하는 방법을 설명합니다. Copilot 는 처음 200자만 사용합니다. | 계산 그룹 열의 속성 창 |
시간 인텔리전스 샘플 계산 그룹 열에 대해 설명을 추가합니다: "측정값 및 날짜 테이블과 함께 사용: 현재 값, MTD: 이번 달까지의 누적, QTD: 이번 분기까지의 누적, YTD: 연말까지의 누적, PY: 전년도, PY MTD, PY QTD, YOY: 연간 변화, YOY%: 연간 변화를 퍼센트로 표현함." 측정값 테이블에 대해 다음을 추가합니다: "측정값은 데이터를 집계하는 데 사용됩니다. 이러한 측정값은 CALCULATE([측정값 이름], Time intelligence[시간 계산] = YOY)라는 구문을 사용하여 전년 대비로 표시될 수 있습니다." |
테스트 결과 문제 해결
AI 지침을 업데이트하기 전에 생성된 쿼리 및 결과를 검토하여 문제의 원인을 파악합니다.
| Issue | 확인할 사항 |
|---|---|
| 잘못된 비즈니스 메트릭 | 기본 메트릭을 정의하는 측정값 이름, 설명, AI 데이터 스키마 선택 및 지침을 검토합니다. |
| 예기치 않은 총계 또는 기간 | 필터 컨텍스트 및 날짜 기준과 예상 결과를 비교합니다. 그런 다음 관계 동작 및 집계 논리를 검토합니다. |
| 누락된 범주 또는 결과 없음 | 원본 데이터, 새로 고침 상태, 범주 값, 요청된 기간 및 소비자의 권한을 확인합니다. 결과를 0으로 해석하지 마세요. |
| 오해의 소지가 있는 표현 방식의 올바른 데이터 | 단위, 서식, 정렬 및 설명이 데이터가 뒷받침하는 범위를 넘어서는지 여부를 검토합니다. |
| 느린 응답 또는 실패한 응답 | 생성된 쿼리 및 의미 체계 모델 성능을 검사합니다. 비즈니스 지침을 변경하기 전에 유효성이 검사된 참조 쿼리와 쿼리를 비교합니다. |
| AI 변경에 대한 준비 데이터가 반영되지 않음 | 올바른 의미 체계 모델을 변경했는지 확인하고 변경 내용을 적용할 시간을 허용합니다. 창을 닫고 다시 열고 Copilot 배포 및 새로 고침 요구 사항을 확인합니다. |
테스트, 배포 및 새로 고침 요구 사항은 도구 변경 내용 및 고려 사항 및 제한 사항테스트를 참조하세요Copilot.