StarTrail-org/LEANN
- 출처
- GitHub
- 처음 오른 날
- 분야
- RAG와 검색
- GitHub 별 수
- 13,321
- 주 언어
- Python
외부 오픈소스 저장소를 소개하는 글입니다. HDATF 제품이 아닙니다.

무엇을 하나
LEANN은 모든 텍스트 조각의 임베딩을 그대로 저장하지 않고 로컬 문서와 기록을 검색하려는 사용자를 위한 벡터 색인 및 검색 도구입니다. 관련 원문을 먼저 찾은 뒤 언어 모델이 답하도록 하는 검색 기반 생성 방식을 지원합니다. 입력은 PDF, 텍스트, Markdown 같은 문서나 제공된 자료별 예제로 처리하는 기록이며 출력은 관련 구절과 선택적으로 생성한 답변입니다. 문서 예제는 LlamaIndex로 파일을 재귀적으로 읽고 내용을 조각으로 나누어 색인에 넣습니다. 저장 공간을 줄이는 방식은 가지치기한 그래프를 보관하고 검색에 필요할 때 의미를 수치로 나타낸 임베딩을 선택적으로 다시 계산하며 HNSW와 DiskANN을 검색 기반으로 선택할 수 있습니다. Python 환경과 임베딩 모델 또는 접속 지점이 필요하고 답변 생성에는 생성 모델이 추가되며 네이티브 빌드와 선택적 스캔 PDF 처리는 운영체제 및 문자 인식 의존성을 더합니다. 모델은 로컬이나 클라우드 API로 실행할 수 있으므로 개인정보 보호는 색인의 위치만이 아니라 임베딩과 답변 생성 설정 모두에 달립니다. 임베딩 재계산은 저장 공간과 계산량 및 검색 지연 사이의 선택이며 추출 실패와 모델 선택은 실제 검색 대상과 결과에 영향을 줄 수 있습니다. README의 저장 공간 절감은 특정 비교 조건에서 저자가 보고한 결과이며 모든 자료나 우리 데이터의 성능을 보장하지 않습니다.
라이선스
MIT 허용 범위가 넓습니다. 저작권 표시를 유지하면 상업적 이용과 수정이 가능합니다.
같은 분야 저장소
- patchy631/ai-engineering-hub
AI Engineering Hub는 LLM과 문서 검색 및 에이전트를 공부하는 개발자를 위한 실습 자료와 예제 코드 모음입니다. 하나의 완성된 서비스나 자체 모델이 아니라 난이도와 주제별 프로젝트를 모은 저장소입니다. 문서 질의응답, 이미지 문자 추출, 대화형 화면, MCP 연결 등에서 필요한 구성 요소를 예제로 살펴볼 수 있습니다. 직접 확인한 Simple RAG 예제는 폴더의 문서를 읽어 검색용 색인을 만들고 질문에 맞는 문서 조각을 찾아 답변을 생성합니다. 노트북은 LlamaIndex, Ollama의 llama3.2, HuggingFace 임베딩을 연결하며 검색한 두 조각을 바탕으로 답변을 스트리밍합니다. 이 예제는 Python 3.10 이상과 Ollama 및 노트북 환경을 준비하고 문서를 별도로 넣어야 합니다. 다른 프로젝트는 사용하는 모델과 외부 서비스 및 인증 정보가 다르므로 각 설명과 설정을 확인해야 합니다. 저장소를 내려받는 것만으로 모든 기능이 활성화되지는 않으며 운영 적합성이나 검색 품질을 자체 검증한 자료는 아닙니다. - metadist/synaplan-nextcloud
Synaplan Integration은 Nextcloud 파일 화면에서 문서 요약, 번역과 지식 검색 대화를 제공하는 연결 앱입니다. 이미 Nextcloud에 문서를 보관하는 조직과 이를 운영하는 호스팅 사업자가 주 대상입니다. 사용자가 선택한 파일이나 질문을 연결된 Synaplan 서버에 보내고, 요약문과 번역문 또는 실시간으로 이어지는 답변을 보여줍니다. 파일을 지식 모음에 올리면 관련 문서를 찾아 답변에 활용하는 RAG 방식의 검색과 대화에 사용할 수 있습니다. PDF와 Office 같은 바이너리 문서의 텍스트 추출은 이 앱 자체가 아니라 Synaplan의 Tika 기능이 처리합니다. 시작에는 Nextcloud 33부터 35까지의 지원 버전, PHP 8.2 이상, 실행 중인 Synaplan과 유효한 API 키가 필요합니다. 운영자는 하나의 계정을 공유하거나 사용자별 계정을 만들거나 기존 Synaplan 계정을 연결하는 방식을 선택할 수 있으며, 사용자별 방식은 각자의 키를 서버에 암호화해 보관합니다. 개인 기억과 이미지 및 영상 생성은 연결된 서버의 해당 서비스와 모델 설정에 따라 사용할 수 있습니다. 변경 파일은 대화창에서 다시 갱신해야 하며, 폴더를 감시해 자동 처리하는 기능은 문서와 소스에서 아직 미구현으로 구분합니다. - NVIDIA/auto-ontology
Auto Ontology는 에이전트가 데이터를 조회하기 전에 업무 용어의 뜻을 확인하도록 기업 데이터베이스 위에 공통 의미 체계를 만듭니다. 개발자는 원본 데이터베이스를 연결하고 테이블과 열의 메타데이터를 가져옵니다. 업무 용어와 관계, SQL 표현식을 묶은 의미 목록을 Postgres에 저장하며 벡터 검색도 사용합니다. 사용자가 자연어로 질문하면 연결된 데이터베이스에 실행할 SQL을 만들고 조회합니다. 결과에는 답변과 실행한 SQL, 조회한 행을 포함할 수 있습니다. MCP 연결은 용어 검색, 답변 가능 여부 확인, 질문 처리를 제한된 도구 목록으로 제공합니다. 배포 구성은 웹 중계 계층과 Python 서비스, Postgres, 설정한 모델 호출 주소로 나뉩니다. 시작하려면 데이터베이스 접근 권한과 인증 설정, 모델 호출 자격 정보 또는 그에 맞는 호출 환경이 필요합니다. 생성한 SQL과 답변은 별도 검증이 필요하며 Vault를 완전히 설정하지 않으면 화면에서 추가한 데이터베이스 자격 정보가 Postgres에 암호화 없이 저장됩니다. - ARahim3/DigUp
DigUp은 macOS 14 이상의 Apple Silicon Mac에서 메뉴 막대에 머무는 앱으로, 사용자가 고른 폴더의 파일을 내용으로 찾습니다. 사진, 스크린샷, PDF, 문서, 녹음, 동영상을 자기 말로 설명해서 찾으려는 사람이 대상이며, MIT 라이선스의 무료 오픈소스입니다. 앱은 Google DeepMind의 멀티모달 embedding 모델(글, 이미지, 소리를 서로 비교할 수 있는 숫자 벡터로 바꾸는 모델)인 EmbeddingGemma 2를 기기 안에서 실행합니다. 이미지는 보이는 내용으로, 스크린샷은 Apple 문자 인식으로 글자까지, PDF는 스캔본을 포함해 쪽 단위로 읽고, 음성은 겹쳐 가는 30초 구간으로, 동영상은 몇 초마다 한 장면과 소리를 함께 읽습니다. 검색 결과는 앱이 허용하는 범위에서 맞는 위치로 열려, 녹음과 동영상은 QuickTime Player나 IINA에서 해당 순간부터 재생되고, PDF는 맞는 쪽의 낱말이 Preview 검색창에 들어간 채 열립니다. 내부에서는 llama.cpp가 8비트 EmbeddingGemma 2를 Mac GPU에서 실행하고, 사진, 쪽, 문단, 소리 구간마다 만든 768차원 벡터는 FTS5 키워드 색인과 함께 SQLite 파일 하나에 저장됩니다. 검색은 질문 벡터를 저장된 모든 벡터와 비교하고 낱말이 그대로 맞는 결과에 가산점을 주므로, 파일 이름, 문서 본문, 스크린샷 속 송장 번호나 오류 코드도 쓰인 그대로 찾습니다. 설치는 GitHub Releases의 DMG나 Homebrew로 하고 계정은 필요 없으며, 처음 실행할 때 고정된 리비전의 모델 파일 865MB를 Hugging Face에서 내려받아 크기와 SHA-256을 확인합니다. README에 따르면 색인한 내용은 Mac 안에만 남고, 네트워크는 이 다운로드와 끌 수 있는 하루 한 번의 업데이트 확인에만 쓰이며, 앱은 파일을 읽기만 하고 키 파일, 인증서, .ssh 같은 숨은 폴더는 건너뜁니다. 폴더를 고른 뒤 첫 색인은 파일 수백 개에 몇 분, 큰 다운로드 폴더에 한 시간 정도 걸리며, 소스에서 빌드하면 다른 프로그램에 검색 결과를 JSON lines로 돌려주는 digup 명령줄 도구도 함께 만들어집니다. 공개 배포판은 2026년 10월의 0.6.0과 0.6.1로 macOS DMG뿐이고, Windows와 Linux 빌드는 공개 배포 없이 코드에만 있습니다. 프로젝트 평가는 영어, 벵골어, 아랍어만 다루며, 낱말 일치 검색은 중국어, 일본어, 태국어처럼 띄어쓰기 없는 언어를 낱말로 나누지 못합니다. - xerj-org/xerj
XERJ는 AI 코딩 에이전트 등을 위해 로컬 폴더를 색인하는 Rust 검색 엔진으로, 정적 실행 파일 하나로 배포되며 Elasticsearch REST API를 구현해 기존 Elasticsearch 클라이언트와 Kibana가 연결됩니다. README가 밝히는 주된 용도는 reference coding으로, 에이전트가 작업과 가까운 오픈소스 프로젝트를 내려받아 색인하고 grep으로 찾은 파일 전체 대신 그 풀이 방식을 파일과 줄 위치가 붙은 부분으로 찾아 씁니다. xerj autoindex는 폴더 안 파일을 schema 없이 형식별 index로 만들고, 소스 코드는 tree-sitter로 분석해 심볼과 줄 번호를 남기며, PDF, XLSX, 메일 같은 파일도 처리합니다. 검색은 BM25 full-text, 벡터 kNN, hybrid 질의를 지원하고, /_memory API는 에이전트의 기억을 namespace마다 별도 index에 저장해 키워드, 의미, 벡터로 찾아옵니다. xerj mcp 명령은 도구 13개를 갖춘 stdio MCP 서버로 따로 실행해 둔 node에 호출을 넘기며, xerj init은 XERJ를 Claude Code와 Cursor에 등록합니다. 설치 스크립트나 Linux, macOS, Windows용 실행 파일로 설치하고, 기본 embedder는 오프라인 feature hashing이며 neural embedder를 켜면 처음 한 번 약 90 MB의 모델 파일을 받습니다. 빠른 시작의 --insecure 옵션은 TLS와 API key 인증을 모두 꺼서 포트에 닿는 누구나 superuser가 되게 하며, 그 밖의 방식으로 시작하면 관리자 key로 인증이 켜집니다. SECURITY_MODEL.md는 기본으로 꺼진 TLS, 필드와 문서 단위 보안과 저장 데이터 암호화가 없는 점, index 전체를 guest에게 여는 공유 링크를 한계로 밝힙니다. RERANK.md에 따르면 기본 node는 외부 연결과 telemetry가 없고, 문서 내용을 밖으로 보내는 TypeSafe AI의 Jev 재순위(rerank), proxy embedding, WAL tap, S3 backend는 운영자가 켜야 동작합니다. README가 인용한 프로젝트 자체 연구(4개 언어의 작업 8개)에서 XERJ를 쓴 에이전트의 출력 토큰은 9,982개로 grep 중심 에이전트의 26,477개보다 적었고, 해결은 둘 다 16번 중 16번이었습니다. README는 이 이득이 비공개 코드나 학습 시점 이후 코드에서 나오고 모델이 아는 유명 라이브러리에서는 효과가 없거나 해로울 수 있다고 적으며, 저장소 설명의 40배 절감 수치는 저장소 파일에서 근거를 찾지 못했습니다. 조사 시점의 최신판은 2026-10-12의 release candidate v1.0.0-rc.95였고, LICENSE 파일과 GitHub 메타데이터는 모두 Apache-2.0이며 코드 기여에는 CLA 서명이 필요합니다.
Trendshift 순위 목록에 오른 저장소만 담았고, 목록은 후보를 찾는 데만 썼습니다. 순위 숫자는 옮기지 않았습니다. 설명과 라이선스, 별 수는 각 GitHub 저장소에서 확인했습니다. 해설은 우리의 판단입니다. 이 프로젝트들을 직접 시험한 것은 아니며, 상승 목록에 올랐다고 품질이 증명되지는 않습니다.