시맨틱 보강 만들기
비즈니스 컨텍스트를 추가하여 Data 360 Data Q&A 에이전트가 데이터에 대한 질문을 해석하고 응답하는 방식을 개선합니다.
필수 Edition
| 지원 제품: Data 360에서 지원하는 모든 Edition. Data 360 Edition 가용성을 참조하십시오. |
시맨틱 보강은 비즈니스 용어, 계산 방법, 데이터 품질 규칙, 규칙에 대해 에이전트에게 알려줍니다. 제공하는 컨텍스트가 많을수록 에이전트의 응답이 더 정확하고 관련성이 높아집니다.
보강 만들기 전
제공할 컨텍스트 유형을 고려합니다.
- 비즈니스 용어 또는 메트릭을 정의하고 있습니까?
- 뭔가를 계산하는 방법을 설명하고 있습니까?
- 특정 필드에 대한 데이터 품질 지침을 제공합니까?
- 개체 간의 관계를 설명하고 있습니까?
- 기본 필터 또는 조건을 설정하고 있습니까?
이를 통해 올바른 범위(데이터 공간, 개체 또는 필드)와 보강 문을 구문화하는 방법을 결정할 수 있습니다.
보강 만들기
- 시맨틱 보강 목록 보기로 이동합니다.
- 새 시맨틱 보강을 클릭합니다.
- 보강의 목적을 명확하게 명시하는 이름을 입력합니다. 예: "활성 고객 정의" 또는 "매출 필드 지침"
- 범위를 선택합니다.
- 개체: 특정 데이터 레이크 개체(DLO) 또는 데이터 모델 개체(DMO)에 적용됩니다. 개체별 지침에 사용합니다.
- 필드: 개체 내의 특정 필드에 적용됩니다. 필드 수준 해석에 사용합니다.
- 개체 또는 필드 범위를 선택한 경우 드롭다운에서 대상 개체 또는 필드를 선택합니다.
- Semantic Statement 필드에서 명확하고 일반적인 언어로 보강 내용을 작성합니다. 규칙이 적용되는 시기와 방법을 구체적으로 설명합니다. 복잡한 비즈니스 규칙에 대한 다중 문장 보강을 작성할 수 있습니다. 예:
- "활성 고객은 상태가 '활성'이고 지난 90일간 주문이 하나 이상 있는 고객입니다."
- "매출 계산에 amount_usd__c를 사용합니다. 이 필드는 거래 크기(미국 달러)를 나타냅니다."
- "Email_address를 필터링할 때 일부 레거시 데이터에 혼합 사례 값이 있으므로 항상 소문자 비교를 사용하십시오."
- "가치가 큰 기회는 $100,000보다 큰 amount_usd__c로 정의되며 단계는 '제안' 또는 '협상'입니다. 지역 분석의 경우 청구 주소 상태가 아닌 region__c 필드를 사용하십시오. 인플레이션 조정으로 인해 2023년 이전의 내역 고가치 기회는 다른 임계값인 $50,000을 사용했습니다."
- (옵션) 관련 보강을 구성하려면 태그를 추가합니다. "매출", "고객 세분화" 또는 "데이터 품질"과 같은 일관된 태그를 사용하여 보강을 더 나중에 쉽게 찾고 관리할 수 있습니다. 태그는 조직 전용이며 에이전트가 검색하는 보강에 영향을 미치지 않습니다.
- (옵션) 이 보강을 항상 에이전트가 고려해야 하는지 여부를 선택합니다. 중요. 기본 비즈니스 규칙 또는 데이터 품질 제약에 사용합니다. 보강을 너무 많이 중요 항목으로 표시하면 컨텍스트가 폭발하고 쿼리가 느려지므로 적절하게 사용하십시오.
- (옵션이지만 권장) 시맨틱 보강 검색을 향상하기 위해 검색 요약을 추가합니다. 이는 사용자의 질문에 표시될 것으로 예상되는 키워드 또는 구문입니다. 예를 들어, 시맨틱 문이 고객 생애 가치를 정의하는 경우 "CLV" 및 "고객 생애 가치"와 같은 조회 요약을 추가합니다.
- 저장을 클릭합니다.
유효한 시맨틱 문 작성
시맨틱 문은 일반 언어 질문을 데이터에 대해 올바른 쿼리로 전환하는 방법을 에이전트에게 알려줍니다. 모든 유효 문은 다음 세 가지 질문에 답변합니다.
- 규칙은 무엇입니까? 에이전트가 따라야 하는 지침입니다.
- 왜 존재하는 거야? 이후의 이유입니다.
- 무시하면 어떻게 될까요? 방지하려는 잘못된 답변입니다.
"왜"가 가장 중요합니다. 이유가 없는 규칙은 문자 그대로 따라지고 예상치 못한 질문을 중단합니다. 에이전트는 이유가 있는 규칙을 사용하여 기록하지 않은 사례를 처리할 수 있습니다. 규칙만 제공하는 약한 문을 논리와 결과를 추가하는 강력한 문과 비교합니다.
- 약함(규칙에만 해당): "상태 = '활성'을 항상 필터링하십시오."
- 강력한 (규칙, 이유, 결과): "모든 쿼리에서 항상 상태 = '활성'을 필터링하십시오. 다음 표에 활성 및 보관된 고객 레코드가 모두 저장됩니다. 이 필터를 사용하지 않으면 더 이상 관련이 없는 보관된 고객에 결과가 혼합됩니다. 이는 사용자가 하나의 명명된 고객에 대해 질문하는 경우에도 적용됩니다."
내역서를 작성할 때 다음 지침을 따르십시오.
- 구체적으로
- "매출 필드 사용" 대신 "매출 계산에 amount_usd__c를 사용합니다. 거래 크기가 미국 달러로 표시되며 일관되게 채워집니다."를 작성합니다.
- 이유 설명
- 규칙을 설명하지 말고 이유를 설명합니다. 비활성 고객이 보고에 표시되지 않아야 하므로 상태별로 필터링 = '활성'입니다.
- 예제 사용
- 계산을 정의할 때 수식 또는 논리를 표시합니다. "고객 수명 값 = total_revenue / months_active * average_customer_lifespan_months."
- 명확한 시/도 조건
- 규칙이 특정 사례에만 적용되는 경우 시기를 지정합니다. "기회 쿼리의 경우 명시적으로 요청되지 않는 한 단계 = '마감 실패'를 제외합니다."
- 구문 제외
- 에이전트가 구문 분석할 수 있는 일반 언어로 작성합니다. 도메인별 용어를 사용해야 하는 경우 정의합니다.
시맨틱 문에 대한 모범 사례
- 문장당 하나의 규칙. 관련 없는 규칙을 결합하지 마십시오. 에이전트가 문을 검색하면 전체 항목을 가져오므로 5개의 주제를 다루는 문은 일치할 때마다 4개의 관련 없는 규칙을 추가합니다.
- 규칙을 따르고 그 이유를 설명하십시오. 명령을 먼저 명시한 다음, 이유를 명시한 다음, 오류로 인한 결과를 명시합니다.
- 어떻게 하지 말라고 말해. 두 개의 필드 또는 값을 혼동하기 쉬운 경우 잘못된 필드 또는 값의 이름을 명시적으로 지정합니다. "매출 질문에 배송 날짜를 사용하지 마십시오"는 올바른 필드의 이름을 지정하는 것만큼 유용합니다.
- 에이전트가 추측할 수 없는 값을 명시합니다. 에이전트에게는 내부의 값이 아닌 필드 이름이 표시됩니다. 짧고 명확하지 않은 경우 유효한 집합을 나열합니다.
- 포맷 및 유닛을 명확히 합니다. 숫자가 승수, 백분율 또는 센트로 저장된 경우 해당 값을 사용하십시오. 그렇지 않으면 "2배 미만" 또는 "50% 이상"이 잘못 읽히게 됩니다.
- 각 문을 가장 좁은 올바른 대상에 첨부합니다. 필드 하나에 대한 규칙이 해당 필드에 속합니다. 여러 필드를 적용하는 규칙이 개체에 속합니다. 이렇게 하면 관련 없는 질문을 깨끗하게 유지하고 적시에 올바른 규칙을 표시할 수 있습니다.
- 일반적인 질문에 적용되는 규칙에만 Critical을 사용하십시오. 중요 문은 항상 적용됩니다. 중요하지 않은 문의는 질문이 조회 요약과 일치하는 경우에만 가져옵니다. 범용 규칙에 대한 중요성을 예약하고 개수를 작게 유지합니다.
- 조회 요약을 사용자가 실제로 입력한 단어로 작성합니다. 중요하지 않은 문에 표시되는 트리거 구문입니다. 기술적 설명이 아닌 실제 구문, 동의어, 약어를 사용합니다.
추가할 수 있는 컨텍스트 유형
시맨틱 문은 다양한 종류의 비즈니스 컨텍스트를 수집할 수 있습니다. 일반 유형은 다음과 같습니다.
| 컨텍스트 유형 | 예제 시맨틱 문장 |
|---|---|
| 비즈니스 규칙 및 필수 필터 | "사용자가 다른 채널의 이름을 지정하지 않는 한 항상 채널 = 'Retail'을 필터링하십시오. 다음 표에는 리테일, 도매, 내부 테스트 주문이 결합되어 있습니다. 이 필터를 사용하지 않으면 대부분의 비즈니스 질문이 원하지 않는 도매 및 테스트 데이터로 합계가 증가합니다." |
| 용어 및 메트릭 정의 | "'매출액'은 할인 및 환불 후 순매출액을 말합니다. Net_Amount를 사용하여 항상 계산하십시오. Gross_Amount를 사용하면 환불된 세일즈를 포함하여 매출이 과평가됩니다." |
| 필드 값 및 열거 | "Fulfillment_Status의 유효한 값은 '보류 중', '배송됨', '배달됨', '반품됨'입니다. 사용자가 '주문 진행 중' 또는 '아직 배송되지 않음'이라고 말하면 Fulfillment_Status = '보류 중'을 필터링합니다." |
| 형식, 단위, 임계값 | "Satisfaction_Score는 백분율이 아닌 0~100 척도로 저장됩니다. 사용자가 '만족도가 낮음'이라고 하면 Satisfaction_Score < 60을 필터링합니다. '만족도가 높음'이라고 하면 Satisfaction_Score > 85을 필터링합니다." |
| 날짜 라우팅 | "매출 및 세일즈 질문의 경우 Order_Date를 필터링합니다. 배달 및 물류 질문은 Ship_Date를 필터링하십시오. Order_Date는 세일즈가 발생한 시점이며, Ship_Date는 창고를 떠난 시점입니다. 매출에 Ship_Date를 사용하면 판매가 잘못된 기간에 배치됩니다." |
| 그룹화 및 계층 | "`영역별`은 Sales_Region별 그룹을 의미합니다. '제품별'은 개별 Product_Name이 아닌 Product_Category별 그룹을 의미합니다. '제품별' 질문을 하는 사용자는 SKU당 하나의 행이 아닌 범주 수준 롤업을 원합니다." |
| 출력 기본 설정 | "Top 5 고객과 같은 '상위 N' 질문의 경우 측정값별로 정렬하고 N행으로 제한합니다. 고객 이름 및 측정값이 포함된 순위가 지정된 목록을 반환합니다. 단일 계산된 값으로 축소하지 마십시오." |
보강 테스트
보강을 만든 후 에이전트에게 트리거해야 하는 질문을 하여 테스트합니다. 에이전트의 응답을 검토하고 추가 세부 사항 보기 섹션을 확인하여 보강이 올바르게 적용되었는지 확인합니다. 에이전트가 예상대로 보강을 사용하지 않은 경우:
- 보강이 액티브인지 확인합니다.
- 범위(데이터 공간, 개체 또는 필드)가 질문과 일치하는지 확인합니다.
- 시맨틱 문을 보다 구체적으로 수정하거나 관련 태그를 추가합니다.
- 보강이 기본적인 경우에는 결정적으로 표시합니다.
다음 단계
데이터 모델이 발전함에 따라 보강을 편집, 비활성화 또는 삭제하는 방법을 알아보려면 시맨틱 보강 관리를 참조하십시오.
이 기사를 통해 문제를 해결했습니까?
개선을 위한 의견을 보내주세요.
