본문 바로가기

AI

Vector DB 비교: Pinecone, Weaviate, pgvector, OpenSearch 선택 기준

반응형

RAG 시스템을 구축할 때 Vector DB 선택은 검색 품질, 운영 비용, 확장성에 직접적인 영향을 미칩니다. Pinecone, Weaviate, pgvector, OpenSearch 각각의 특성과 상황별 선택 기준을 정리합니다.

핵심 요약

  • Vector DB는 고차원 벡터를 저장하고 유사도 검색(ANN)을 수행하는 데이터베이스입니다. RAG 파이프라인에서 문서 검색 단계를 담당합니다.
  • Pinecone은 완전 관리형으로 운영 부담이 적지만, 벤더 종속과 비용 예측이 어려울 수 있습니다.
  • Weaviate는 모듈형 아키텍처로 유연하지만, 클러스터 운영 경험이 필요합니다.
  • pgvector는 PostgreSQL 확장으로 기존 인프라를 활용할 수 있지만, 대규모 벡터 검색에서 성능 한계가 있습니다.
  • OpenSearch는 키워드 검색과 벡터 검색을 결합한 Hybrid Search에 강점이 있지만, 리소스 소비가 큽니다.
  • 선택 기준은 데이터 규모, 팀의 운영 역량, 기존 인프라, 검색 요구사항에 따라 달라집니다.

1. 문제 상황: RAG에 Vector DB가 필요한 이유

RAG 시스템을 설계할 때 "사용자 질문과 의미적으로 유사한 문서를 빠르게 찾는 것"이 핵심 과제입니다. 전통적인 키워드 검색(BM25)은 동의어나 맥락을 이해하지 못합니다. "직원 휴가 정책"을 검색했을 때 "연차 사용 규정"이라는 문서를 찾지 못하는 것이 대표적인 예입니다.

이를 해결하기 위해 텍스트를 Embedding 모델로 벡터(숫자 배열)로 변환하고, 벡터 간 유사도를 계산하여 의미적으로 가까운 문서를 검색합니다. 이 벡터를 저장하고 빠르게 검색하는 전용 시스템이 Vector DB입니다.

문제는 선택지가 많다는 것입니다. 전용 Vector DB(Pinecone, Weaviate, Milvus, Qdrant), 기존 DB 확장(pgvector, MongoDB Atlas Vector Search), 검색 엔진 확장(OpenSearch, Elasticsearch) 등 각각 trade-off가 다릅니다.

팀 상황에 따라 "운영 부담을 줄이고 싶다", "기존 PostgreSQL을 활용하고 싶다", "키워드 검색도 함께 해야 한다", "수억 건의 벡터를 다뤄야 한다"처럼 우선순위가 다르므로, 상황별 선택 기준을 정리합니다.

2. Vector DB 아키텍처 비교

Vector DB 아키텍처 비교
Vector DB 아키텍처 비교

2.1 Pinecone: 완전 관리형 서비스

Pinecone은 Vector DB를 SaaS로 제공합니다. 인프라 관리 없이 API 호출만으로 벡터를 저장하고 검색합니다.

아키텍처 특징: - Serverless와 Pod-based 두 가지 배포 모드를 제공합니다. - Serverless는 사용량 기반 과금으로, 트래픽이 적을 때 비용이 낮습니다. - Pod-based는 전용 리소스를 할당하여 일관된 성능을 보장합니다. - Namespace로 데이터를 논리적으로 분리할 수 있습니다. - 메타데이터 필터링을 지원하여 검색 범위를 제한할 수 있습니다.

제약사항: - 단일 벡터 차원은 인덱스 생성 시 고정됩니다. 변경하려면 인덱스를 재생성해야 합니다. - 복잡한 필터링 조합에서 성능이 저하될 수 있습니다. - 데이터가 Pinecone 인프라에 저장되므로, 데이터 거주지(Residency) 요건이 있는 경우 리전 선택을 확인해야 합니다.

2.2 Weaviate: 모듈형 오픈소스

Weaviate는 오픈소스 Vector DB로, 자체 호스팅 또는 Weaviate Cloud로 사용할 수 있습니다.

