Google Cloud를 위한 Gemini 지원을 통한 데이터 분석

이 튜토리얼에서는 Google Cloud의 AI 기반 공동 작업 도구인 Google Cloud용 Gemini를 사용하여 데이터를 분석하는 방법을 설명합니다. 이 튜토리얼에서는 Gemini in BigQuery를 사용하여 제품 판매를 분석하고 예측합니다.

이 튜토리얼에서는 사용자가 SQL 및 기본 데이터 분석 태스크에 익숙하다고 가정합니다. Google Cloud 제품에 대한 지식이 있다고 가정하지 않습니다. BigQuery를 처음 사용하는 경우 BigQuery 빠른 시작을 참조하세요.

목표

  • Gemini를 사용하여 Google Cloud 데이터 분석 제품 및 사용 사례 관련 질문에 대한 답변을 얻습니다.
  • Gemini에 프롬프트를 입력하여 BigQuery의 SQL 쿼리를 설명하고 생성하도록 요청합니다.
  • 미래의 예측을 위해 머신러닝(ML) 모델을 빌드합니다.

비용

이 튜토리얼에서는 비용이 청구될 수 있는 다음과 같은 Google Cloud 구성요소를 사용합니다.

가격 계산기를 사용하면 예상 사용량을 토대로 비용을 추정할 수 있습니다.

시작하기 전에

  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 in BigQuery를 설정했는지 확인합니다.
  3. Google Cloud 콘솔에서 BigQuery 페이지로 이동합니다.

    BigQuery로 이동

  4. 이름이 bqml_tutorial데이터 세트를 만듭니다. 데이터 세트를 사용하여 테이블 및 모델을 포함한 데이터베이스 객체를 저장합니다.

  5. 이 튜토리얼을 완료하는 데 필요한 BigQuery의 Gemini 기능을 사용 설정합니다.

    1. BigQuery의 Gemini 기능을 보려면 툴바에서 pen_spark Gemini를 클릭합니다.

    2. Gemini in BigQuery SQL 편집기 목록에서 다음 옵션을 모두 선택합니다.

      • 자동 완성
      • 자동 생성
      • 설명

    BigQuery에서 Gemini 기능을 사용 중지하려면 사용 중지하려는 Gemini 기능을 선택 해제합니다.

Gemini를 사용한 데이터 분석

Gemini를 사용하면 분석을 위해 액세스할 수 있는 대상 데이터와 해당 데이터를 분석하는 방법을 파악할 수 있습니다.

데이터를 쿼리하려면 먼저 어떤 데이터에 액세스할 수 있는지 알아야 합니다. 모든 데이터 제품은 데이터를 다르게 구성하고 저장합니다. 도움을 받으려면 'BigQuery에서 사용 가능한 데이터 세트와 테이블을 보려면 어떻게 해야 하나요?'와 같은 자연어 문(또는 프롬프트)을 전송하면 됩니다.

다양한 데이터 쿼리 시스템의 특성을 이해하려면 Gemini에 다음과 같은 특정 제품 정보를 묻는 메시지를 프롬프트로 제출할 수도 있습니다.

  • "BigQuery를 시작하려면 어떻게 해야 하나요?"
  • '데이터 분석에 BigQuery를 사용하면 어떤 이점이 있어?'
  • "BigQuery에서는 쿼리의 자동 확장을 어떻게 처리하나요?"

Gemini는 데이터 분석 방법에 대한 정보도 제공할 수 있습니다. 이러한 유형의 도움말을 위해 다음과 같은 Gemini 메시지를 보낼 수 있습니다.

  • "BigQuery에서 시계열 예측 모델을 만들려면 어떻게 해야 하나요?"
  • "BigQuery에 다른 유형의 데이터를 로드하려면 어떻게 해야 하나요?"

Gemini가 데이터에 관한 질문에 답변하도록 프롬프트를 입력하려면 다음 단계를 따르세요.

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

    BigQuery로 이동

  2. Google Cloud 콘솔 툴바에서 spark Gemini 열기를 클릭합니다.

  3. Gemini 창에서 How do I learn which datasets and tables are available to me in BigQuery?과 같은 프롬프트를 입력합니다.

  4. 보내기 프롬프트 보내기를 클릭합니다.

    Google Cloud를 위한 Gemini는 사용자의 프롬프트나 프롬프트에 대한 응답을 모델을 학습시키기 위한 데이터로 사용하지 않습니다. 자세한 내용은 Google Cloud를 위한 Gemini에서 데이터를 사용하는 방법을 참조하세요.

    Gemini가 다음과 비슷한 대답을 반환합니다.

    To learn which datasets and tables are available to you in
    BigQuery, you can use the Google Cloud console, the
    Google Cloud CLI, or the BigQuery API.
    ...
    
  5. 선택사항: 채팅 기록을 재설정하려면 Gemini 창에서 삭제 아이콘을 클릭한 다음 채팅 재설정을 클릭합니다.

