Snowflake Copilot 인라인 사용

Snowflake Copilot 인라인은 기존 Snowflake Copilot 환경을 확장하여 SQL 코드 내에서 Snowflake Copilot 을 쿼리할 수 있는 기능을 제공합니다. Snowflake Copilot 에 대한 정보는 Snowflake Copilot 사용하기 섹션을 참조하십시오.

Snowflake Copilot 인라인은 워크스페이스에서만 지원됩니다. 워크스페이스에 대한 자세한 내용은 작업 공간 섹션을 참조하십시오.

참고

Snowflake Copilot 인라인은 다음 리전에서 기본적으로 지원됩니다.

  • AWS US 서부 2(오레곤)

  • AWS US 동부 1(북부 버지니아)

다른 리전에서 Snowflake Copilot 을 사용하려면 CORTEX_ENABLED_CROSS_REGION 매개 변수를 설정하십시오. 이 매개 변수 내에서 다음을 수행할 수 있습니다.

  • 지원되는 리전 중 1개 이상이 포함된 값 목록을 입력합니다.

  • ANY_REGION 으로 설정합니다.

CORTEX_ENABLED_CROSS_REGION 매개 변수를 사용하는 방법에 대한 자세한 내용은 리전 간 추론 매개 변수 사용 방법 섹션을 참조하십시오.

액세스 제어 요구 사항

SNOWFLAKE 데이터베이스의 COPILOT_USER 데이터베이스 역할에는 사용자가 Snowflake Copilot 기능을 사용할 수 있는 권한이 포함되어 있습니다. 기본적으로 COPILOT_USER 역할은 PUBLIC 역할에 부여됩니다. PUBLIC 역할은 모든 사용자 및 역할에 자동으로 부여되므로 계정의 모든 사용자가 Snowflake Copilot 기능을 사용할 수 있습니다.

COPILOT_USER 요구 사항 외에도 사용자는 CORTEX_USER 역할이 있어야 합니다. SNOWFLAKE 데이터베이스의 CORTEX_USER 데이터베이스 역할에는 사용자가 Snowflake AISQL 함수를 호출할 수 있는 권한이 포함되어 있습니다. 기본적으로 CORTEX_USER 역할은 PUBLIC 역할에 부여됩니다. PUBLIC 역할은 모든 사용자 및 역할에 자동으로 부여되므로 계정의 모든 사용자가 Snowflake AISQL 함수를 사용할 수 있습니다.

Snowflake Copilot 인라인을 사용하려면 사용자에게 claude-3.5-sonnet 모델에 대한 액세스 권한이 있어야 합니다. 모든 사용자가 이 모델에 액세스할 수 있도록 하려면 claude-3.5-sonnet 가 모델 허용 목록에 포함되어 있고 역할 기반 액세스 제어(RBAC)에 의해 제한되지 않는지 확인하십시오. 모델 액세스 제어에 대한 자세한 내용은 모델 액세스 제어 섹션을 참조하십시오.

사용자에게 올바른 권한이 있는 경우 워크스페이스에 Snowflake Copilot 인라인 스파클 아이콘이 표시됩니다. 인라인 인터페이스를 사용하여 Snowflake Copilot 과 상호 작용할 수 있습니다.

Copilot 인라인에 대한 액세스 권한을 제거하려면 CORTEX_USER 또는 COPILOT_USER 에 대한 액세스 권한을 취소해야 합니다. 모든 사용자에게 이 권한을 부여하지 않으려면 PUBLIC 역할에 대한 액세스 권한을 취소하고 특정 역할에 대한 액세스 권한을 부여하면 됩니다. 예를 들어, PUBLIC 역할의 액세스 권한을 취소하려면 다음 쿼리를 사용합니다.

USE ROLE ACCOUNTADMIN;

REVOKE DATABASE ROLE SNOWFLAKE.COPILOT_USER
  FROM ROLE PUBLIC;

REVOKE DATABASE ROLE SNOWFLAKE.CORTEX_USER
  FROM ROLE PUBLIC;
Copy

그런 다음 필요에 따라 액세스 권한을 부여할 수 있습니다. Snowflake Copilot 의 액세스 제한에 대한 자세한 내용은 Copilot에 대한 액세스 제한 섹션을 참조하십시오.

