본문으로 건너뛰기

© 2026 Molayo

GitHub릴리즈2026. 06. 30. 14:01

Weaviate: 오픈소스 클라우드 네이티브 벡터 데이터베이스

요약

Weaviate는 객체와 벡터를 동시에 저장하는 오픈소스 클라우드 네이티브 벡터 데이터베이스입니다. RAG, 시맨틱 검색, 하이브리드 검색 기능을 단일 인터페이스로 제공하여 AI 애플리케이션 구축을 지원합니다.

핵심 포인트

  • 벡터 유사성 검색과 키워드 필터링을 결합한 하이브리드 검색 지원
  • OpenAI, Cohere 등 외부 모델을 통한 자동 벡터화 기능 제공
  • RAG 및 리랭킹 기능을 내장하여 검색 증강 생성 최적화
  • Docker 및 다양한 클라이언트 라이브러리를 통한 손쉬운 배포와 사용

Weaviate는 객체와 벡터를 모두 저장하는 오픈소스, 클라우드 네이티브 벡터 데이터베이스로, 대규모의 시맨틱 검색을 가능하게 합니다. 이는 벡터 유사성 검색과 키워드 필터링, 검색 증강 생성(RAG), 그리고 리랭킹(reranking) 기능을 단일 쿼리 인터페이스에 결합합니다. 일반적인 사용 사례로는 RAG 시스템, 시맨틱 및 이미지 검색, 추천 엔진, 챗봇, 콘텐츠 분류 등이 있습니다.

Weaviate는 벡터를 저장하는 두 가지 접근 방식을 지원합니다: 통합 모델(OpenAI, Cohere, HuggingFace 등)을 사용하여 가져오기 시 자동 벡터화하거나, 미리 계산된 벡터 임베딩을 직접 가져오는 방식입니다. 프로덕션 배포 환경에서는 내장된 멀티테넌시(multi-tenancy), 복제(replication), RBAC 권한 부여 및 기타 많은 기능들로부터 이점을 얻을 수 있습니다.

빠르게 시작하려면 다음 튜토리얼 중 하나를 살펴보세요:

Weaviate는 여러 설치 및 배포 옵션을 제공합니다:

AWS나 GCP와 같은 더 많은 배포 옵션은 설치 문서를 참조하세요.

Docker를 사용하여 Weaviate와 로컬 벡터 임베딩 모델을 쉽게 시작할 수 있습니다.
docker-compose.yml 파일:

services:
weaviate:
image: cr.weaviate.io/semitechnologies/weaviate:1.36.0
...

다음 명령어로 Weaviate와 임베딩 서비스를 시작합니다:
docker compose up -d
Python 클라이언트를 설치하세요 (또는 다른 클라이언트 라이브러리 사용):
pip install -U weaviate-client
다음 Python 예제는 데이터로 Weaviate 데이터베이스를 채우고, 벡터 임베딩을 생성하며, 시맨틱 검색을 수행하는 것이 얼마나 쉬운지 보여줍니다:

import weaviate
from weaviate.classes.config import Configure, DataType, Property
# Weaviate에 연결
...

이 예제는 Model2Vec 벡터화기를 사용하지만, 다른 임베딩 모델 제공업체를 선택하거나 자체 생성한 벡터를 가져올 수 있습니다.

Weaviate는 여러 프로그래밍 언어용 클라이언트 라이브러리를 제공합니다:

또한 커뮤니티에서 유지 관리하는 추가 라이브러리도 있습니다.

Weaviate는 데이터베이스 서버와 통신하기 위해 REST API, gRPC API, 그리고 GraphQL API를 노출합니다.

이러한 기능들을 통해 AI 기반 애플리케이션을 구축할 수 있습니다.

  • ⚡ 빠른 검색 성능 (Fast Search Performance): 수십억 개의 벡터에 대해 복잡한 의미론적 검색 (Semantic Search)을 밀리초 단위로 수행합니다. Weaviate의 아키텍처는 속도와 신뢰성을 위해 Go 언어로 구축되어, 높은 부하 상황에서도 AI 애플리케이션이 매우 신속하게 응답하도록 보장합니다. 자세한 정보는 당사의 ANN 벤치마크를 참조하세요. -
    🔌 유연한 벡터화 (Flexible Vectorization): OpenAI, Cohere, HuggingFace, Google 등의 통합 벡터화 도구 (Vectorizers)를 사용하여 데이터 임포트 시점에 원활하게 벡터화할 수 있습니다. 또는 자체 벡터 임베딩 (Vector Embeddings)을 임포트할 수도 있습니다. -
    🔍 고급 하이브리드 및 이미지 검색 (Advanced Hybrid & Image Search): 의미론적 검색의 강력함과 전통적인 키워드 (BM25) 검색, 이미지 검색 및 고급 필터링을 결합하여 단 한 번의 API 호출로 최상의 결과를 얻으세요. -
    🤖 통합 RAG 및 리랭킹 (Integrated RAG & Reranking): 내장된 생성형 검색 (RAG) 및 리랭킹 (Reranking) 기능을 통해 단순한 검색 그 이상을 구현하세요. 추가적인 도구 없이 데이터베이스에서 직접 정교한 질의응답 (Q&A) 시스템, 챗봇, 요약기를 구동할 수 있습니다. -
    📈 프로덕션 준비 완료 및 확장 가능성 (Production-Ready & Scalable): Weaviate는 미션 크리티컬 (Mission-critical) 애플리케이션을 위해 구축되었습니다. 수평적 확장 (Horizontal Scaling), 멀티 테넌시 (Multi-tenancy), 복제 (Replication), 그리고 세밀한 역할 기반 액세스 제어 (RBAC)에 대한 네이티브 지원을 통해 신속한 프로토타이핑에서 대규모 프로덕션 단계로 전환할 수 있습니다. -
    💰 비용 효율적인 운영 (Cost-Efficient Operations): 내장된 벡터 압축을 통해 리소스 소비와 운영 비용을 획기적으로 낮추세요. 벡터 양자화 (Vector Quantization) 및 멀티 벡터 인코딩 (Multi-vector Encoding)은 검색 성능에 미치는 영향을 최소화하면서 메모리 사용량을 줄여줍니다. -
    ⏱️ 객체 TTL (Object TTL): 전체 RBAC 및 멀티 테넌시 지원과 함께, 컬렉션별로 설정 가능한 TTL (Time-to-live) 설정을 통해 오래된 데이터를 자동으로 만료시키고 제거합니다.