Gemini를 사용한 BigQuery의 SQL 이해 및 작성

Gemini는 SQL 작업에 도움이 될 수 있습니다. 예를 들어 다른 사람들이 작성한 SQL 쿼리를 사용하는 경우 BigQuery의 Gemini는 복잡한 쿼리를 일반 언어로 설명할 수 있습니다. 이러한 설명은 쿼리 문법, 기본 스키마, 비즈니스 컨텍스트를 이해하는 데 도움이 될 수 있습니다.

Gemini에 판매 데이터 세트의 SQL 쿼리를 설명해 달라는 프롬프트 입력하기

Gemini가 SQL 쿼리 예시를 설명하도록 하려면 다음 단계를 따르세요.

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

    BigQuery로 이동

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

    예를 들어 데이터 테이블 및 쿼리가 판매 데이터 세트와 어떻게 관련되어 있는지 이해하고 데이터 세트를 사용하는 쿼리를 작성하는 데 도움이 될 수 있습니다. 다음 예시 쿼리에서는 사용 중인 테이블을 이해할 수 있지만 쿼리의 다른 섹션에서는 파싱하고 이해하는 데 시간이 걸릴 수 있습니다.

    SELECT u.id as user_id, u.first_name, u.last_name, avg(oi.sale_price) as avg_sale_price
    FROM `bigquery-public-data.thelook_ecommerce.users` as u
    JOIN `bigquery-public-data.thelook_ecommerce.order_items` as oi
    ON u.id = oi.user_id
    GROUP BY 1,2,3
    ORDER BY avg_sale_price DESC
    LIMIT 10
    
  3. Gemini에서 설명할 쿼리를 강조표시한 후 pen_spark 이 쿼리 설명을 클릭합니다.

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

    Gemini는 이전 단계의 예시 쿼리를 사용하여 다음과 비슷한 설명을 반환합니다.

    The intent of this query is to find the top 10 users by average sale price.
    The query first joins the users and order_items tables on the user_id
    column. It then groups the results by user_id , first_name , and last_name,
    and calculates the average sale price for each group. The results are then
    ordered by average sale price in descending order, and the top 10 results
    are returned.
    

일별 및 제품별로 판매를 그룹화하는 SQL 쿼리 생성

Gemini에 데이터 스키마에 따라 SQL 쿼리를 생성하라는 프롬프트를 제공할 수 있습니다. 코드 없이 시작하거나, 데이터 스키마에 대한 지식이 제한되거나, SQL 문법에 대한 기본 지식만 있는 상태로 시작하더라도 Gemini에서 하나 이상의 SQL 문을 제안할 수 있습니다.

다음 예시에서는 매일 인기 제품을 나열하는 쿼리를 생성합니다. 이러한 유형의 쿼리는 복잡할 수 있지만 Gemini를 사용하면 문법을 자동으로 만들 수 있습니다. 그런 다음 thelook_ecommerce 데이터 세트의 테이블을 사용하고 Gemini가 주문된 상품 및 제품 이름별로 매출을 계산하는 쿼리를 생성하도록 요청합니다.

