
Lantern
Lantern Systems, Inc. · 코딩
Lantern은 Postgres에 HNSW 벡터 검색과 임베딩 생성을 더하는 오픈소스 확장 기능이다. 관리형 클라우드까지 갖춰 AI 앱의 기반으로 쓸 만하다.

Lantern 소개
About
Lantern이란
Lantern은 PostgreSQL 안에서 확장 기능으로 동작한다. 벡터는 이미 쓰던 테이블 안에 그대로 들어간다. 벡터 컬럼을 만들고 lantern_hnsw 인덱스를 걸면, 이후에는 평범한 SQL로 최근접 이웃을 조회한다. 별도 저장소도, 동기화 작업도, 전용 쿼리 언어도 필요 없다.
노리는 쪽은 Postgres를 벗어나지 않고 시맨틱 검색, 추천, AI 어시스턴트용 검색 증강을 만들려는 팀이다. Postgres 11부터 16까지 지원하고 pgvector의 vector 타입을 그대로 쓴다. pgvector로 만든 테이블이라면 타입이 이미 맞으니 이전이 짧다.
한계도 같이 봐야 한다. 개발팀 규모가 작고, 오픈소스 최신 버전은 2024년 11월의 v0.5.0이며, 무료 클라우드 등급은 0.25 vCPU에 0.5 GB RAM뿐이다. 프로토타입과 중간 규모 카탈로그에는 잘 맞고, 큰 지원 조직이 필요한 팀에는 덜 맞는다.
시작하는 방법
- Lantern Cloud에서 무료 프로젝트를 만들거나, Docker, Homebrew, 미리 빌드된 바이너리 가운데 하나로 직접 쓰는 Postgres에 확장 기능을 설치한다.
- 쓸 데이터베이스에서
CREATE EXTENSION lantern을 실행한다. 한 인스턴스라도 데이터베이스마다 따로 만들어야 한다. - 테이블에 벡터 컬럼을 추가하고 실수 배열 형태로 행을 넣는다.
CREATE INDEX ... USING lantern_hnsw로 인덱스를 만들고 코사인이나 L2 제곱 같은 연산자 클래스를 고른다.- 거리 연산자로 조회하거나, 자동 임베딩 생성을 켜서 텍스트 컬럼에서 벡터를 채우게 한다.
제품 정보
Lantern의 요금, 지원 플랫폼, 성능을 한눈에 확인해 보세요.
추천 대상
이 도구가 가장 잘 맞는 사용자, 작업, 상황입니다.
사용자
- 이미 Postgres를 돌리는 백엔드 개발자. 벡터가 익숙한 데이터베이스에 남고 새로 운영할 서비스가 없다. SQL을 다룰 줄 알아야 한다.
- 챗봇 검색을 붙이는 AI 엔지니어. 임베딩을 업무 테이블 옆에 두니 외부 벡터 저장소와 맞추는 단계가 사라진다.
- 데이터베이스 관리자가 없는 작은 팀. 백업, 특정 시점 복구, 업데이트를 클라우드가 맡는다. 무료 등급은 0.25 vCPU까지다.
작업
- 상품 카탈로그, 고객 지원 문서, 사내 위키의 시맨틱 검색. 글자 일치가 아니라 의미로 결과를 정렬해야 하는 경우에 맞는다.
- CLIP 임베딩으로 하는 이미지 유사도 검색. Lantern은 텍스트 모델과 나란히 이미지 모델도 넣어 뒀다.
- 사용자 임베딩과의 거리로 항목을 정렬하는 추천. 업무 테이블을 조인하는 같은 쿼리 안에서 계산한다.
- 대량 레코드의 중복 제거와 근접 중복 탐지. 코사인 인덱스와 거리 임계값으로 걸러 낸다.
활용 상황
- 기존 Rails, Django, Node 앱에 검색을 붙이면서 데이터 저장소를 늘리지 않으려는 경우.
- pgvector나 Pinecone에서 옮겨 관계형 데이터와 벡터를 한 데이터베이스에 모으려는 경우.
- RAG 파이프라인을 무료 등급에서 먼저 실험하고 유료 인스턴스로 넘어갈지 판단하는 경우.
주요 기능
Postgres 안에 두는 HNSW 인덱스
Lantern은 벡터 컬럼용으로 lantern_hnsw 인덱스 타입을 추가하고 ORDER BY ... LIMIT 쿼리를 빠르게 만든다. 내부에는 군더더기 없는 HNSW 구현인 usearch를 쓴다. L2 제곱, 코사인, 해밍 거리를 지원하며, 어떤 연산자 클래스를 쓸지는 인덱스를 만들 때 정한다.
SQL로 하는 임베딩 생성
데이터베이스를 나가지 않고 벡터를 만든다. Lantern에는 임베딩 모델을 호출해 결과를 컬럼에 기록하는 보조 함수가 있어서, Python이나 Node 서비스가 텍스트를 쪼개고 API를 부르고 재시도를 처리할 일이 없다.
임베딩을 자동으로 채우는 컬럼
관리형 컬럼이 벡터를 최신으로 유지한다. 텍스트 컬럼과 모델을 지정하면 새로 들어오거나 바뀐 행이 비동기 작업으로 백그라운드에서 처리된다. 콘텐츠 테이블과 검색 인덱스 사이의 연결 코드가 필요 없다.
SQL에서 LLM 호출
0.5.0 버전이 llm_completion과 add_completion_job을 넣었다. 쿼리 안에서나 백그라운드 작업으로 LLM에 프롬프트를 보낼 수 있다. 범위는 좁고 분류와 짧은 요약에 쓸 만하며, 애플리케이션 계층을 대신하지는 않는다.
서버리스 인덱싱과 병렬 구축
벡터 구성에서 느린 쪽은 인덱스 생성이다. Lantern은 인덱스 그래프를 데이터베이스 서버 밖이나 다른 머신에서 만들 수 있어서, 큰 재구축 중에도 일반 트래픽이 멈추지 않는다. 클라우드에서는 서버리스 인덱싱으로 GB당 0.50달러부터 과금한다.
인덱스 자동 튜닝과 양자화
M, ef, ef_construction을 손으로 고르려면 실험이 필요하다. Lantern에는 데이터에 맞춰 값을 제안하는 자동 튜닝 도구가 있고, 메모리가 빠듯할 때 인덱스를 줄이는 곱 양자화도 제공한다.
장단점
장점
- 벡터가 Postgres에 있어서 조인, 필터, 트랜잭션이 나머지 스키마와 똑같이 동작한다.
- pgvector의 데이터 타입을 받아들이므로 이미 쓰던 팀은 이전이 짧다.
- 임베딩 생성과 관리형 컬럼 덕에 수집 전용 서비스를 따로 두지 않아도 된다.
- 클라우드 무료 등급은 멈추지 않는다. 데모 프로젝트를 방치해도 데이터베이스가 남는다.
- 인덱스를 본서버 밖에서 만들 수 있어 재구축 중에도 운영 환경이 응답한다.
단점
- 오픈소스 릴리스 간격이 길다. v0.5.0은 2024년 11월, 저장소 마지막 push는 2024년 12월이라 수정은 직접 포크로 감당해야 한다.
- 문서가 SQL과 인덱스 튜닝을 아는 사람을 전제로 쓰였다. 백엔드 엔지니어가 없는 팀은 첫 인덱스에서 막힌다.
- 무료 인스턴스는 0.25 vCPU에 0.5 GB RAM이라 데모 이상은 어렵다.
- 임베딩 비용이 데이터베이스 청구서에 더해진다. Lantern의 토큰 단가를 피하려면 OpenAI나 Cohere 키를 직접 넣는 방법뿐이다.
자주 묻는 질문
두 가지 의미에서 무료다. 확장 기능은 AGPL-3.0 오픈소스라 직접 설치하면 비용이 없고, Lantern Cloud에도 0.25 vCPU, 0.5 GB RAM에 중지 없는 무료 등급이 있다. 유료 인스턴스는 월 44달러에서 시작해 16 vCPU와 60 GB RAM 기준 월 704달러까지 올라간다.
관련 콘텐츠
Lantern와 관련된 도구, 스킬, 아티클을 살펴보세요.
Lantern 대안
Base Code
Base44 (Wix) · 코딩 · 생산성Base Code는 Base44가 만든 공유 클라우드 개발 환경이다. 팀은 기존 GitHub 저장소에 대한 변경을 채팅으로 설명하고, 미리보기로 확인한 뒤 풀 리퀘스트로 돌려보낸다.
Google EmbeddingGemma 2
Google DeepMind · 글쓰기 · 이미지 · 코딩Google EmbeddingGemma 2는 7억 4000만 파라미터의 오픈 모델로, 텍스트와 코드, 이미지, 오디오, 영상 프레임을 하나의 768차원 공간에 벡터로 바꿔 스마트폰과 노트북에서 실행한다.
GitGlow
GitGlow · 코딩 · 생산성GitGlow는 내 코드와 AI 에이전트의 변경을 한 리뷰에 모으는 데스크톱 Git 클라이언트다. 배포 전에 내 기계에서 무엇이 나가는지 확인할 수 있다.