아키텍처 특징: - Schema 기반으로 Class(컬렉션)를 정의합니다. - 모듈 시스템으로 Embedding 생성, Reranking, 백업 등을 플러그인으로 추가합니다. - HNSW 인덱스를 기본으로 사용하며, 벡터 + 구조화 데이터를 함께 저장합니다. - Multi-tenancy를 네이티브로 지원합니다. - GraphQL과 REST API를 모두 제공합니다.

제약사항: - 자체 호스팅 시 클러스터 운영(Replication, Sharding) 경험이 필요합니다. - 메모리 사용량이 높을 수 있습니다. HNSW 인덱스가 메모리에 상주합니다. - 모듈 조합에 따라 호환성 문제가 발생할 수 있습니다.

2.3 pgvector: PostgreSQL 확장

pgvector는 PostgreSQL에 벡터 데이터 타입과 유사도 검색 기능을 추가하는 확장(Extension)입니다.

아키텍처 특징: - 기존 PostgreSQL 테이블에 vector 컬럼을 추가하는 방식입니다. - IVFFLAT과 HNSW 인덱스를 지원합니다. - SQL로 벡터 검색을 수행할 수 있습니다. ORDER BY embedding <=> query_vector LIMIT 10. - 관계형 데이터와 벡터를 같은 트랜잭션으로 관리할 수 있습니다. - 기존 PostgreSQL 백업, 복제, 모니터링 도구를 그대로 사용합니다.

제약사항: - 벡터 인덱스가 메모리에 올라가야 성능이 나옵니다. 대규모 데이터에서는 메모리 요구량이 큽니다. - 수백만 건 이상에서 전용 Vector DB 대비 검색 성능(지연 시간, 처리량)이 낮을 수 있습니다. - 분산 처리를 직접 구성해야 합니다 (Citus 등 별도 확장 필요). - 벡터 검색 전용 최적화(예: Product Quantization)가 제한적입니다.

2.4 OpenSearch: 검색 엔진 + 벡터 검색

OpenSearch는 Elasticsearch 포크로, k-NN 플러그인을 통해 벡터 검색을 지원합니다.

아키텍처 특징: - 기존 전문 검색(Full-text Search) 위에 벡터 검색을 추가한 구조입니다. - BM25 키워드 검색과 벡터 유사도 검색을 결합한 Hybrid Search를 네이티브로 지원합니다. - HNSW, IVF, FAISS 등 다양한 인덱스 알고리즘을 선택할 수 있습니다. - AWS OpenSearch Serverless를 사용하면 관리형으로 운영할 수 있습니다. - 기존 OpenSearch/Elasticsearch 기반 검색 시스템에 벡터 검색을 추가하기 쉽습니다.

제약사항: - 벡터 검색만을 위한 것이 아니므로, 동일 규모에서 전용 Vector DB보다 리소스 소비가 클 수 있습니다. - 클러스터 운영이 복잡합니다 (샤드 설계, JVM 힙 관리, 디스크/메모리 밸런싱). - 벡터 인덱스 빌드 시 CPU와 메모리를 많이 사용합니다. - Serverless 모드에서는 일부 기능 제한이 있을 수 있습니다.

3. 선택 기준 의사결정 플로우

Vector DB 선택 기준 의사결정 흐름
Vector DB 선택 기준 의사결정 흐름

3.1 데이터 규모 기준

규모 벡터 수 권장 옵션 이유
소규모 ~10만 건 pgvector 별도 인프라 없이 기존 PostgreSQL 활용
중규모 10만~1,000만 건 Pinecone, Weaviate, OpenSearch 전용 인덱스와 분산 처리 필요
대규모 1,000만 건 이상 Pinecone (Pod), Weaviate 클러스터, OpenSearch 샤딩과 복제 전략이 필요

3.2 팀 역량 기준

상황 권장 옵션 이유
DevOps/인프라 인력이 없는 소규모 팀 Pinecone Serverless 운영 부담 제로, API만 호출
PostgreSQL 운영 경험이 있는 팀 pgvector 기존 도구와 지식을 재활용
Kubernetes 운영 경험이 있는 팀 Weaviate (자체 호스팅) Helm Chart로 배포, 세밀한 제어 가능
검색 엔진 운영 경험이 있는 팀 OpenSearch 기존 클러스터에 벡터 검색 추가

3.3 검색 요구사항 기준

