MinishLab/semble

Fast and Accurate Code Search for Agents. Uses 99% fewer tokens than grep+read

解決する課題

Sembleは、AIコーディングエージェントが大規模なコードベースを検索する際に発生する「トークンの肥大化」と非効率性の問題を解決します。grepを実行した後にファイル全体を読み込むといった従来の手法は、膨大なコンテキストウィンドウのトークンを消費し、処理も低速です。Sembleは、クエリへの回答に必要な正確かつ関連性の高いコードスニペットのみを即座に取得する手段を提供し、トークン使用量とレイテンシを大幅に削減します。

仕組み

Sembleは、GPUやAPIキーを必要とせず、完全にCPU上で動作するハイブリッド検索アプローチを採用しています。

  1. チャンク化 (Chunking):tree-sitterを使用して、コードの構造を認識した状態でファイルを分割します。
  2. ハイブリッド検索 (Hybrid Search):意味的類似性(potion-code-16M-v2モデルによる静的なModel2Vec埋め込みを使用)と、識別子やAPI名に対する語彙マッチング(BM25)を組み合わせます。
  3. 融合と再ランキング (Fusion and Reranking):Reciprocal Rank Fusion (RRF) を使用して結果を統合し、関数定義を優先し、テストファイルやレガシーなshimなどのノイズを低減するなど、コード固有のシグナルに基づいて再ランキングを行います。
  4. キャッシュ (Caching):インデックスはローカルにキャッシュされ、ファイルの変更に応じて増分更新されます。

対象ユーザー

AIコーディングエージェント(Claude Code、Cursor、Codexなど)の開発者、およびこれらのツールを使用して、ローカルまたはリモートのリポジトリに対して、より高速で正確、かつトークン効率の高いアクセスを求めるユーザー向けに設計されています。

ハイライト

  • 極めて高い効率性:grep+readアプローチと比較して、トークン使用量を約99%削減します。
  • 高性能:CPU上で平均約500msでリポジトリをインデックス化し、約1msでクエリ結果を返します。
  • セットアップ不要:APIキー、GPU、外部サービスは一切不要です。
  • MCP統合:Model Context Protocol (MCP) サーバーとして動作し、エージェントが検索をネイティブツールとして呼び出すことができます。
  • 柔軟な検索:ローカルパス、リモートのgit URL、および複数のリポジトリの同時検索をサポートしています。

関連

  • Dispatch
  • プロジェクト
  • プロジェクト
  • プロジェクト