지원되는 사용 사례

  • 개방형 질문을 통해 데이터를 탐색 하여 새로운 데이터 세트의 정형과 뉘앙스에 대해 알아봅니다.

  • 자연어 질문하여 SQL 쿼리를 생성 할 수 있습니다.

  • 쿼리 효율성을 평가하고 최적화를 찾거나 쿼리의 기능을 설명하는 데 도움이 되는 Snowflake Copilot 을 요청하여 쿼리를 개선 할 수 있습니다.

  • Snowflake Copilot 에 쿼리를 수정하도록 요청하여 구문 오류를 수정 할 수 있습니다.

제한 사항

Snowflake Copilot 인라인에는 다음과 같은 제한이 있습니다.

  • 지원 언어:

    • 영어

    • 프랑스어

    • 독일어

    • 스페인어

    • 이탈리아어

    • 포르투갈어

    • 아랍어

    • 힌디어

    • 중국어

    • 일본어

    • 한국어

    • SQL

데이터에 액세스할 수 없음

Snowflake Copilot 은 테이블 내부의 데이터에 액세스할 수 없습니다. 특정 열의 값을 필터링하려면 해당 값을 제공해야 합니다. 예를 들어, Snowflake Copilot 에 열 A 값이 “X”인 모든 행을 반환하도록 요청하는 경우 요청에 “X” 값을 제공해야 합니다. 자세한 내용은 SQL 문 구성 및 실행 예제를 참조하십시오.

지연된 응답

Snowflake Copilot 은 제공된 응답의 길이에 따라 응답을 완료하는 데 1초 정도 걸릴 수 있습니다.

SQL 제안이 항상 효과가 있는 것은 아닙니다

Snowflake Copilot 은 때때로 잘못된 SQL 구문이나 존재하지 않는 테이블 또는 열이 포함된 쿼리를 제안할 수 있습니다.

새로운 데이터베이스, 스키마 및 테이블을 감지하는 데 지연이 발생합니다

Snowflake Copilot 에서 새로 생성한 데이터베이스, 스키마 및 테이블을 인식하는 데 최대 3~4시간이 소요될 수 있습니다.

고려되는 테이블 및 열 수에 제한이 있음

응답을 생성하려면 Snowflake Copilot 에서 먼저 요청과 가장 관련성이 높은 테이블과 열을 검색합니다. 그런 다음 검색 결과는 관련성에 따라 순위가 매겨지고, 응답을 생성할 때 결과의 각 테이블에서 상위 10개 표와 상위 10개 열만 고려됩니다.

Snowflake Copilot 인라인은 피드백을 지원하지 않습니다

Snowflake Copilot 인라인에서 제공하는 제안에는 찬성 또는 반대 투표를 할 수 없습니다.

Snowflake Copilot 인라인 사용 방법

Snowflake Copilot 인라인은 추가 설정이 필요하지 않습니다. Snowflake Copilot 을 사용할 때는 다음 사항에 유의하십시오.

  • Snowflake Copilot 인라인이 있는 각 세션은 워크스페이스의 특정 파일과 연결됩니다.

  • Snowflake Copilot 인라인을 사용하기 위해 세션 중에 사용 중인 데이터베이스와 스키마가 없어도 됩니다.

  • Snowflake Copilot 은 데이터베이스, 스키마, 테이블 및 열의 이름과 열의 데이터 타입을 사용하여 쿼리할 수 있는 데이터를 결정합니다.

  • 최적의 성능을 위해 데이터베이스, 스키마, 테이블, 열에 의미 있는 이름을 사용하고 열에 적절한 데이터 타입을 지정해야 합니다.

  • Snowflake Copilot 인라인은 다음 소스를 고려하지만 해당 소스의 데이터는 저장하지 않습니다.

    • SQL 쿼리 및 코드를 포함한 현재 파일의 내용입니다.

    • 데이터베이스, 스키마, 역할을 포함한 현재 파일의 컨텍스트입니다.

    • 사용자 입력.

    • Snowflake 설명서 또는 일반 SQL 지식.

    • 내 계정의 데이터.

Snowflake Copilot 인라인 사용을 시작하려면:

  1. 워크스페이스를 엽니다. 워크스페이스에 대한 자세한 내용은 작업 공간 섹션을 참조하십시오.

  2. CMD+I 바로 가기를 입력합니다.

  3. 메시지 대화 상자에 요청을 입력합니다. Snowflake Copilot 은 응답을 인라인으로 제공하고 기존 코드와의 차이점을 보여줍니다.

  4. 다음 중 하나를 선택하십시오.

    • Accept 을 선택하여 제안된 변경 사항을 수락합니다.

    • 제안된 변경 사항을 거부하려면 Reject 를 선택합니다.

    • 세션을 종료하려면 Close 를 선택합니다.