요구사항 권장 옵션 이유
순수 벡터 유사도 검색 Pinecone, Weaviate 벡터 검색에 최적화
키워드 + 벡터 Hybrid Search OpenSearch, Weaviate BM25 + ANN 결합 네이티브 지원
관계형 데이터와 벡터 통합 pgvector 같은 DB에서 JOIN, 트랜잭션 처리
Multi-tenancy (고객별 격리) Weaviate, Pinecone (Namespace) 네이티브 테넌트 분리
실시간 업데이트 + 즉시 검색 pgvector, Weaviate 인덱스 갱신 지연이 적음

4. 상세 비교

Vector DB 비교 요약표
Vector DB 비교 요약표

4.1 성능 비교

항목 Pinecone Weaviate pgvector OpenSearch
검색 지연(p99) ~50ms ~50ms ~100ms (소규모) ~100ms
처리량(QPS) 높음 (관리형 스케일) 중~높음 (클러스터 크기 의존) 중간 (단일 노드 한계) 중~높음
인덱스 빌드 시간 자동 관리 수분~수십분 수분~수시간 수분~수십분
Recall@10 높음 (ANN 최적화) 높음 (HNSW) 중~높음 (설정 의존) 높음 (알고리즘 선택 가능)

성능 수치는 벡터 차원, 데이터 규모, 인덱스 설정에 따라 크게 달라집니다. 위 수치는 100만 건, 1536차원(OpenAI ada-002) 기준의 일반적 범위입니다. 공개된 벤치마크에서 768차원 기준 Pinecone은 p50 8ms, p99 22ms, 4,200 QPS를 기록한 사례가 있으며, pgvector는 동일 조건에서 약 40% 높은 지연과 1,800 QPS 수준을 보였습니다. 실제 워크로드에서는 자체 벤치마크 테스트가 필요합니다.

4.2 비용 비교

항목 Pinecone Weaviate pgvector OpenSearch
초기 비용 없음 (SaaS) 인프라 구축 또는 Cloud 구독 기존 DB 활용 (추가 비용 적음) 클러스터 구축 또는 Serverless
월 운영비 (100만 벡터) $70~200 (Serverless) $100~500 (Cloud) / 인프라비 (자체) PostgreSQL 인스턴스 비용 $200~800 (인스턴스 크기 의존)
스케일링 비용 사용량 비례 자동 노드 추가 비용 인스턴스 업그레이드 노드 추가 비용
숨겨진 비용 고트래픽 시 예측 어려움 운영 인건비 성능 한계 시 마이그레이션 비용 JVM 튜닝, 샤드 리밸런싱 인건비

비용은 사용 패턴(읽기/쓰기 비율, 쿼리 빈도, 데이터 증가율)에 따라 크게 달라집니다. Pinecone Serverless 기준 읽기 $0.01/백만 벡터, 쓰기 $0.02/백만 벡터, 스토리지 $0.10/GB/월 수준이며, pgvector(RDS)는 동일 쿼리당 약 10분의 1 수준의 비용으로 운영할 수 있습니다. 다만 10M 벡터 + 100K 쿼리/월 규모에서는 Pinecone 약 $600/월 vs 자체 호스팅(Kubernetes) $1,300+ 수준으로, 운영 인건비까지 고려하면 관리형이 유리한 구간이 있습니다.

4.3 운영 복잡도 비교

항목 Pinecone Weaviate pgvector OpenSearch
배포 API 키 발급만 필요 Helm/Docker 또는 Cloud 콘솔 PostgreSQL에 확장 설치 클러스터 구성 또는 AWS 콘솔
모니터링 대시보드 제공 Prometheus 메트릭 연동 PostgreSQL 기본 모니터링 CloudWatch 또는 자체 모니터링
백업/복구 자동 (SaaS) Collection 백업 설정 필요 pg_dump / pg_basebackup 스냅샷 정책 설정
업그레이드 자동 Rolling Update (중단 주의) PostgreSQL 업그레이드와 동일 Rolling Restart
장애 대응 제공사 담당 자체 대응 필요 PostgreSQL HA 구성에 의존 자체 대응 또는 AWS 지원

4.4 기능 비교

