벡터(Vector) 함수

벡터(Vector) 함수

Snowflake는 VECTOR 데이터 타입을 위한 유사도(similarity) 함수와 요소별(element-wise) 집계 함수를 모두 제공합니다. 이 함수들은 소스 벡터에 가장 가까운 벡터를 찾는 데 사용되며, 시맨틱 검색과 LLM·생성형 AI의 생성 응답을 미세 조정(fine-tuning)하는 데 유용합니다.

출처: Snowflake SQL Reference

본문

유사도 함수는 요소 타입과 차원이 같은 두 개의 VECTOR 인수에 대해 동작하며 지정된 지표를 계산합니다. Snowflake가 제공하는 벡터 유사도 함수는 다음과 같습니다.

  • VECTOR_INNER_PRODUCT
  • VECTOR_L1_DISTANCE
  • VECTOR_L2_DISTANCE
  • VECTOR_COSINE_SIMILARITY

벡터 조작 함수는 기존 벡터를 받아 절삭(truncation)·정규화(normalization)처럼 속성이 다른 새 벡터를 반환합니다. Snowflake가 제공하는 벡터 조작 함수는 다음과 같습니다.

  • VECTOR_TRUNCATE
  • VECTOR_NORMALIZE

벡터 집계 함수는 VECTOR 값의 컬럼에 대해 동작하며, 그룹 안의 모든 벡터에 걸쳐 합·평균·최소·최대 같은 요소별 수학 연산을 수행합니다. Snowflake가 제공하는 벡터 집계 함수는 다음과 같습니다.

  • VECTOR_SUM
  • VECTOR_MIN
  • VECTOR_MAX
  • VECTOR_AVG

참고: Snowflake의 벡터 함수는 부동소수점 정밀도를 낮출 수 있는 방식으로 최적화되어 있습니다. 이 함수들은 최대 1e-4의 오차 범위를 가집니다.

함수 목록

함수 이름 비고
VECTOR_INNER_PRODUCT
VECTOR_L1_DISTANCE
VECTOR_L2_DISTANCE
VECTOR_COSINE_SIMILARITY Snowpark API에서는 지원되지 않습니다.
VECTOR_TRUNCATE
VECTOR_NORMALIZE
VECTOR_SUM
VECTOR_MIN
VECTOR_MAX
VECTOR_AVG

더 알아보기 (Learn more)