
POSTGRES의 임베딩 의미검색을 위해 PgVector를 설치해봄니다.
1. 아래의 깃허브에 접속하여
https://github.com/pgvector/pgvector?tab=readme-ov-file#windows
GitHub - pgvector/pgvector: Open-source vector similarity search for Postgres
Open-source vector similarity search for Postgres. Contribute to pgvector/pgvector development by creating an account on GitHub.
github.com
윈도우에 pgvector를 설치하기전 visual basic의 C++워크로드를 설치하라고 하니 설치해줍니다.
비쥬얼베이직 다운로드 페이지입니다.
https://visualstudio.microsoft.com/ko/downloads/
2. 설치 : C++을 사용한 데스크톱 개발, MSVC v143 빌드 도구


3.설치가 끝난 후 아래의 명령어를 관리자모드로 실행시켜 줍니다.(환경변수 자동설정처리)
C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Auxiliary\Build>call vcvars64.bat

4. 그런 다음 nmake을 사용하여 빌드합니다. (git이 없다면 설치해주세요)
4-1 Windows 검색에서 "x64 Native Tools Command Prompt for VS" 또는 "Developer Command Prompt for VS" 검색 후 실행.
set "PGROOT=C:\Program Files\PostgreSQL\17"
cd %TEMP%
git clone --branch v0.8.0 https://github.com/pgvector/pgvector.git
cd pgvector
nmake /F Makefile.win
nmake /F Makefile.win install
결과 :

5.DBeaver 에서 L2거리로 가장 가까운 데이터 조회
CREATE EXTENSION vector;
CREATE TABLE items (id bigserial PRIMARY KEY, embedding vector(3));
INSERT INTO items (embedding) VALUES ('[1,2,3]'), ('[4,5,6]');
SELECT * FROM items ORDER BY embedding <-> '[3,1,2]' LIMIT 5;
내적( <#>), 코사인 거리( <=>), L1 거리( <+>), L2 거리(<->)
참고: Postgres는 연산자에 대한 순서 인덱스 스캔 <#>만 지원하므로 음의 내적을 반환합니다.ASC

'AI' 카테고리의 다른 글
[Ollama] 허킹페이스 양자화 파일을 이용한 모델 생성 gguf (0) | 2025.03.24 |
---|---|
[POSTGRES] Windows 설치. (0) | 2025.03.17 |
[ChatGPT] 기본 대화를 java Streming으로 구연해보자. (0) | 2025.02.13 |
[AI] Ollama 윈도우에 설치 후 사용해보기 (0) | 2025.01.15 |