MinishLab/semble
Fast and Accurate Code Search for Agents. Uses 99% fewer tokens than grep+read
해결하는 문제
Semble은 AI 코딩 에이전트가 대규모 코드베이스를 검색할 때 발생하는 '토큰 비대화'와 비효율성 문제를 해결합니다. grep을 실행한 후 전체 파일을 읽는 기존 방식은 방대한 컨텍스트 윈도우 토큰을 소비하며 속도가 느립니다. Semble은 에이전트가 쿼리에 답하는 데 필요한 정확하고 관련성 높은 코드 스니펫만 즉시 검색할 수 있는 방법을 제공하여 토큰 사용량과 지연 시간을 크게 줄여줍니다.
작동 원리
Semble은 GPU나 API 키 없이 완전히 CPU에서 실행되는 하이브리드 검색 방식을 사용합니다:
- 청킹 (Chunking):
tree-sitter를 사용하여 파일을 코드 인식 단위로 분할합니다. - 하이브리드 검색 (Hybrid Search): 의미론적 유사성(
potion-code-16M-v2모델을 통한 정적Model2Vec임베딩 사용)과 식별자 및 API 이름에 대한 어휘적 매칭(BM25)을 결합합니다. - 융합 및 재순위 지정 (Fusion and Reranking): Reciprocal Rank Fusion (RRF)을 사용하여 결과를 병합한 다음, 함수 정의에 가중치를 부여하고 테스트 파일이나 레거시 shim과 같은 노이즈를 페널티 처리하는 등 코드별 신호를 기반으로 재순위를 지정합니다.
- 캐싱 (Caching): 인덱스는 로컬에 캐시되며 파일 변경 사항에 따라 증분 업데이트됩니다.
대상 사용자
AI 코딩 에이전트(Claude Code, Cursor, Codex 등) 개발자와, 이러한 도구를 사용하여 로컬 또는 원격 저장소에 대해 더 빠르고 정확하며 토큰 효율적인 액세스를 원하는 사용자를 위해 설계되었습니다.
주요 특징
- 극도의 효율성:
grep+read방식 대비 토큰 사용량을 약 99% 절감합니다. - 고성능: CPU에서 평균 약 500ms 내에 저장소를 인덱싱하고 약 1ms 내에 쿼리 결과를 반환합니다.
- 제로 설정: API 키, GPU 또는 외부 서비스가 필요하지 않습니다.
- MCP 통합: Model Context Protocol (MCP) 서버로 작동하여 에이전트가 검색을 네이티브 도구로 호출할 수 있습니다.
- 유연한 검색: 로컬 경로, 원격 git URL 및 여러 저장소의 동시 검색을 지원합니다.
관련
- Dispatch
- 프로젝트
- 프로젝트
- 프로젝트