Fabric 데이터 에이전트는 OneLake — Lakehouse, Data Warehouse, Fabric SQL Database, Mirrored Databases — 에서 SQL 데이터에 대해 평문 질문을 하고, 다시 거버넌스된 읽기 전용 답변을 받을 수 있게 해줍니다. 내부적으로는 에이전트가 내장된 자연어를 SQL로 변환하는(NL2SQL) 도구를 사용하여 각 질문을 T-SQL 쿼리로 변환하고, 선택한 스키마를 기준으로 이를 검증한 다음, 소스의 SQL 분석 엔드포인트를 통해 실행합니다.
이 문서에서는 에이전트가 SQL 원본에 사용할 수 있는 두 가지 쿼리 생성 도구에 대해 설명합니다.
- NL2SQL — 표준 런타임에서 데이터 에이전트가 사용하는 정식 제공되는(GA) 도구
- 고급 NL2SQL - 미리 보기 런타임에서 데이터 에이전트가 사용하는 다단계 추론이 있는 미리 보기 도구입니다.
두 도구 모두 각 SQL 소스에 대해 제공하는 스키마 선택, 데이터 소스 명령어, 예제 쿼리를 기반으로 합니다. 고급 NL2SQL은 스키마 객체 설명과 주제를 포함한 미리보기 전용 구성을 사용할 수도 있습니다. 이러한 입력 설정에 대한 자세한 내용은 Fabric 데이터 에이전트에서 데이터 소스 추가 및 구성 항목을 참조하세요.
NL2SQL
NL2SQL은 SQL 원본에 대한 기본 쿼리 생성 도구이며 표준 런타임의 데이터 에이전트에서 사용하는 도구입니다. 단일 패스로 T-SQL 쿼리를 생성합니다.
- 선택한 스키마 및 사용자가 제공한 데이터 원본 지침을 읽습니다.
- 예제 쿼리 라이브러리에 대한 벡터 유사성을 사용하여 사용자의 질문과 가장 유사한 상위 예제 쿼리를 검색합니다.
- 해당 컨텍스트에 기반한 SQL 쿼리를 생성하고, 승인된 스키마에 대해 유효성을 검사하고, SQL 분석 엔드포인트를 통해 실행합니다.
NL2SQL은 안정적이고 예측 가능한 동작에 최적화되어 있으며 릴리스 간의 일관된 출력이 중요한 프로덕션 데이터 에이전트에 권장되는 선택입니다. 스키마 선택, 데이터 원본 지침 및 NL2SQL을 제공하는 예제 쿼리에 대한 자세한 내용은 Fabric 데이터 에이전트에서 데이터 원본 추가 및 구성을 참조하세요.
고급 NL2SQL(미리 보기)
고급 NL2SQL은 미리 보기 런타임에서 사용할 수 있는 NL2SQL 도구의 새 버전입니다. 동일한 도구인 SQL 소스 위의 자연어-투-SQL이지만 한 가지 중요한 차이점이 있습니다: 쿼리를 한 번에 생성하는 대신 여러 추론 단계를 계획하고 실행한 후 쿼리를 반환합니다. 예를 들어 스키마를 검사하거나, 관련 예제를 선택하거나, 모호한 필터 값을 확인하거나, 쿼리에 커밋하기 전에 명확한 질문을 할 수 있습니다.
고급 NL2SQL은 NL2SQL에서는 제공되지 않는 품질 향상과 구성 경험을 제공합니다:
- 다음은 보다 일관되게 쿼리하는 예제입니다. NL2SQL은 항상 예제 쿼리를 밀접하게 따르지는 않으며 경우에 따라 예제에 없는 논리 또는 제약 조건을 추가하는 경우도 있습니다. 고급 NL2SQL은 예제 쿼리 라이브러리에 설명된 패턴을 더 밀접하게 준수합니다.
- 필터 값을 올바르게 대체합니다. 질문에 명시적으로 명시하지 않고 여러 범주 또는 부울 필터를 의미하는 경우 NL2SQL에서 일부 필터를 누락하거나 잘못 적용할 수 있습니다. 고급 NL2SQL은 암시된 필터를 바탕으로 추론하고, 쿼리에 올바른 값을 대입합니다.
- 모호한 질문 처리 질문이 모호한 경우 NL2SQL은 가정에 커밋하고 쿼리를 생성하는 경향이 있습니다. 고급 NL2SQL은 모호성을 감지하고 SQL을 생성하기 전에 명확한 질문을 사용자에게 요청하여 잘못 읽은 의도로 인한 잘못된 답변을 줄일 수 있습니다.
- 스키마 세부사항을 이해하고 있습니다. 객체 이름만으로는 스키마 요소가 무엇인지 설명하지 못할 수 있고, 데이터 소스 명령어가 모든 객체를 설명할 공간이 부족할 수도 있습니다. 스키마 객체 설명을 사용함으로써 생성자는 개별 테이블, 컬럼 및 기타 스키마 요소에 대한 맥락을 제공할 수 있어, 고급 NL2SQL이 스키마를 해석하고 더 정확한 쿼리를 생성할 수 있습니다.
- 주제별 지침을 검색합니다. 모든 질문에 큰 명령어 세트를 보낼 필요는 없습니다. 주제를 활용함으로써 작성자는 주제별로 최대 100만 자자까지 안내문을 정리할 수 있습니다. 데이터 에이전트는 관련 섹션을 찾아 고급 NL2SQL에 제공합니다.
고급 NL2SQL은 이미 NL2SQL에 설정한 스키마 선택, 데이터 소스 명령어, 예제 쿼리를 사용합니다. 또한 스키마 객체 설명과 주제와 같은 고급 NL2SQL에서만 제공되는 구성을 사용할 수 있습니다.
고급 NL2SQL 사용
고급 NL2SQL은 미리 보기 런타임의 일부입니다. 이를 사용하려면 데이터 에이전트를 미리 보기 런타임으로 전환합니다. 런타임을 전환하는 방법과 전환 시 함께 변경되는 다른 사항은 Fabric 데이터 에이전트 런타임을 참조하세요.
Advanced NL2SQL은 미리 보기 상태이므로 릴리스 간에 동작이 변경될 수 있습니다. GA로 졸업하기 전에 이를 사용하여 향후 개선 사항을 평가하고 피드백을 제공할 수 있습니다. 일관된 출력이 필요한 프로덕션 데이터 에이전트의 경우 NL2SQL을 사용하여 표준 런타임을 유지합니다.