Gemini 지원을 받아 쿼리 작성

AI 기반 지원을 제공하는 Google Cloud를 위한 Gemini를 사용하여 BigQuery에서 다음 작업을 할 수 있습니다.

  • SQL 쿼리 생성
  • SQL 쿼리 작성
  • SQL 쿼리 설명
  • Python 코드 생성
  • Python 코드 완성

Google Cloud를 위한 Gemini가 사용자의 데이터를 사용하는 방법과 시점을 알아보세요.

BigQuery에서는 Gemini에 영어 프롬프트만 지원됩니다.

이 문서는 SQL 쿼리와 BigQuery의 Colab Enterprise 노트북을 사용하는 데이터 분석가, 데이터 과학자, 데이터 개발자를 대상으로 합니다. 여기서는 BigQuery SQL 작업공간에서 데이터를 쿼리하는 방법이나 노트북을 사용하여 Python으로 BigQuery 데이터를 분석하는 방법을 알고 있다고 가정합니다.

시작하기 전에

  1. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  2. Google Cloud 프로젝트에 Gemini가 설정되었는지 확인합니다. 설정이 완료될 때까지는 Gemini 버튼이 표시되지 않습니다.
  3. Python 코드와 함께 사용하려면 애셋 관리에 BigQuery Studio를 사용 설정합니다.

필요한 역할

Gemini 지원을 사용하여 쿼리를 작성하는 데 필요한 권한을 얻으려면 관리자에게 프로젝트에 대한 Cloud AI 컴패니언 사용자 (roles/cloudaicompanion.user) IAM 역할을 부여해 달라고 요청하세요. 역할 부여에 대한 자세한 내용은 액세스 관리를 참조하세요.

이 사전 정의된 역할에는 Gemini 지원을 사용하여 쿼리를 작성하는 데 필요한 권한이 포함되어 있습니다. 필요한 정확한 권한을 보려면 필수 권한 섹션을 펼치세요.

필수 권한

Gemini 지원을 사용하여 쿼리를 작성하려면 다음 권한이 필요합니다.

  • cloudaicompanion.companions.generateCode
  • cloudaicompanion.entitlements.get

맞춤 역할이나 다른 사전 정의된 역할을 사용하여 이 권한을 부여받을 수도 있습니다.

SQL 쿼리 생성

데이터의 스키마를 기반으로 SQL 쿼리를 생성하려면 Gemini에 자연어 문구 또는 질문(프롬프트라고도 함)을 제공하면 됩니다. 코드 없이 시작하거나 데이터 스키마에 대한 지식이 부족하거나 Google SQL 문법에 대한 기본 지식만 있더라도 Gemini는 데이터를 탐색하는 데 도움이 되는 SQL 문을 하나 이상 생성할 수 있습니다.

코딩 도우미 도구 사용

코딩 도우미 도구를 사용하면 자연어를 사용하여 BigQuery Studio에서 실행할 수 있는 SQL 쿼리를 생성할 수 있습니다.

코딩 도우미 도구를 사용하려면 다음 단계를 수행합니다.

  1. Google Cloud 콘솔에서 BigQuery 페이지로 이동합니다.

    BigQuery로 이동

  2. BigQuery Studio 쿼리 편집기에서 SQL 쿼리 만들기를 클릭합니다.

  3. 툴바에서 Gemini pen_spark를 클릭하고, 아직 선택되지 않았다면 코딩 도우미를 선택합니다.

    BigQuery 툴바의 Gemini 버튼

  4. 쿼리 편집기 옆에 있는 코딩 도우미 pen_spark를 클릭합니다.

    BigQuery 쿼리 편집기의 코딩 도우미 버튼

  5. 코드 작성 지원 도구에 프롬프트를 입력합니다. 예를 들면 다음과 같습니다.

     Using `bigquery-public-data.austin_bikeshare.bikeshare_trips`, show me the
     ten longest trip lengths by subscriber type.
    
  6. 생성을 클릭합니다.

    Gemini에서 다음과 유사한 SQL 쿼리를 생성합니다.

    SELECT subscriber_type,
      MAX(duration_minutes) AS longest_trip_duration
    FROM `bigquery-public-data.austin_bikeshare.bikeshare_trips`
    GROUP BY subscriber_type
    ORDER BY longest_trip_duration DESC
    LIMIT 10;
    
  7. 생성된 SQL 쿼리를 검토하고 다음 작업 중 하나를 수행합니다.

    • 생성된 SQL 쿼리를 수락하려면 삽입을 클릭하여 문을 쿼리 편집기에 삽입합니다. 그런 다음 실행을 클릭하여 추천 SQL 쿼리를 실행합니다.
    • Gemini에 새 쿼리를 생성하라고 요청하려면 수정을 클릭합니다. 프롬프트를 수정한 후 업데이트를 클릭합니다. 그런 다음 새로 생성된 문을 수락하거나 추천을 닫을 수 있습니다.
    • 추천을 닫으려면 코딩 도우미 대화상자를 닫습니다.
  8. 특정 테이블 소스를 사용하여 Gemini에 새 쿼리를 생성하라고 요청하려면 테이블 소스 수정을 클릭하고 새 테이블 소스를 선택한 후 적용을 클릭합니다. 새 문을 수락하거나 추천을 닫을 수 있습니다.