사용자 지정 지침 추가

Snowflake Copilot 인라인은 응답 방식을 사용자 지정하는 사용자 지정 지침을 허용하지 않습니다.

다음 섹션에서는 다음 방법을 보여주는 예를 제공합니다.

이 예제에서는 Snowflake Marketplace 의 샘플 데이터 세트를 사용합니다.

전제 조건

이 섹션의 예제에서는 Snowflake Marketplace 의 Cybersyn Github Archive 데이터 세트 를 사용합니다.

  1. 계정에 Cybersyn Github Archive 데이터 세트 를 설치합니다.

  2. 워크스페이스를 엽니다. 워크스페이스에 대한 자세한 내용은 작업 공간 섹션을 참조하십시오.

  3. Cybersyn Github Archive 데이터베이스와 스키마를 선택합니다.

SQL 문 구성 및 실행

다음 예는 Snowflake Copilot 인라인을 사용하여 SQL 쿼리를 생성하는 방법을 보여줍니다.

  1. Snowflake Copilot 인라인 메시지 상자에 다음 질문을 입력하고 보내기 아이콘을 선택하여 제출하면 Snowflake Copilot 이 질문에 대한 답변이 담긴 SQL 쿼리로 응답합니다.

    How many stars were given in the past year?
    
    Copy
  2. 변경 사항을 검토합니다. 빨간색으로 강조 표시된 라인은 제거되고 녹색으로 강조 표시된 라인은 추가됩니다.

  3. Accept 을 선택하여 제안된 변경 사항을 수락합니다.

Snowflake Copilot 은 테이블 내부의 데이터에 액세스할 수 없습니다. Snowflake Copilot 이 열의 특정 값을 기준으로 필터링하는 SQL 문을 작성하도록 하려면 필터링할 값을 제공해야 합니다.

  1. 메시지 상자에 다음 질문을 입력하고 보내기 아이콘을 선택합니다. Snowflake Copilot 인라인은 공급자가 제공한 필터 값을 사용하는 SQL 쿼리로 응답합니다.

    What are all of the repo names that start with 'snowflake'?
    
    Copy
  2. 변경 사항을 검토합니다. 빨간색으로 강조 표시된 라인은 제거되고 녹색으로 강조 표시된 라인은 추가됩니다.

  3. Accept 을 선택하여 제안된 변경 사항을 수락합니다.

SQL 문에 설명 추가하기

다음 예제는 Snowflake Copilot 을 사용하여 작업 중인 SQL 문에 설명을 추가하는 방법을 보여 줍니다.

  • Snowflake Copilot 인라인 메시지 상자에 다음 질문을 입력합니다.

    Can you add comments to this query?
    
    Copy

Snowflake Copilot 은 제공된 쿼리에서 각 라인의 목적을 설명하는 설명을 추가하여 응답합니다.

SQL 문 수정하기

다음 예제는 워크스페이스에서 Snowflake Copilot 인라인을 사용하여 SQL 문을 수정하는 방법을 보여 줍니다.

  1. 구문 오류가 있는 대상 쿼리 위에 커서를 올립니다.

  2. CMD+I 단축키를 입력하여 Snowflake Copilot 인라인 윈도우를 불러옵니다.

  3. Snowflake Copilot 에게 질문하여 쿼리를 수정합니다.

  4. 변경 사항을 검토합니다. 빨간색으로 강조 표시된 라인은 제거되고 녹색으로 강조 표시된 라인은 추가됩니다.

  5. Accept 을 선택하여 제안된 변경 사항을 수락합니다.

Snowflake Copilot 사용을 위한 팁

Snowflake Copilot 사용에 대한 팁은 Snowflake Copilot 사용을 위한 팁 섹션을 참조하십시오.

비용

Snowflake Copilot 은 현재 무료로 이용 가능합니다. 가격 및 청구에 대한 자세한 내용은 추후 공개될 예정이지만, 이 기능에 대한 요금이 적용되기 전에 사용자에게 알림이 제공됩니다.