Semble - grep보다 토큰을 98% 적게 쓰는 에이전트용 코드 검색
Semble은 에이전트용 코드 검색에서 grep+read 대비 98% 토큰 절감을 내세웠다.
Semble은 에이전트가 자연어·코드 질의로 필요한 코드 조각만 즉시 찾도록 만든 코드 검색 라이브러리다. 전체 파일을 읽는 대신 관련 청크만 반환해 grep+read 대비 약 98% 적은 토큰을 쓰며, 평균 저장소를 약 250ms에 인덱싱하고 쿼리는 약 1.5ms에 응답한다고 밝혔다. 정적 임베딩 모델을 써서 쿼리 시 transformer forward pass가 없고, CPU에서 API 키·GPU·외부 서비스 없이 동작한다.
벤치마크는 19개 언어의 63개 저장소와 약 1,250개 쿼리로 수행됐다. Semble은 CodeRankEmbed Hybrid 품질의 **99%**를 달성하면서 인덱싱은 218배 빠르다고 제시했고, 토큰 효율 테스트에서는 2k 토큰만으로 94% 재현율을 기록했다고 설명했다.
구현은 tree-sitter로 코드 인식 청크를 만들고, Model2Vec의 potion-code-16M 임베딩과 BM25를 결합한 뒤 Reciprocal Rank Fusion으로 점수를 합친다. 심볼형 쿼리 가중치, 정의 청크 부스트, 식별자 어간 매칭, 같은 파일 내 관련성, 테스트·legacy·예제·.d.ts 하향 조정도 적용한다.
사용처는 넓다.
- MCP 서버로 Claude Code, Cursor, Codex, OpenCode 등에서 쓸 수 있다.
- Bash 통합용으로
AGENTS.md와CLAUDE.md에semble search와semble find-related워크플로를 넣을 수 있다. - Python에서는
SembleIndex.from_path,from_git,search,find_related로 커스텀 도구에 통합할 수 있다. - CLI는 로컬 경로와 Git URL을 모두 받으며,
path를 생략하면 현재 디렉터리를 기본값으로 쓴다. semble savings는 검색마다 절약량을 추정해~/.semble/savings.jsonl에 저장한다.
패키지는 PyPI의 semble로 설치할 수 있고, 라이선스는 MIT다.
이 요약은 원문 이해를 돕기 위한 큐레이션입니다. 저작권은 원저작자에게 있으며, 정확한 내용과 맥락은 원문을 확인하세요.
요약 오류, 출처 표기 문제, 삭제 요청은 문의 · 건의로 알려주세요.