임베딩 태스크 유형 선택

Vertex AI 임베딩 모델에서 문서 검색, 질문 및 답변, 사실 확인과 같은 다양한 태스크 유형에 최적화된 임베딩을 생성할 수 있습니다. 태스크 유형은 의도한 사용 사례를 기준으로 모델에서 생성하는 임베딩을 최적화하는 라벨입니다. 이 문서에서는 임베딩에 가장 적합한 태스크 유형을 선택하는 방법을 설명합니다.

지원되는 모델

태스크 유형은 다음 모델에서 지원됩니다.

  • textembedding-gecko@003
  • text-embedding-004
  • text-multilingual-embedding-002

태스크 유형의 이점

태스크 유형은 임베딩 모델에서 생성한 임베딩의 품질을 향상시킬 수 있습니다.

질문과 답변이 의미론적으로 유사하지 않음
그림 1. 질문과 답변이 의미상 유사하지 않습니다. 즉, 임베딩은 자동으로 관계를 표시하지 않습니다.

예를 들어 검색 증강 생성(RAG) 시스템을 빌드할 때 일반적인 설계는 텍스트 임베딩과 벡터 검색을 사용하여 유사성 검색을 수행하는 것입니다. 경우에 따라 질문과 답변이 의미론적으로 유사하지 않아 검색 품질이 저하될 수 있습니다. 예를 들어 '하늘은 왜 파란색이야?'와 같은 질문과 '햇빛의 산란으로 인해 파란색이 나타납니다.'와 같은 답변은 문장으로서 의미가 서로 다릅니다. 즉, RAG 시스템은 그림 1과 같이 두 문장의 관계를 자동으로 인식하지 못합니다. 태스크 유형이 없으면 RAG 개발자는 고급 데이터 과학 기술과 경험이 필요한 쿼리와 답변 간의 관계를 학습하도록 모델을 학습시키거나 긴 지연 시간과 높은 비용을 초래할 수 있는 LLM 기반 쿼리 확장 또는 HyDE를 사용해야 합니다.

태스크 유형에 따라 질문과 답변이 임베딩 공간에서 더 가까워집니다.
그림 2. 태스크 유형은 특정 태스크의 임베딩을 최적화합니다. 이 경우 임베딩 공간에서 질문과 답변이 더 가까워집니다.

태스크 유형을 사용하면 특정 태스크에 최적화된 임베딩을 생성할 수 있으므로 자체 태스크별 임베딩을 개발하는 데 걸리는 시간과 비용을 절약할 수 있습니다. '하늘은 왜 파란색이야?'라는 쿼리와 '햇빛의 산란으로 인해 파란색이 나타납니다.'라는 응답에 대해 생성된 임베딩은 그림 2와 같이 쿼리와 질문 간의 관계를 나타내는 공유된 임베딩 공간에 위치하게 됩니다. 이 RAG 예시에서 최적화된 임베딩은 유사 검색을 향상시킵니다.

태스크 유형은 쿼리 및 답변 사용 사례 외에도 분류, 클러스터링, 사실 확인과 같은 태스크에 최적화된 임베딩 공간을 제공합니다.

지원되는 태스크 유형

태스크 유형을 사용하는 임베딩 모델은 다음과 같은 태스크 유형을 지원합니다.

작업 유형 설명
SEMANTIC_SIMILARITY 텍스트 유사성을 평가하도록 최적화된 임베딩을 생성하는 데 사용됩니다.
CLASSIFICATION 사전 설정된 라벨에 따라 텍스트를 분류하도록 최적화된 임베딩을 생성하는 데 사용됩니다.
CLUSTERING 유사성을 기반으로 텍스트를 클러스터링하는 데 최적화된 임베딩을 생성하는 데 사용됩니다.
RETRIEVAL_DOCUMENT, RETRIEVAL_QUERY, QUESTION_ANSWERING, FACT_VERIFICATION 문서 검색이나 정보 검색에 최적화된 임베딩을 생성하는 데 사용됩니다.

임베딩 작업에 가장 적합한 태스크 유형은 임베딩에 대한 사용 사례에 따라 달라집니다. 태스크 유형을 선택하기 전에 임베딩 사용 사례를 결정합니다.

임베딩 사용 사례 결정

임베딩 사용 사례는 일반적으로 텍스트 유사성 평가, 텍스트 분류, 텍스트 클러스터링, 텍스트에서 정보 검색이라는 4가지 카테고리 중 하나에 속합니다. 사용 사례가 위 카테고리 중 하나에 속하지 않으면 기본적으로 RETRIEVAL_QUERY 태스크 유형을 사용합니다.

텍스트 유사성 평가

임베딩을 사용하여 텍스트 유사성을 평가하려면 SEMANTIC_SIMILARITY 태스크 유형을 사용합니다. 이 태스크 유형은 유사성 점수 생성에 최적화된 임베딩을 생성합니다.

예를 들어 다음 텍스트의 유사성을 비교하는 데 사용할 임베딩을 생성하려고 한다고 가정해 보겠습니다.

  • 고양이가 자고 있습니다.
  • 고양이과 동물이 낮잠을 자고 있습니다

임베딩을 사용하여 유사성 점수를 만들면 두 텍스트 모두 의미가 거의 동일하므로 유사성 점수가 높습니다.

