피드로 돌아가기
pgvector + Ollama Setup
Dev.toDev.to
Backend

pgvector와 Ollama 기반 768차원 벡터 검색으로 분산 시스템 장애 진단 최적화

pgvector + Ollama Setup

Pedro Santos2026년 5월 6일5intermediate

Context

분산 시스템 내 Saga 패턴 적용 중 발생하는 장애 진단을 위해 기존의 텍스트 기반 로그 검색을 사용함. 단순 키워드 매칭 방식은 유사한 패턴의 장애를 식별하지 못하는 한계가 있어, 의미론적 유사성 기반의 검색 체계가 필요함.

Technical Solution

  • Ollama의 nomic-embed-text 모델을 통한 텍스트 데이터의 768차원 Vector 변환
  • 기존 PostgreSQL 인프라를 활용한 pgvector 확장 모듈 도입으로 별도의 Vector DB 관리 오버헤드 제거
  • LangChain4j를 활용하여 EmbeddingModel, EmbeddingStore, EmbeddingStoreIngestor 간의 파이프라인 구축
  • Kafka Consumer를 통해 수집된 Saga Event를 실시간 Vectorize 하여 pgvector에 저장하는 아키텍처 설계
  • minScore(0.75) 임계치 설정을 통한 노이즈 제거 및 maxResults(3) 제한으로 LLM 컨텍스트 최적화
  • Metadata 필터링 기능을 통한 특정 상태(FAIL)나 프로필 키 기반의 정밀 검색 구현

- Embedding 모델의 Output Dimension과 DB 스키마의 차원 설정 일치 여부 확인 - 데이터 특성에 따른 유사도 임계값(minScore) 튜닝을 통한 검색 정확도 최적화 - LLM 전달 컨텍스트 양을 제한하여 답변 품질을 높이는 maxResults 전략 검토 - 인프라 관리 포인트 감소를 위해 기존 DB의 Vector Extension 도입 가능성 검토

원문 읽기