모든 기능에 대한 전체 목록을 확인하려면 공식 Weaviate 문서를 방문하세요.

Weaviate Agent Skills는 AI 코딩 에이전트(Claude Code, Cursor, GitHub Copilot 등)가 Weaviate를 더욱 정확하고 효율적으로 사용할 수 있도록 지원하는 기술(Skills) 모음입니다. 이 기술들은 검색(searching), 쿼리(querying), 컬렉션 관리(collection management), 데이터 임포트(data import), 그리고 전체 애플리케이션 블루프린트(RAG, 에이전틱 RAG (agentic RAG), 챗봇 등)를 다룹니다.

설치 방법:

npx skills add weaviate/agent-skills

이 데모들은 Weaviate의 일부 기능을 강조하는 작동 가능한 애플리케이션입니다. 소스 코드는 GitHub에서 확인할 수 있습니다.

  • Elysia (GitHub): Elysia는 의사 결정 트리(decision tree) 기반의 에이전틱 시스템으로, 어떤 도구를 사용할지, 어떤 결과가 얻어졌는지, 프로세스를 계속 진행해야 하는지 또는 목표가 완료되었는지를 지능적으로 결정합니다.
  • Verba (GitHub): 검색 증강 생성 (RAG (Retrieval-Augmented Generation))을 위해 엔드 투 엔드(end-to-end)의 간소화되고 사용자 친화적인 인터페이스를 즉시 제공하도록 설계된 커뮤니티 주도 오픈소스 애플리케이션입니다.
  • Healthsearch (GitHub): 사용자가 작성한 리뷰와 쿼리를 활용하여 특정 건강 효과를 기반으로 보충제 제품을 검색하는 잠재력을 보여주기 위한 오픈소스 프로젝트입니다.
  • Awesome-Moviate (GitHub): 키워드 기반 (BM25), 시맨틱(semantic), 그리고 하이브리드(hybrid) 검색을 지원하는 영화 검색 및 추천 엔진입니다.

또한, Weaviate의 기능과 통합(integrations) 사용법을 다루는 광범위한 Jupyter NotebooksTypeScript 코드 스니펫 (code snippets) 저장소를 유지 관리하고 있습니다:

  • 벡터 데이터베이스 (Vector Database)란 무엇인가
  • 벡터 검색 (Vector Search)이란 무엇인가
  • 하이브리드 검색 (Hybrid Search)이란 무엇인가
  • 임베딩 모델 (Embedding Model)을 선택하는 방법
  • RAG란 무엇인가
  • RAG 평가 (RAG Evaluation)
  • 고급 RAG 기술 (Advanced RAG Techniques)
  • 멀티모달 RAG (Multimodal RAG)란 무엇인가
  • 에이전틱 RAG (Agentic RAG)란 무엇인가
  • 그래프 RAG (Graph RAG)란 무엇인가
  • 후기 상호작용 모델 (Late Interaction Models) 개요

Weaviate는 다음과 같은 많은 외부 서비스와 통합됩니다:

카테고리설명통합 서비스
클라우드 하이퍼스케일러 (Cloud Hyperscalers)대규모 컴퓨팅 및 스토리지AWS, Google
컴퓨팅 인프라 (Compute Infrastructure)컨테이너화된 애플리케이션 실행 및 확장Modal, Replicate, Replicated
데이터 플랫폼 (Data Platforms)데이터 수집 (Data ingestion) 및 웹 스크래핑 (Web scraping)Airbyte, Aryn, Boomi, Box, Confluent, Astronomer, Context Data, Databricks, Firecrawl, IBM, Unstructured
LLM 및 에이전트 프레임워크 (LLM and Agent Frameworks)에이전트 및 생성형 AI (Generative AI) 애플리케이션 구축Agno, Composio, CrewAI, DSPy, Dynamiq, Haystack, LangChain, LlamaIndex, N8n, Semantic Kernel
운영 (Operations)생성형 AI 워크플로우 모니터링 및 분석을 위한 도구AIMon, Arize, Cleanlab, Comet, DeepEval, Langtrace, LangWatch, Nomic, Patronus AI, Ragas, TruLens, Weights & Biases

우리는 기여를 환영하며 감사하게 생각합니다! 개발 환경 설정, 코드 스타일 가이드라인, 테스트 요구 사항 및 풀 리퀘스트 (Pull Request) 프로세스에 대해서는 당사의 기여자 가이드 (Contributor guide)를 참조해 주세요.

아이디어를 논의하고 도움을 받으려면 당사의 커뮤니티 포럼 (Community forum)에 참여하세요.

BSD 3-Clause License. 자세한 내용은 LICENSE를 참조하세요.

AI 자동 생성 콘텐츠

본 콘텐츠는 GitHub Trending Go (weekly)의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.

원문 바로가기
0

댓글

0