기능 Pinecone Weaviate pgvector OpenSearch
Hybrid Search (키워드+벡터) Sparse Vector로 가능 BM25 + 벡터 네이티브 별도 전문 검색 확장 필요 BM25 + k-NN 네이티브
메타데이터 필터링 ✅ (SQL WHERE) ✅ (Query DSL)
Multi-tenancy Namespace 네이티브 지원 Schema 분리 Index 분리
실시간 인덱싱 ✅ (비동기) ✅ (동기) ✅ (Near Real-time)
내장 Embedding 생성 ❌ (외부 API 필요) ✅ (모듈) ✅ (Neural Search)
RBAC / 접근 제어 API 키 기반 API 키 + OIDC PostgreSQL RBAC OpenSearch Security

5. 실무 시나리오별 선택 가이드

시나리오 1: 스타트업 — MVP RAG 챗봇

상황: 5인 개발팀, 사내 문서 5,000건, PostgreSQL을 이미 사용 중, 빠르게 MVP를 출시해야 함.

선택: pgvector

이유: - 별도 인프라를 추가하지 않고 기존 PostgreSQL에 확장만 설치하면 됩니다. - 5,000건 수준에서 pgvector의 성능은 충분합니다. - 문서 메타데이터(작성일, 부서, 권한)를 같은 DB에서 관리할 수 있습니다. - 초기 비용이 거의 없고, 팀이 이미 SQL을 알고 있으므로 학습 곡선이 낮습니다.

주의: 문서가 10만 건 이상으로 성장하거나, 검색 지연 시간이 중요해지면 전용 Vector DB로 마이그레이션을 고려해야 합니다.

-- pgvector 기본 사용 예시
CREATE EXTENSION vector;

CREATE TABLE documents (
  id SERIAL PRIMARY KEY,
  title TEXT,
  content TEXT,
  department TEXT,
  embedding vector(1536)  -- OpenAI ada-002 차원
);

-- HNSW 인덱스 생성
CREATE INDEX ON documents USING hnsw (embedding vector_cosine_ops);

-- 유사도 검색 + 메타데이터 필터링
SELECT id, title, 1 - (embedding <=> $1) AS similarity
FROM documents
WHERE department = 'engineering'
ORDER BY embedding <=> $1
LIMIT 10;

시나리오 2: 중견 기업 — 고객 지원 시스템

상황: 고객 50만 명, FAQ + 제품 문서 + 티켓 이력 기반 검색, 고객이 자연어로 질문하면 관련 문서를 찾아 답변 생성, 키워드 정확 매칭도 중요.

선택: OpenSearch

이유: - 고객이 제품명이나 에러 코드를 정확히 입력하는 경우 키워드 검색이 필요합니다. - 자연어 질문에는 벡터 유사도 검색이 필요합니다. - OpenSearch의 Hybrid Search로 두 가지를 결합할 수 있습니다. - 기존에 로그 분석용 OpenSearch를 운영하고 있다면 클러스터를 재활용할 수 있습니다. - AWS OpenSearch Serverless를 사용하면 클러스터 운영 부담을 줄일 수 있습니다.

주의: OpenSearch 클러스터는 메모리와 디스크를 많이 사용합니다. 벡터 인덱스 추가 시 기존 워크로드에 영향이 없는지 리소스 계획이 필요합니다.

시나리오 3: SaaS 제품 — Multi-tenant RAG

상황: B2B SaaS, 고객사 100개 이상, 각 고객사의 문서를 격리하여 저장/검색해야 함, 고객사마다 문서 규모가 다름.

선택: Weaviate 또는 Pinecone

Weaviate를 선택하는 경우: - 자체 인프라에서 데이터를 관리해야 하는 요건이 있을 때. - 네이티브 Multi-tenancy로 테넌트별 격리와 독립적 스케일링이 가능합니다. - Kubernetes 운영 경험이 있는 팀이라면 Helm Chart로 배포하고 세밀하게 제어할 수 있습니다.

Pinecone을 선택하는 경우: - 운영 인력이 부족하고 빠르게 출시해야 할 때. - Namespace로 테넌트를 분리하고, 인프라 관리를 Pinecone에 위임합니다. - 다만 Namespace는 완전한 격리가 아니므로, 엄격한 보안 요건이 있다면 별도 인덱스가 필요할 수 있습니다.

시나리오 4: 대기업 — 규제 환경의 지식 관리 시스템

상황: 금융/의료 분야, 수백만 건 문서, 데이터 거주지(Residency) 요건, 감사 로그 필수, 기존 인프라는 AWS 기반.

선택: OpenSearch (AWS Managed) 또는 Weaviate (자체 호스팅)

