Skip to content

v1.0.2

Choose a tag to compare

@Dsantra92 Dsantra92 released this 22 Apr 11:32
· 81 commits to main since this release
438636f

Parallelized parsing with ColBERT and BM25 embeddings

What's Changed

We have parallelized the parsing process and packaged the entire parsing into one sub package for parsing.So the old create_graph_rs Rust module has been replaced with a new app/src/parsing/ module with ColBERT/BM25 hybrid vector indexing via Qdrant for superior code search quality.

Core Infrastructure

  • New Parsing module (app/src/parsing/): Complete rewrite with tree-sitter for multi-language support, 800+ lines of tag extraction, and Python bindings via PyO3. Moved parsing queries to the new module structure.
  • Qdrant Hybrid Search: Added dense (ColBERT) + sparse (BM25) vector indexing to the code graph pipeline. Non-fatal indexing failures don't block graph creation. Includes deletion handling on project cleanup.
  • Qdrant configuration: Added Qdrant configuration support (host, port, gRPC port, API key, HTTPS) alongside existing Neo4j config.

Multimodal & Conversation Improvements

  • Attachment Handling: Extended conversation creation to accept attachment_ids. First-message attachments are now stored in Redis and applied retroactively if the client redirects without re-sending them.
  • Document Attachments: Multimodal processing now handles both images and documents (AttachmentType.DOCUMENT), not just images.
  • Agent Updates: Added update_agent endpoint to conversation controller for dynamic agent switching.

PR's merged

New Contributors

Full Changelog: v1.0.1...1.0.2