코딩 도우미 도구 사용 중지

코딩 도우미 도구를 사용 중지하는 방법을 알아보려면 Gemini 기능 사용 중지를 참조하세요.

SQL 쿼리를 생성하는 프롬프트

SQL을 생성하려면 BigQuery 쿼리 편집기에 # 문자를 입력한 다음 원하는 정보에 대한 자연어 문 또는 질문을 입력합니다. Gemini는 최근 쿼리를 검토하여 프롬프트와 관련될 수 있는 테이블 스키마를 찾습니다. 사용할 테이블을 알고 있는 경우 프롬프트에서 백틱(`)으로 테이블 이름을 지정할 수 있습니다.

다음 예시에서는 BigQuery 공개 테이블 bigquery-public-data.austin_bikeshare.bikeshare_trips에 대한 쿼리를 생성합니다.

  1. Google Cloud 콘솔에서 BigQuery Studio 페이지로 이동합니다.

    BigQuery Studio로 이동

    나머지 단계는 Google Cloud 콘솔에서 자동으로 표시됩니다.

  2. SQL 쿼리 편집기에서 새 쿼리 작성을 클릭합니다.

  3. 툴바에서 Gemini pen_spark를 클릭하고, 아직 선택되지 않았다면 자동 생성을 선택합니다.

    BigQuery 툴바의 Gemini 버튼

  4. 쿼리 편집기에서 다음 자연어 프롬프트를 입력합니다.

    # Using `bigquery-public-data.austin_bikeshare.bikeshare_trips`, calculate the
    # average trip length by subscriber type.
    
  5. Enter(macOS에서는 Return) 키를 누릅니다.

    Gemini는 다음과 유사한 SQL 쿼리를 제안합니다.

    SELECT
      subscriber_type,
      AVG(duration_minutes) AS average_trip_length
    FROM
      `bigquery-public-data.austin_bikeshare.bikeshare_trips`
    GROUP BY
      subscriber_type
    
  6. 제안된 내용을 사용하려면 Tab 키를 누르세요.

추가 추천 보기

Gemini는 프롬프트에 답변하는 SQL 문을 두 개 이상 제안할 수 있습니다. 예를 들면 다음과 같습니다.

  1. 쿼리 편집기에서 다음 자연어 프롬프트를 입력한 다음 Enter(macOS에서는 Return) 키를 누릅니다.

    # Write a query that creates a table in the dataset `1234` with a string column called "name"
    

    Gemini에서 SQL 쿼리를 제안합니다.

  2. 추가 제안이 있는지 확인하려면 제안된 SQL 쿼리 위로 포인터를 가져갑니다.

  3. 추가 제안사항을 클릭하여 확인한 후 다음 중 하나를 수행합니다.

    • 제안된 내용을 사용하려면 Tab 키를 누릅니다.
    • 특정 단어를 수락하려면 Control+오른쪽 화살표(macOS에서는 Command+오른쪽 화살표)를 누릅니다.
    • 제안을 닫으려면 Esc 키를 누릅니다.

SQL 생성 팁