Gemini가 인기 제품이 나열된 쿼리를 생성하도록 프롬프트를 입력하려면 다음 단계를 따릅니다.

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

    BigQuery로 이동

  2. 탐색 메뉴에서 BigQuery Studio를 클릭합니다.

  3. 새 쿼리 작성을 클릭합니다. 탐색기 창에 선택한 데이터베이스가 자동으로 로드됩니다.

  4. 쿼리 편집기에서 다음 프롬프트를 입력한 다음 Enter 키를 누릅니다. 우물 정자(#)는 Gemini에 SQL을 생성하도록 요청합니다.

    # select the sum of sales by date and product casted to day from bigquery-public-data.thelook_ecommerce.order_items joined with bigquery-public-data.thelook_ecommerce.products
    

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

    SELECT sum(sale_price),
    DATE(created_at),
    product_id
    FROM `bigquery-public-data.thelook_ecommerce.order_items`
    AS t1
    INNER JOIN `bigquery-public-data.thelook_ecommerce.products`
    AS t2
    ON t1.product_id = t2.id
    GROUP BY 2, 3
    
  5. 제안된 코드를 수락하려면 을 클릭한 후 실행을 클릭하여 SQL 문을 실행합니다. 제안된 SQL을 스크롤하고 문에서 제안된 특정 단어를 수락할 수도 있습니다.

  6. 쿼리 결과 창에서 쿼리 결과를 확인합니다.

예측 모델 빌드 및 결과 보기

이 섹션에서는 BigQuery ML을 사용하여 다음을 수행합니다.

  • 추세 쿼리를 사용하여 예측 모델을 빌드합니다.
  • Gemini를 사용하여 예측 모델의 결과를 보기 위한 쿼리 작성을 설명하고 도움을 받습니다.

다음은 모델에 대한 입력으로 사용되는 실제 판매와 함께 다음 쿼리 예시를 사용합니다. 쿼리는 ML 모델 생성의 일부로 사용됩니다.

  1. 예측 ML 모델을 만들려면 BigQuery SQL 편집기에서 다음 SQL을 실행합니다.

    CREATE MODEL bqml_tutorial.sales_forecasting_model
    OPTIONS(MODEL_TYPE='ARIMA_PLUS',
    time_series_timestamp_col='date_col',
    time_series_data_col='total_sales',
    time_series_id_col='product_id') AS
    SELECT sum(sale_price) as total_sales,
    DATE(created_at) as date_col,
    product_id
    FROM `bigquery-public-data.thelook_ecommerce.order_items`
    AS t1
    INNER JOIN `bigquery-public-data.thelook_ecommerce.products`
    AS t2
    ON t1.product_id = t2.id
    GROUP BY 2, 3;
    

    이 쿼리를 이해하는 데 Gemini의 도움을 받을 수 있습니다.

    과 같은 질문을 통해 Gemini를 프롬프트할 수도 있습니다.

    모델이 생성되면 결과 창에 다음과 유사한 메시지가 표시됩니다.

    This statement will replace the model named sales_forecasting_model.
    Depending on the type of model, this may take several hours to complete.
    
  2. Gemini 창에서 Gemini의 프롬프트를 입력하여 모델이 완료되면 모델에서 예측을 가져오는 쿼리를 작성하는 데 도움을 줍니다. 예를 들어 How can I get a forecast in SQL from the model?을 입력합니다.

    프롬프트의 컨텍스트에 따라 Gemini는 ML 모델의 판매 예측값 예시를 반환합니다.

    To get a forecast in SQL from the model, you can use the following query:
    
    SELECT
    *
    FROM
      ML.FORECAST(MODEL `PROJECT_ID.DATASET_ID.MODEL_NAME`,
    STRUCT(
          7 AS horizon,
          0.95 AS confidence_level
    )
    )
    
  3. Gemini 창에서 SQL 쿼리를 복사합니다.

  4. BigQuery SQL 편집기에서 SQL 쿼리를 붙여넣은 다음 실행합니다.

삭제

이 튜토리얼에서 사용한 리소스 비용이 Google Cloud 계정에 청구되지 않도록 하려면 이 튜토리얼에서 만든 Google Cloud 프로젝트를 삭제하면 됩니다. 또는 개별 리소스를 삭제할 수 있습니다.

  1. Google Cloud 콘솔에서 리소스 관리 페이지로 이동합니다.

    리소스 관리로 이동

  2. 프로젝트 목록에서 삭제할 프로젝트를 선택하고 삭제를 클릭합니다.
  3. 대화상자에서 프로젝트 ID를 입력한 후 종료를 클릭하여 프로젝트를 삭제합니다.

데이터 세트 삭제

프로젝트를 삭제하면 프로젝트의 데이터 세트와 테이블이 모두 삭제됩니다. 프로젝트를 다시 사용하려면 이 튜토리얼에서 만든 데이터 세트를 삭제할 수 있습니다.

  1. Google Cloud 콘솔에서 BigQuery 페이지를 엽니다.

    BigQuery로 이동

  2. 앞서 만든 bqml_tutorial 데이터 세트를 탐색에서 선택합니다.

  3. 데이터 세트, 테이블, 모든 데이터를 삭제하려면 데이터 세트 삭제를 클릭합니다.

  4. 삭제를 확인하려면 데이터 세트 삭제 대화상자에 데이터 세트 이름(bqml_tutorial)을 입력한 후 삭제를 클릭합니다.

다음 단계