BigQuery의 새로운 Gemini 모델 추론, 튜닝, 그라운딩, 안전 설정 이해
Xi Cheng
Software Engineer
Vaibhav Sethi
Product Manager, Google
* 본 아티클의 원문은 2024년 8월 1일 Google Cloud 블로그(영문)에 게재되었습니다.
소셜 미디어, 휴대기기, IoT 센서 등의 디지털 기기와 플랫폼의 확산으로 이미지, 오디오 파일, 동영상, 문서 같은 비정형 데이터가 급증하고 있습니다. 조직이 데이터에서 인사이트를 얻을 수 있도록 지원하기 위해 Google의 AI 지원 클라우드 데이터 플랫폼인 BigQuery가 생성형 AI 앱 빌드를 위한 Google의 완전 관리형 AI 개발 플랫폼인Vertex AI와 통합되어 있습니다. 이를 통해 다양한 생성형 AI 모델(즉, Gemini)과 AI 서비스(Document AI, Translation AI 등)를 활용하여 BigQuery 객체 테이블에 있는 비정형 데이터를 처리할 수 있습니다.
BigQuery에서는 이미 Gemini 1.0 Pro 및 Gemini 1.0 Pro Vision을 포함하여 Vertex AI에 호스팅된 여러 강력한 대규모 언어 모델(LLM)을 사용하여 데이터를 분석할 수 있습니다. 이러한 모델은 텍스트 요약과 감정 분석 같은 작업에 뛰어나며 대개는 프롬프트 엔지니어링만 필요합니다.
프롬프트 엔지니어링만으로는 충분하지 않은 시나리오의 경우 BigQuery에서 LoRA 기술을 지원하므로 text-bison 모델을 파인 튜닝할 수 있습니다. 이러한 추가 맞춤설정은 원하는 모델 동작을 프롬프트에서 간결하게 정의하기 어렵거나 프롬프트가 예상 결과를 일관되게 생성하지 않는 경우에 유용합니다. 파인 튜닝을 통해 모델은 특정 응답 스타일을 학습하고 새로운 동작(예: 특정 페르소나로서 응답)을 도입하고 최신 정보를 확인할 수 있습니다.
최근에는 BigQuery에 다음과 같이 최신 Gemini 모델에 대한 지원과 안전 개선, 그라운딩 지원을 추가했습니다.
-
ML.GENERATE_TEXT SQL 함수는 이제 Gemini 1.5 Pro 및 Gemini 1.5 Flash 파운데이션 모델을 지원합니다. BigQuery 사용자는 이미 텍스트에 대한 다양한 자연어 처리(NLP) 작업(예: 고급 텍스트 생성, 감정 분석)에 Gemini 1.0 Pro를 활용하고, 이미지와 동영상에 대한 이미지 캡셔닝, 시각적 질의 응답, 기타 비전 언어 작업에 Gemini 1.0 Pro Vision을 사용할 수 있습니다. Google의 차세대 멀티모달 파운데이션 모델인 Gemini 1.5를 사용하면 사용자는 앞서 언급한 NLP와 비전 작업을 향상된 품질로 처리할 수 있을 뿐만 아니라 오디오 및 PDF 파일을 분석(예: 오디오 스크립트 작성, PDF 요약)할 수도 있습니다. 이러한 모든 작업이 하나의 모델에서 이루어집니다.
-
Google 검색을 사용한 그라운딩을 지원하고 책임감 있는 AI(RAI) 응답을 위해 맞춤설정 가능한 안전 설정을 제공하기 위해 ML.GENERATE_TEXT SQL 함수를 개선하고 있습니다. 그라운딩을 사용하면 모델이 인터넷에서 추가 정보를 통합하여 정확성이 높고 사실에 기반한 응답을 생성할 수 있습니다. 안전 설정을 사용하면 사용자가 다양한 유해 카테고리(증오심 표현, 위험한 콘텐츠, 괴롭힘 등)에 대한 차단 기준을 정의할 수 있으며 모델은 이러한 설정을 위반하는 콘텐츠를 필터링합니다.
-
Gemini 1.0 모델을 튜닝하고 평가할 수 있도록 CREATE MODEL DDL 및 ML.EVALUATE SQL 함수를 확장하고 있습니다. BigQuery 사용자는 이미 text-bison PaLM 모델을 튜닝하고 평가할 수 있습니다. 이제 Gemini 1.0 Pro 모델을 파인 튜닝하고 평가하여 AI 기능을 더욱 세부적으로 맞춤설정할 수도 있습니다.
이어지는 섹션에서는 이러한 새 기능에 대해 자세히 살펴보겠습니다.
BigQuery ML 및 Gemini 1.5
BigQuery에서 Gemini 1.5 Pro를 사용하려면 먼저 호스팅된 Vertex AI Gemini 엔드포인트를 나타내는 원격 모델을 만듭니다. 일반적으로 이 단계는 몇 초 정도 걸립니다. 모델이 생성되면 이 모델을 사용하여 텍스트를 생성하고 데이터를 BigQuery 테이블과 바로 결합합니다.
Gemini 1.5에서는 ML.GENERATE_TEXT() 함수에 BigQuery 관리형 테이블을 입력으로 제공하고, 각 데이터베이스 레코드에 PROMPT 문을 자동으로 추가하여 각 행에 대한 프롬프트를 맞춤설정할 수 있습니다. 'temperature' 프롬프트 파라미터는 생성된 대답의 무작위성을 제어합니다.
Gemini 1.5 모델에서는 ML.GENERATE_TEXT() 함수에 객체 테이블이 입력으로 허용되므로 이미지, 동영상, 오디오 파일, 문서와 같은 비정형 데이터를 처리할 수 있습니다. 객체 테이블을 사용하는 경우 프롬프트는 STRUCT 옵션에 배치된 단일 문자열입니다. 그런 다음 이 프롬프트는 테이블의 객체마다 각각 행별로 적용됩니다.
샘플 결과를 살펴보겠습니다. 생성된 텍스트가 아주 많기 때문에 긴 출력 텍스트를 명확하게 볼 수 있도록 BigQuery UI에서 직접 JSON 형식으로 미리 봅니다. 프롬프트에서 지시한 대로, 모델이 먼저 오디오의 스크립트를 일본어로 작성한 다음 영어로 번역하는 것을 확인할 수 있습니다.