이유: - 데이터가 특정 리전에서 벗어나면 안 되므로, SaaS의 데이터 위치를 확인해야 합니다. - AWS OpenSearch Service는 VPC 내에서 운행하므로 데이터 이동을 통제할 수 있습니다. - 감사 로그, 접근 제어, 암호화를 AWS 보안 서비스와 통합할 수 있습니다. - Weaviate를 자체 EKS에 배포하면 완전한 제어가 가능하지만 운영 부담이 증가합니다.

Pinecone을 선택하지 않는 이유: - 데이터가 Pinecone 인프라에 저장되므로, 엄격한 데이터 거주지 요건을 충족하기 어려울 수 있습니다. Pinecone은 AWS, GCP 리전을 제공하지만, 자체 VPC 내 배포는 불가능합니다.

Hybrid Search(키워드 + 벡터 결합)는 RAG 검색 품질을 크게 개선할 수 있습니다. 각 DB에서의 구현 방식이 다릅니다.

{
  "query": {
    "hybrid": {
      "queries": [
        {
          "match": {
            "content": "직원 연차 사용 규정"
          }
        },
        {
          "knn": {
            "embedding": {
              "vector": [0.12, -0.34, ...],
              "k": 10
            }
          }
        }
      ]
    }
  }
}

OpenSearch는 hybrid 쿼리로 BM25 점수와 벡터 유사도 점수를 정규화(Normalization)하여 결합합니다. 점수 결합 방식(arithmetic_mean, harmonic_mean, geometric_mean)을 선택할 수 있습니다.

{
  Get {
    Document(
      hybrid: {
        query: "직원 연차 사용 규정"
        alpha: 0.7
      }
    ) {
      title
      content
      _additional { score }
    }
  }
}

Weaviate는 alpha 파라미터로 벡터 검색(1.0)과 키워드 검색(0.0)의 가중치를 조절합니다. alpha: 0.7이면 벡터 검색 70%, 키워드 검색 30%입니다.

-- 벡터 유사도와 전문 검색을 결합
SELECT id, title,
  (1 - (embedding <=> $1)) * 0.7 +
  ts_rank(to_tsvector('korean', content), plainto_tsquery('korean', $2)) * 0.3
  AS combined_score
FROM documents
WHERE to_tsvector('korean', content) @@ plainto_tsquery('korean', $2)
   OR (embedding <=> $1) < 0.5
ORDER BY combined_score DESC
LIMIT 10;

pgvector에서 Hybrid Search를 구현하려면 벡터 유사도와 tsvector 전문 검색을 수동으로 결합해야 합니다. 점수 정규화와 가중치 조절을 직접 구현해야 하므로 코드 복잡도가 높아집니다.

Pinecone은 Sparse-Dense Vector를 사용하여 Hybrid Search를 구현합니다. Sparse Vector(BM25 등)와 Dense Vector(Embedding)를 함께 인덱싱합니다.

# Pinecone Hybrid Search 예시
index.query(
    vector=[0.12, -0.34, ...],  # Dense vector
    sparse_vector={
        "indices": [102, 401, 780],
        "values": [0.8, 0.6, 0.4]
    },
    top_k=10,
    alpha=0.7  # Dense vector 가중치
)

다만 Sparse Vector 생성은 별도로 처리해야 합니다 (예: SPLADE 모델 또는 BM25 직접 계산).

7. 마이그레이션 고려사항

Vector DB를 처음 선택할 때 "나중에 바꿀 수 있는가"도 중요한 판단 기준입니다.

7.1 마이그레이션 난이도

전환 경로 난이도 주요 작업
pgvector → Pinecone/Weaviate 중간 벡터 + 메타데이터 추출 → API로 업로드
Pinecone → Weaviate 중간 Fetch API로 벡터 추출 → Weaviate 스키마 설계 → 임포트
OpenSearch → Pinecone 높음 벡터 추출 + BM25 인덱스 재구성 (Hybrid Search 유지 시)
단일 DB → 다른 단일 DB 중간 벡터 재인덱싱 비용 + 클라이언트 코드 변경