입력 유사성 평가가 유용한 다음과 같은 실제 시나리오를 고려해 보세요.

  • 추천 시스템의 경우 사용자의 선호 항목과 의미적으로 유사한 항목(예: 제품, 기사, 영화)을 식별하여 맞춤 추천을 제공하고 사용자 만족도를 높이려고 합니다.

텍스트 분류

임베딩을 사용하여 사전 설정된 라벨에 따라 텍스트를 분류하려면 CLASSIFICATION 태스크 유형을 사용합니다. 이 태스크 유형은 분류에 최적화된 임베딩 공간에 임베딩을 생성합니다.

예를 들어 소셜 미디어 게시물의 감정을 긍정, 부정 또는 중립으로 분류하는 데 사용할 수 있는 임베딩을 생성하려고 한다고 가정해 보겠습니다. '비행기 타는 거 싫어'라는 소셜 미디어 게시물의 임베딩을 분류하면 감정이 부정적으로 분류됩니다.

텍스트 클러스터링

임베딩을 사용하여 유사성을 기반으로 텍스트를 클러스터링하려면 CLUSTERING 태스크 유형을 사용합니다. 이 태스크 유형은 유사성을 기반으로 그룹화되도록 최적화된 임베딩을 생성합니다.

예를 들어 사용자가 이전에 읽은 기사와 주제별로 관련 있는 기사를 사용자에게 보여줄 수 있도록 뉴스 기사에 대한 임베딩을 생성하려고 한다고 가정해 보겠습니다. 임베딩이 생성되고 클러스터링된 후에는 스포츠에 대한 기사를 많이 읽는 사용자에게 스포츠 관련 기사를 추가로 추천할 수 있습니다.

클러스터링의 추가 사용 사례는 다음과 같습니다.

  • 고객 세분화: 타겟팅된 마케팅 및 맞춤설정된 환경을 위해 프로필이나 활동에서 생성된 유사한 임베딩으로 고객을 그룹화합니다.
  • 제품 세분화: 제품 제목과 설명, 제품 이미지 또는 고객 리뷰를 기준으로 제품 임베딩을 클러스터링하면 기업에서 제품에 대한 세그먼트 분석을 수행하는 데 도움이 됩니다.
  • 시장 조사: 소비자 설문조사 응답 또는 소셜 미디어 데이터 임베딩을 클러스터링하면 소비자의 의견, 선호도, 행동에 숨겨진 패턴과 동향을 파악하여 시장 조사를 지원하고 제품 개발 전략을 수립할 수 있습니다.
  • 의료: 의료 데이터에서 파생된 환자 임베딩을 클러스터링하면 유사한 질환이나 치료 응답이 있는 그룹을 식별하는 데 도움이 되므로 더욱 맞춤화된 의료 계획 및 표적 치료가 가능합니다.
  • 고객 의견 동향: 다양한 채널(설문조사, 소셜 미디어, 지원 티켓)의 고객 의견을 그룹으로 클러스터링하면 일반적인 문제점, 기능 요청, 제품 개선 영역을 파악하는 데 도움이 됩니다.

텍스트에서 정보 검색

소개에서 설명한 대로 문서 검색 또는 정보 검색과 Q&A 사용 사례(예: 검색, 챗봇 또는 RAG)에 임베딩을 사용하려면 서로 다른 태스크 유형의 임베딩 작업 2개를 실행해야 합니다.

  1. RETRIEVAL_DOCUMENT 태스크 유형을 사용하여 문서에 최적화된 임베딩(코퍼스라고도 함)을 만듭니다.
  2. 쿼리 특성에 따라 다음 태스크 유형 중 하나를 사용하여 쿼리에 최적화된 임베딩을 만듭니다.
    • RETRIEVAL_QUERY: '밴쿠버 최고의 레스토랑', '녹색 야채' 또는 '최고의 쿠키 레시피는?'과 같은 쿼리의 기본 태스크 유형으로 사용합니다.
    • QUESTION_ANSWERING: 모든 쿼리 형식이 '하늘이 파란색인 이유는?' 또는 '신발끈을 어떻게 묶나요?와 같은 적절한 질문으로 지정된 경우에 사용합니다.
    • FACT_VERIFICATION: 코퍼스에서 주장을 증명하거나 부정하는 문서를 검색하려는 경우에 사용합니다. 예를 들어 '사과는 땅 밑에서 자란다'라는 쿼리는 궁극적으로 이 주장을 부정하는 사과에 대한 기사를 검색할 수 있습니다.

검색 쿼리가 유용한 다음과 같은 실제 시나리오를 고려해 보세요.

  • 전자상거래 플랫폼에서 임베딩을 사용하면 사용자가 텍스트 쿼리와 이미지를 모두 사용하여 제품을 검색할 수 있으므로 더욱 직관적이고 몰입도 높은 쇼핑 환경을 제공할 수 있습니다.
  • 교육 플랫폼의 경우 교과서 콘텐츠나 교육 리소스를 기반으로 학생의 질문에 답변할 수 있는 질의 응답 시스템을 빌드할 수 있으므로 맞춤형 학습 환경을 제공하고 학생이 복잡한 개념을 이해하는 데 도움될 수 있습니다.

다음 단계