BQML과 LLM 그라운딩 및 안전 설정
그라운딩 기능을 설명하는 예시를 살펴보겠습니다. 그라운딩 기능이 활성화되면 사용자는 다양한 검색 진입점 및 각 검색과 관련된 신뢰도 점수를 비롯해 Google 검색에서 얻은 자세한 그라운딩 결과에 액세스할 수 있습니다.


안전 설정이 LLM 출력에 어떤 영향을 미치는지 확인해 보겠습니다. 예를 들어 다음과 같은 프롬프트를 작성합니다. '프랑스 혁명으로 처형된 프랑스 국왕은 누구야? 추가 정보 없이 답만 알려줘. ' HARM_CATEGORY_HARASSMENT
및 HARM_CATEGORY_DANGEROUS_CONTENT
카테고리에 대해 안전 설정 BLOCK_LOW_AND_ABOVE
가 지정되어 있는 경우 결과가 차단됩니다.


LLM에서 출력되는 내용을 직접 확인하고 싶을 때도 있습니다. HARM_CATEGORY_HARASSMENT
카테고리에 대한 안전 설정을 BLOCK_MEDIUM_AND_HIGH
로 변경하면 LLM이 적게 필터링한 결과를 제공합니다.


BQML 및 Gemini 1.0 LLM 튜닝
현재 BQML은 Gemini 1.0 모델의 LORA 파인 튜닝을 지원하고 있습니다. 모델을 파인 튜닝하려면 gemini-1.0-pro-002 엔드포인트를 기본 모델로 지정하고 '프롬프트' 및 '라벨' 열을 포함한 추가 학습 데이터를 제공해야 합니다. 예시를 통해 텍스트 분류 문제를 해결하는 방법을 보여드리겠습니다. 의료 스크립트 작성 데이터 세트를 사용하여 각 스크립트를 '척추 교정', '치과', '피부과' 등 17개의 고유한 카테고리로 분류하도록 모델에 지시합니다.
다음과 같이 파인 튜닝된 모델을 만듭니다.
모델이 학습되면 ML.EVALUATE를 활용하여 모델의 성능을 평가하고 ML.GENERATE_TEXT를 활용하여 모델 추론을 실행할 수 있습니다. 포괄적인 예시는 다음 튜토리얼을 참조하세요. https://cloud.google.com/bigquery/docs/tune-evaluate
Google Cloud와 함께 데이터와 생성형 AI의 미래에 관해 알아보기
이러한 흥미로운 새 기능에 대해 자세히 알아보려면 이 문서를 살펴보시기 바랍니다. Gemini의 기능을 활용하며 BigQuery 내에서 포괄적인 데이터 분석 및 AI 애플리케이션을 직접 빌드하는 방법에 대한 실무형 데모를 보려면 이 동영상을 시청하세요.

또한 최근 게시된 웹캐스트에서는 BigQuery의 최신 기능을 소개하고 BigQuery ML을 활용하여 간단한 SQL을 사용해 모델을 쉽게 만들고 배포하는 방법을 보여줍니다.
이러한 새로운 기능에 대한 의견이나 추가 기능 요청이 있다면 bqml-feedback@google.com을 통해 알려주세요.
Google 직원인 Tianxiang Gao, Eric Hao, Jasper Xu, Manoj Gunti가 이 블로그 게시물 작성에 도움을 주었습니다. 이러한 기능은 많은 Google 직원의 노력으로 실현됩니다.