벡터 어시스트는 Cloud SQL 벡터 워크로드의 배포 및 관리를 간소화하는 PostgreSQL용 Cloud SQL 확장 프로그램입니다. 임베딩 생성, 쿼리 최적화, 색인 생성과 같은 프로덕션 준비 벡터 검색 기능을 설정하는 데 도움이 되는 선언적 SQL 프레임워크를 제공합니다. 이 프레임워크는 다음을 통해 벡터 워크로드의 복잡성을 줄입니다.
- 의도 선언 간소화: 요구사항 (예: 표, 텍스트 열, 타겟 재현율)은 SQL 함수를 사용하여 선언됩니다.
- 권장사항 자동화: 정의된 벡터 사양과 최적의 색인 구성을 계산하는 최적화된 자동 조정 알고리즘을 사용하여 벡터 워크로드를 설정하기 위해 권장사항이라고도 하는 최적화된 SQL 명령어를 생성합니다.
- 투명성 및 제어 기능 제공: 추천을 검토, 수정, 적용할 수 있는 작업을 자동화할 때 각 추천에 대한 명확한 설명을 제공합니다.
- 신속한 프로토타입 제작 지원: 잘 조정된 벡터 검색 설정을 빠르게 배포하여 개념에서 프로덕션까지의 시간을 단축할 수 있습니다.
- 사용 편의성에 중점: 시맨틱 검색의 복잡성을 간소화하여 비즈니스 요구사항과 엔지니어링 요구사항 간의 격차를 해소합니다.
벡터 어시스트를 사용하면 간소화된 설정으로 시맨틱 검색 기능이 있는 엔드 투 엔드 애플리케이션을 빌드할 수 있습니다.
벡터 지원의 작동 방식
벡터 어시스트를 사용하려면 벡터 사양을 정의해야 합니다. 프레임워크는 이러한 벡터 사양(벡터 사양이라고도 함)을 사용하여 벡터 색인을 만드는 데 필요한 단계를 생성합니다. 벡터 지원은 벡터 워크로드를 배포하는 데 필요한 단계를 권장사항으로 출력합니다. 벡터 사양을 수정할 때마다 벡터 어시스턴트가 추천을 재생성합니다.
이 권장 단계를 사용하여 벡터 색인을 생성하면 벡터 어시스턴트를 사용하여 최적화된 검색어를 생성할 수 있습니다.
벡터 지원 사양
벡터 색인 사양 또는 벡터 사양을 설정하는 것이 벡터 어시스트를 사용하는 첫 번째 단계입니다. 벡터 사양은 벡터 워크로드의 의도와 요구사항을 정의하는 객체입니다. 여기에는 다음을 비롯한 모든 필수 정보가 포함됩니다.
- 표 및 관련 열 (텍스트 또는 벡터)
- 임베딩 모델 환경설정 (임베딩 생성을 사용하는 경우)
- 선호하는 색인 유형(예:
HNSW또는IVFFlat)입니다. - 검색어의 타겟 재현율
- 메모리 제한 또는 기타 성능 제약 조건
vector_assist.define_spec 함수를 사용하여 벡터 사양을 정의하며 언제든지 수정할 수 있습니다. 시스템은 각 사양에 고유한 ID를 할당하고 vector_assist.vector_specs라는 테이블에 저장합니다.
벡터 어시스트는 사양 입력과 최적의 인덱스 구성을 계산하는 최적화된 자동 튜닝 알고리즘을 추론합니다. 벡터 어시스트는 이러한 값을 사용하여 개발 프로세스를 간소화하지만, 환경설정에 맞게 맞춤설정할 수도 있습니다.
벡터 지원 권장사항
벡터 사양을 정의하면 벡터 어시스트가 입력을 처리하고 추천을 생성합니다. 이러한 권장사항은 사양에 따라 벡터 워크로드를 배포하기 위해 실행해야 하는 유용한 단계(일반적으로 SQL 명령어)의 순서가 지정된 목록입니다. 각 추천에는 다음이 포함됩니다.
- 실행할 SQL 쿼리입니다.
- 쿼리가 수행하는 작업과 쿼리가 추천되는 이유에 대한 자세한 설명
- 예상 색인 크기 또는 빌드 시간과 같은 잠재적인 절충안 또는 비용에 관한 정보
벡터 어시스트는 vector_assist.recommendation라는 테이블에 추천을 저장하며, 개별적으로 또는 전체적으로 검토, 수정, 적용할 수 있습니다.
워크로드의 벡터 사양을 수정할 때마다 벡터 어시스트는 업데이트된 사양을 준수하도록 추천을 재생성합니다.
제한사항
PostgreSQL용 Cloud SQL 인스턴스에서 벡터 어시스트를 사용할 때는 다음 제한사항을 고려하세요.
- 벡터 지원은 PostgreSQL 버전 12 이상만 지원합니다.
- 벡터 지원은 모든
pgvector버전을 지원하지만 최적의 성능과 기능 지원을 위해 최신 버전을 사용하는 것이 좋습니다. 자세한 내용은pgvector변경사항 로그를 참고하세요. - 인스턴스에서
google_ml_integration확장 프로그램을 사용하여 임베딩을 생성하는 경우 벡터 어시스트를 사용할 때도 해당 제한사항이 적용됩니다. 자세한 내용은 모델 엔드포인트 관리 개요를 참고하세요. - 벡터 어시스트는
HNSW및IVFFlat색인 유형만 지원합니다. - 벡터 어시스트는 임베딩을 자동 생성하기 위한 텍스트 임베딩 모델만 지원하며
text_column_name을 입력 매개변수로 사용합니다. 벡터 워크로드에 멀티모달 임베딩 모델이 필요한 경우google_ml_integration확장 프로그램이나 다른 확장 프로그램을 사용하여 이러한 임베딩을 수동으로 생성한 후 벡터 어시스턴트를 사용하여 이러한 임베딩에 시맨틱 검색을 사용 설정하세요.