생성형 AI 개요
이 문서에서는 BigQuery ML이 지원하는 생성형 인공지능(AI) 기능을 설명합니다. 이러한 기능을 사용하면 사전 학습된 Vertex AI 모델 및 내장 BigQuery ML 모델을 사용하여 BigQuery ML에서 AI 태스크를 수행할 수 있습니다.
지원되는 태스크는 다음과 같습니다.
Vertex AI 모델에 액세스하여 Vertex AI 모델의 엔드포인트를 나타내는 BigQuery ML에서 원격 모델을 생성하여 이러한 기능 중 하나를 수행합니다. 사용할 Vertex AI 모델에 대한 원격 모델을 만든 후에는 원격 모델에 대해 BigQuery ML 함수를 실행하여 해당 모델의 기능에 액세스합니다.
이런 방식을 사용하면 SQL 쿼리에서 이와 같은 Vertex AI 모델의 기능을 사용하여 BigQuery 데이터를 분석할 수 있습니다.
워크플로
Vertex AI 모델을 통한 원격 모델과 BigQuery ML 함수와 함께 Cloud AI 서비스를 통한 원격 모델을 사용하여 복잡한 데이터 분석 및 생성형 AI 태스크를 수행할 수 있습니다.
다음 다이어그램은 이러한 기능을 함께 사용할 수 있는 몇 가지 일반적인 워크플로를 보여줍니다.
텍스트 생성
텍스트 생성은 프롬프트 또는 데이터 분석을 기반으로 텍스트가 생성되는 생성형 AI의 한 형태입니다. 텍스트와 멀티모달 데이터를 모두 사용하여 텍스트 생성을 실행할 수 있습니다.
텍스트 생성의 몇 가지 일반적인 사용 사례는 다음과 같습니다.
- 창의적인 콘텐츠 생성
- 코드 생성
- 채팅 또는 이메일 응답 생성
- 브레인스토밍(예: 향후 제품 또는 서비스의 방향 제안)
- 제품 추천과 같은 콘텐츠 맞춤설정
- 콘텐츠에 하나 이상의 라벨을 적용하여 데이터를 분류하고 카테고리별로 정렬
- 콘텐츠에 표현된 주요 감정을 파악
- 콘텐츠에서 전달하는 주요 아이디어 또는 인상을 요약
- 텍스트 또는 시각적 데이터에서 하나 이상의 주요 항목을 식별
- 텍스트 또는 오디오 데이터의 콘텐츠를 다른 언어로 번역
- 오디오 데이터의 구두 콘텐츠와 일치하는 텍스트를 생성
- 시각적 데이터에 캡션을 추가하거나 질의응답 수행
데이터 보강은 텍스트 생성 후 일반적으로 취하는 다음 단계로, 초기 분석의 통계를 추가 데이터와 결합하여 보강합니다. 예를 들어 가구 SKU에 mid-century modern
또는 farmhouse
같은 관련 설명이 있도록 가구 이미지를 분석하여 design_type
열의 텍스트를 생성할 수 있습니다.
지원되는 모델
생성형 AI 태스크를 실행하려면 BigQuery ML의 원격 모델을 사용하여 Vertex AI에 배포되거나 호스팅되는 모델을 참조할 수 있습니다. 다음 유형의 원격 모델을 만들 수 있습니다.
- 정식 버전 또는 프리뷰 Gemini 모델을 사용하는 원격 모델
다음 파트너 모델을 사용하는 원격 모델:
지원되는 개방형 모델을 통한 원격 모델
텍스트 생성 모델 사용
원격 모델을 만든 후에는 ML.GENERATE_TEXT
함수를 사용하여 해당 모델과 상호작용할 수 있습니다.
Gemini 모델을 기반으로 하는 원격 모델의 경우 다음을 수행할 수 있습니다.
ML.GENERATE_TEXT
함수를 사용하여 쿼리에서 지정하거나 표준 테이블의 열에서 가져오는 프롬프트에서 텍스트를 생성합니다. 쿼리에서 프롬프트를 지정할 때 프롬프트에서 다음 유형의 테이블 열을 참조할 수 있습니다.- 텍스트 데이터를 제공하는
STRING
열 ObjectRef
형식을 사용하여 구조화되지 않은 데이터를 제공하는STRUCT
열. 프롬프트 내에서OBJ.GET_ACCESS_URL
함수를 사용하여ObjectRef
값을ObjectRefRuntime
값으로 변환해야 합니다.
- 텍스트 데이터를 제공하는
ML.GENERATE_TEXT
함수를 사용하여 함수 인수로 제공하는 프롬프트에서 객체 테이블의 텍스트, 이미지, 오디오, 동영상 또는 PDF 콘텐츠를 분석합니다.
다른 모든 유형의 원격 모델의 경우 쿼리 또는 표준 테이블의 열에서 제공하는 프롬프트와 함께
ML.GENERATE_TEXT
함수를 사용할 수 있습니다.
다음 주제를 사용하여 BigQuery ML에서 텍스트 생성을 시도해 보세요.
- Gemini 모델과
ML.GENERATE_TEXT
함수를 사용하여 텍스트 생성 - Gemini 모델과
ML.GENERATE_TEXT
함수를 사용하여 텍스트 생성 - Gemini 모델을 사용하여 이미지 분석
- 데이터와 함께
ML.GENERATE_TEXT
함수를 사용하여 텍스트 생성 - 데이터를 사용하여 모델 조정
그라운딩 및 안전 속성
입력에 표준 테이블을 사용하는 경우 ML.GENERATE_TEXT
함수로 Gemini 모델을 사용할 때 그라운딩 및 안전 속성을 사용할 수 있습니다. Gemini 모델은 그라운딩을 통해 인터넷의 추가 정보를 사용하여 보다 구체적이고 사실적인 응답을 생성할 수 있습니다. Gemini 모델은 안전 속성을 통해 지정된 속성을 기반으로 반환하는 응답을 필터링할 수 있습니다.
지도 조정
다음 모델을 참조하는 원격 모델을 만들 때 선택적으로 지도 조정을 동시에 구성할 수 있습니다.
gemini-2.0-flash-001
gemini-2.0-flash-lite-001
gemini-1.5-pro-002
gemini-1.5-flash-002
모든 추론은 Vertex AI에서 발생합니다. 결과는 BigQuery에 저장됩니다.
Vertex AI 프로비저닝된 처리량
지원되는 Gemini 모델의 경우 ML.GENERATE_TEXT
함수와 함께 Vertex AI 프로비저닝된 처리량을 사용하여 요청에 일관된 높은 처리량을 제공할 수 있습니다. 자세한 내용은 Vertex AI 프로비저닝된 처리량 사용을 참조하세요.
정형 데이터 생성
구조화된 데이터 생성은 텍스트 생성과 매우 유사하지만 SQL 스키마를 지정하여 모델의 응답을 추가로 포맷할 수 있습니다.
구조화된 데이터를 생성하려면 정식 버전 또는 프리뷰 Gemini 모델을 사용하여 원격 모델을 만드세요. 그러면 AI.GENERATE_TABLE
함수를 사용하여 해당 모델과 상호작용할 수 있습니다. 구조화된 데이터를 만들어 보려면 AI.GENERATE_TABLE
함수를 사용하여 구조화된 데이터 생성을 참조하세요.
AI.GENERATE_TABLE
함수로 Gemini 모델을 사용할 때 안전 속성을 지정하여 모델의 응답을 필터링할 수 있습니다.
행별로 특정 유형의 값 생성
Gemini 모델과 함께 스칼라 생성형 AI 함수를 사용하여 BigQuery 표준 테이블의 데이터를 분석할 수 있습니다. 데이터에는 ObjectRef
값이 포함된 열의 텍스트 데이터와 구조화되지 않은 데이터가 모두 포함됩니다.
테이블의 각 행에 대해 이러한 함수는 특정 유형을 포함하는 출력을 생성합니다.
다음 AI 함수를 사용할 수 있습니다.
AI.GENERATE
:STRING
값 생성AI.GENERATE_BOOL
AI.GENERATE_DOUBLE
AI.GENERATE_INT
지원되는 Gemini 모델과 함께 AI.GENERATE
함수를 사용하는 경우 Vertex AI 프로비저닝된 처리량을 사용하여 요청에 일관된 높은 처리량을 제공할 수 있습니다. 자세한 내용은 Vertex AI 프로비저닝된 처리량 사용을 참조하세요.
임베딩 생성
임베딩은 텍스트 또는 오디오 파일의 일부와 같이 특정 항목을 나타내는 고차원의 숫자 벡터입니다. 임베딩을 생성하면 데이터를 더 쉽게 추론하고 비교할 수 있는 방식으로 데이터의 시맨틱을 포착할 수 있습니다.
임베딩 생성의 일반적인 사용 사례는 다음과 같습니다.
- 검색 증강 생성(RAG)을 사용하여 신뢰할 수 있는 소스의 추가 데이터를 참조하여 사용자 쿼리에 대한 모델 응답을 보강합니다. RAG는 사실 정확성과 응답 일관성을 개선하고 모델의 학습 데이터보다 최신인 데이터에 액세스할 수 있도록 지원합니다.
- 멀티모달 검색을 실행합니다. 예를 들어 텍스트 입력을 사용하여 이미지를 검색하는 경우
- 추천, 대체, 레코드 중복 삭제를 위해 유사한 항목을 찾기 위한 시맨틱 검색을 실행합니다.
- 클러스터링을 위해 k-평균 모델과 함께 사용할 임베딩을 만듭니다.
지원되는 모델
지원되는 모델은 다음과 같습니다.
- 텍스트 임베딩을 만들려면 Vertex AI
text-embedding
및text-multilingual-embedding
모델을 사용하면 됩니다. - 텍스트, 이미지, 동영상을 동일한 시맨틱 공간에 삽입하는 멀티모달 임베딩을 만들려면 Vertex AI
multimodalembedding
모델을 사용하면 됩니다. - 구조화된 독립적이고 동일한 분포의 무작위 변수(IID) 데이터의 임베딩을 만들려면 BigQuery ML 주요 구성요소 분석(PCA) 모델 또는 Autoencoder 모델을 사용하면 됩니다.
- 사용자 또는 항목 데이터의 임베딩을 만들려면 BigQuery ML 행렬 분해 모델을 사용하면 됩니다.
비슷한 경량형 텍스트 임베딩의 경우 NNLM, SWIVEL, BERT와 같은 사전 학습된 TensorFlow 모델 사용을 시도해 보세요.
임베딩 생성 모델 사용
모델을 만든 후에는 ML.GENERATE_EMBEDDING
함수를 사용하여 모델과 상호작용할 수 있습니다. 지원되는 모든 유형의 모델에서 ML.GENERATE_EMBEDDING
은 표준 테이블의 구조화된 데이터로 작동합니다. 멀티모달 임베딩 모델의 경우 ML.GENERATE_EMBEDDING
은 ObjectRef
값이 포함된 표준 테이블 열 또는 객체 테이블의 시각적 콘텐츠로도 작동합니다.
원격 모델의 경우 모든 추론은 Vertex AI에서 발생합니다. 다른 모델 유형의 경우 모든 추론이 BigQuery에서 발생합니다. 결과는 BigQuery에 저장됩니다.
다음 주제를 사용하여 BigQuery ML에서 텍스트 생성을 시도해 보세요.
ML.GENERATE_EMBEDDING
함수를 사용하여 텍스트 임베딩 생성ML.GENERATE_EMBEDDING
함수를 사용하여 이미지 임베딩 생성ML.GENERATE_EMBEDDING
함수를 사용하여 동영상 임베딩 생성- 멀티모달 임베딩 생성 및 검색
- 시맨틱 검색 및 검색 증강 생성 수행
예측
예측은 과거 시계열 데이터를 분석하여 미래 추세에 대해 정보에 입각한 예측을 수행하는 기법입니다. BigQuery ML의 내장 TimesFM 시계열 모델(프리뷰)을 사용하면 자체 모델을 만들지 않고도 예측을 실행할 수 있습니다. 기본 제공 TimesFM 모델은 AI.FORECAST
함수와 함께 작동하여 데이터를 기반으로 예측을 생성합니다.
위치
텍스트 생성 및 임베딩 모델의 지원되는 위치는 사용하는 모델 유형과 버전에 따라 다릅니다. 자세한 내용은 위치를 참조하세요. 다른 생성형 AI 모델과 달리 위치 지원은 내장된 TimesFM 시계열 모델에는 적용되지 않습니다. TimesFM 모델은 BigQuery에서 지원되는 모든 리전에서 사용할 수 있습니다.
가격 책정
모델에 대해 쿼리를 실행하는 데 사용하는 컴퓨팅 리소스에 대한 요금이 청구됩니다. 원격 모델은 Vertex AI 모델을 호출하므로 원격 모델에 대한 쿼리에도 Vertex AI 요금이 청구됩니다.
자세한 내용은 BigQuery ML 가격 책정을 참조하세요.
다음 단계
- BigQuery의 AI 및 ML 소개는 BigQuery의 AI 및 ML 소개를 참조하세요.
- 머신러닝 모델에 대한 추론 수행에 관한 자세한 내용은 모델 추론 개요 참조하기