7.2 마이그레이션 비용을 줄이는 설계

  • 추상화 계층 도입: Vector DB와 애플리케이션 사이에 인터페이스를 두면 교체 시 영향을 줄일 수 있습니다. LangChain, LlamaIndex 같은 프레임워크가 이 역할을 합니다.
  • Embedding을 별도 저장: 원본 텍스트와 Embedding 벡터를 Vector DB 외에도 Object Storage(S3 등)에 백업하면 재인덱싱 시 Embedding API 호출 비용을 절약합니다.
  • 메타데이터 스키마 문서화: 각 Vector DB의 메타데이터 필터링 문법이 다르므로, 필터 로직을 문서화해두면 전환 시 누락을 줄일 수 있습니다.

8. 보안 고려사항

Security Note
Vector DB에 저장되는 Embedding 자체는 원본 텍스트를 직접 복원하기 어렵지만, 메타데이터와 결합하면 민감 정보가 노출될 수 있습니다. 접근 제어와 네트워크 격리를 설계 단계에서 고려해야 합니다.
보안 항목 Pinecone Weaviate pgvector OpenSearch
전송 암호화 TLS (기본) TLS (설정 필요) PostgreSQL SSL TLS (기본)
저장 암호화 기본 제공 자체 호스팅 시 디스크 암호화 필요 PostgreSQL TDE 또는 디스크 암호화 노드 암호화 옵션
접근 제어 API 키 API 키, OIDC PostgreSQL RBAC OpenSearch Security (RBAC)
네트워크 격리 퍼블릭 엔드포인트 (Private Link 가능) VPC 내 배포 가능 VPC 내 배포 VPC 내 배포
감사 로그 제한적 자체 구현 필요 PostgreSQL 감사 로그 확장 감사 로그 지원
데이터 거주지 리전 선택 가능 자체 호스팅 시 완전 제어 자체 호스팅 시 완전 제어 리전 선택 가능

9. 자주 하는 실수

  1. "벡터 수가 적으니까 아무거나 써도 된다"는 판단: 초기 데이터가 적더라도 성장 예측, 검색 요구사항(Hybrid Search 필요 여부), 운영 환경을 고려해야 합니다. 나중에 마이그레이션하는 비용이 초기 선택 비용보다 클 수 있습니다.
  2. Recall만 보고 Latency를 무시하는 것: Recall@10이 95%여도 p99 지연이 500ms면 사용자 경험이 나빠집니다. RAG 파이프라인 전체 지연(검색 + LLM 호출)에서 검색이 차지하는 비중을 확인해야 합니다.
  3. Embedding 모델 변경 시 재인덱싱 비용을 과소평가하는 것: Embedding 모델을 바꾸면 모든 벡터를 다시 생성해야 합니다. 100만 건 × OpenAI API 호출 비용을 미리 계산해야 합니다.
  4. 관리형 서비스의 가격을 고정비로 착각하는 것: Pinecone Serverless나 OpenSearch Serverless는 사용량에 따라 비용이 변동합니다. 트래픽 급증 시 예상치 못한 비용이 발생할 수 있으므로, 예산 알림을 설정해야 합니다.
  5. 보안 요건을 나중에 고려하는 것: 데이터 거주지, 접근 제어, 감사 로그 요건은 초기에 확인해야 합니다. SaaS를 도입한 후 "데이터가 해외에 저장되면 안 된다"는 요건이 나오면 전면 재설계가 필요합니다.

10. 정리

상황 권장 선택 핵심 이유
빠른 MVP, 운영 인력 부족 Pinecone Serverless 인프라 관리 제로
기존 PostgreSQL 활용, 소규모 데이터 pgvector 추가 인프라 없음, SQL 활용
키워드 + 벡터 Hybrid Search 필수 OpenSearch BM25 + k-NN 네이티브 결합
Multi-tenant SaaS, 자체 호스팅 Weaviate 네이티브 멀티테넌시, 유연한 배포
규제 환경, 데이터 거주지 요건 OpenSearch (AWS) / Weaviate (자체 호스팅) VPC 내 완전 제어
대규모 + 관리형 Pinecone (Pod) 스케일링 자동화

선택의 핵심은 "현재 팀이 운영할 수 있는가"와 "6개월~1년 후 요구사항에도 대응할 수 있는가"의 균형입니다. 초기에는 pgvector로 시작하고, 데이터 규모와 검색 요구사항이 복잡해지면 전용 Vector DB로 전환하는 것도 실용적인 전략입니다.

관련 글

참고 문서

반응형