다음 팁은 BigQuery의 Gemini에서 제공하는 추천을 개선할 수 있습니다.

  • 데이터 스키마를 지정하려면 정규화된 테이블 이름을 백틱(`)으로 묶어 제공합니다(예: `PROJECT.DATASET.TABLE`).
  • 열 이름 또는 시맨틱스 관계가 명확하지 않거나 복잡한 경우 프롬프트에 컨텍스트를 제공하여 Gemini가 개발자가 원하는 답변을 제공하도록 안내할 수 있습니다. 이러한 기법을 프롬프트 엔지니어링이라고 합니다. 예를 들어 생성된 쿼리가 열 이름을 참조하도록 하려면 열 이름과 원하는 답변과의 관련성을 설명합니다. 평생 가치 또는 총이익과 같이 복잡한 용어를 참조하는 답변을 유도하려면 개념 및 데이터와의 관련성을 설명하여 SQL 생성 결과를 향상시킵니다.
  • 프롬프트는 쿼리 편집기에서 여러 줄로 확장될 수 있지만 각 줄은 # 문자로 시작해야 합니다.

Gemini 및 BigQuery 데이터

BigQuery의 Gemini는 개발자에게 액세스 권한이 있는 테이블의 메타데이터에 액세스할 수 있습니다. 여기에는 테이블 이름, 열 이름, 데이터 유형, 열 설명이 포함될 수 있습니다. BigQuery의 Gemini는 테이블, 뷰 또는 모델의 데이터에 액세스할 수 없습니다. Gemini에서 데이터를 사용하는 방법에 대한 자세한 내용은 Google Cloud용 Gemini가 데이터를 사용하는 방법을 참조하세요.

SQL 코드 생성 사용 중지

BigQuery에서 SQL 코드 생성을 사용 중지하는 방법을 알아보려면 Gemini 기능 사용 중지를 참조하세요.

SQL 쿼리 작성

SQL 작성은 쿼리 편집기의 콘텐츠를 기반으로 상황에 따라 적절한 권장사항을 제공하려고 시도합니다. 입력과 동시에 Gemini는 현재 쿼리의 컨텍스트와 관련된 논리적인 다음 단계를 제안하거나 쿼리를 반복하는 데 도움을 줄 수 있습니다.

Gemini에서 SQL 완성을 사용해 보려면 다음 단계를 수행합니다.

  1. Google Cloud 콘솔에서 BigQuery Studio 페이지로 이동합니다.

    BigQuery Studio로 이동

    나머지 단계는 Google Cloud 콘솔에서 자동으로 표시됩니다.

  2. 툴바에서 Gemini pen_spark를 클릭하고, 아직 선택되지 않았다면 자동 완성을 선택합니다.

    BigQuery 툴바의 Gemini 버튼

  3. 쿼리 편집기에서 다음을 복사합니다.

    SELECT
      subscriber_type
      , EXTRACT(HOUR FROM start_time) AS hour_of_day
      , AVG(duration_minutes) AS avg_trip_length
    FROM
      `bigquery-public-data.austin_bikeshare.bikeshare_trips`
    

    subscriber_type이 그룹화되거나 집계되지 않았다는 오류 메시지가 표시됩니다. 올바른 쿼리를 위해 도움이 필요한 경우가 많습니다.

  4. Enter(macOS의 경우 Return) 키 또는 스페이스바를 누릅니다.

    Gemini는 다음과 유사한 텍스트로 끝날 수 있는 쿼리 상세검색을 제안합니다.

    GROUP BY
      subscriber_type, hour_of_day;
    
  5. 제안을 수락하려면 Tab 키를 누르거나 추천 텍스트 위에 마우스 포인터를 올려놓고 각 추천 대안을 클릭하세요. 추천 항목을 닫으려면 Esc 키를 누르거나 계속 입력합니다.

SQL 쿼리 설명

BigQuery에서 SQL 쿼리를 자연어로 설명하도록 Gemini에 프롬프트를 입력할 수 있습니다. 이러한 설명은 쿼리의 길이 또는 복잡성으로 인해 문법, 기본 스키마, 비즈니스 컨텍스트를 평가하기 어려울 수 있는 쿼리를 이해하는 데 도움이 될 수 있습니다.

추가 필수 권한

Gemini로 쿼리를 작성하는 데 필요한 권한 외에도 SQL을 설명하려면 cloudaicompanion.companions.generateChat 권한이 있어야 합니다. 이 권한은 Cloud AI 컴패니언 사용자(roles/cloudaicompanion.user) IAM 역할에 포함되어 있습니다.

SQL 쿼리 설명

SQL 쿼리를 설명하려면 다음 단계를 따르세요.

  1. Google Cloud 콘솔에서 BigQuery Studio 페이지로 이동합니다.

    BigQuery Studio로 이동

    나머지 단계는 Google Cloud 콘솔에서 자동으로 표시됩니다.

  2. 툴바에서 Gemini pen_spark를 클릭하고, 아직 선택되지 않았다면 설명을 선택합니다.

    BigQuery 툴바의 Gemini 버튼

  3. 쿼리 편집기에서 설명하려는 쿼리를 열거나 붙여넣습니다.

  4. Gemini로 설명할 쿼리를 강조표시한 다음 이 쿼리 설명 astrophotography_mode을 클릭합니다.

    BigQuery 쿼리 편집기의 왼쪽 열에 강조표시된 '이 쿼리 설명' 아이콘 및 텍스트

SQL 설명이 Gemini 창에 표시됩니다.

Python 코드 생성

자연어 문이나 Python 코드 생성에 대한 질문으로 Gemini에 프롬프트를 입력할 수 있습니다. Gemini는 Python 코드 추천 하나 이상으로 응답합니다.

추가 필수 권한

Gemini로 쿼리를 작성하는 데 필요한 권한 외에도 Python 코드를 생성하려면 cloudaicompanion.instances.generateCode 권한이 있어야 합니다. 이 권한은 Cloud AI 컴패니언 사용자(roles/cloudaicompanion.user) IAM 역할에 포함되어 있습니다.

Gemini를 사용하여 Python 코드 생성

다음 예시에서는 BigQuery 공개 데이터 세트 bigquery-public-data.ml_datasets.penguins의 코드를 생성합니다.

  1. BigQuery Studio 페이지로 이동합니다.

    BigQuery로 이동

  2. 툴바에서 Gemini pen_spark를 클릭하고, Python 노트북의 Gemini 섹션에서 아직 선택되지 않았다면 코드 생성을 선택합니다.

    BigQuery 툴바의 Gemini 버튼

  3. 편집기 창의 탭 표시줄에서 + 기호 옆에 있는 드롭다운 화살표 를 클릭한 다음 Python 노트북 생성을 클릭합니다.

    노트북 탭

    bigquery-public-data.ml_datasets.penguins 공개 데이터 세트에 대한 쿼리 예시를 보여주는 셀이 포함된 새 노트북이 열립니다.

  4. 툴바에서 + 코드를 클릭하여 새 코드 셀을 삽입합니다. 코딩 시작 또는 AI로 생성이라는 새로운 코드 셀이 표시됩니다.

  5. 새 코드 셀에서 생성을 클릭합니다.

  6. 코드 편집기에서 다음 자연어 프롬프트를 입력합니다.

    Using bigquery magics query the `bigquery-public-data.ml_datasets.penguins` table
    
  7. Enter(macOS에서는 Return) 키를 누릅니다.

    Gemini는 다음과 유사한 Python 코드를 제안합니다.

    %%bigquery
    SELECT *
    FROM `bigquery-public-data.ml_datasets.penguins`
    LIMIT 10
    

Python 코드 완성

Python 코드 완성은 쿼리 편집기의 콘텐츠를 기반으로 상황에 따라 적절한 추천을 제공하려고 합니다. 입력과 동시에 Gemini는 현재 코드 컨텍스트와 관련된 논리적인 다음 단계를 제안하거나 코드를 반복하는 데 도움을 줄 수 있습니다.

추가 필수 권한

Gemini로 쿼리를 작성하는 데 필요한 권한 외에도 Python 코드를 생성하려면 cloudaicompanion.instances.completeCode 권한이 있어야 합니다. 이 권한은 Cloud AI 컴패니언 사용자(roles/cloudaicompanion.user) IAM 역할에 포함되어 있습니다.

Gemini를 사용하여 Python 코드 완성하기

Gemini에서 Python 코드 완성을 사용해 보려면 다음 단계를 수행합니다.

  1. BigQuery Studio 페이지로 이동합니다.

    BigQuery로 이동

  2. 툴바에서 Gemini pen_spark를 클릭하고, Python 노트북의 Gemini 섹션에서 아직 선택되지 않았다면 코드 완성을 선택합니다.

    BigQuery 툴바의 Gemini 버튼

  3. 편집기 창의 탭 표시줄에서 + 기호 옆에 있는 드롭다운 화살표 를 클릭한 다음 Python 노트북 생성을 클릭합니다.

    노트북 탭

    bigquery-public-data.ml_datasets.penguins 공개 데이터 세트에 대한 쿼리 예시를 보여주는 셀이 포함된 새 노트북이 열립니다.

  4. 코드 편집기에서 Python 코드를 입력합니다. Gemini는 입력하는 동안 코드 인라인을 제안합니다. 제안을 수락하려면 Tab 키를 누릅니다.

Gemini 기능 중지

BigQuery에서 Gemini 기능을 중지하려면 다음을 수행합니다.

  1. SQL 쿼리 편집기의 툴바에서 Gemini pen_spark를 클릭합니다.

  2. 중지하려는 Gemini 기능을 선택 해제합니다.

의견 제공

Gemini의 추천에 대해 의견을 제공할 수 있습니다.

  • 의견을 제공하려면 툴바에서 Gemini pen_spark를 선택한 후 의견 보내기를 선택합니다.

추천 개선을 위해 도움 제공하기

프롬프트 데이터를 Google과 공유하여 Gemini 추천을 개선할 수 있습니다. 프롬프트 데이터를 공유하려면 다음 단계를 수행합니다.

  1. Google Cloud 콘솔의 BigQuery Studio 페이지 툴바에서 Gemini pen_spark를 클릭합니다.

  2. 데이터를 공유하여 Gemini 개선을 선택합니다.

  3. 데이터 사용 설정 대화상자에서 데이터 사용 설정을 업데이트합니다.

데이터 공유 설정은 전체 프로젝트에 적용되며 serviceusage.services.enableserviceusage.services.list IAM 권한이 있는 프로젝트 관리자만 이 설정을 설정할 수 있습니다. 신뢰할 수 있는 테스터 프로그램에서의 데이터 사용에 대한 자세한 내용은 Google Cloud 신뢰할 수 있는 테스터 프로그램의 Gemini를 참조하세요.

다음 단계