graphrag icon indicating copy to clipboard operation
graphrag copied to clipboard

DRIFT Search

Open j2whiting opened this issue 1 year ago • 0 comments

Description

This PR adds a dynamic, graph reasoning module for performing GraphRAG queries.

Proposed Changes

  • Create configuration and defaults for DRIFT
  • Update BaseSearch to accept generic context builder. This is done to allow for a different signature for the DRIFT context builder while still allowing it to be a child of BaseSearch
  • Create Misc. Utilities for running DRIFT query, storing state, serializing, warm starting, etc.

Checklist

  • [x] I have tested these changes locally.
  • [x] I have reviewed the code changes.
  • [ ] I have updated the documentation (if necessary). Detailed docs are coming shortly
  • [ ] I have added appropriate unit tests (if applicable). Let me know if you think we should add some tests here, it's a pretty big PR and touches a decent chunk of the repo. Perhaps the search APIs are good candidates for unit tests?

Additional Notes

A few more experiments are in the pipeline to extend DRIFT functionality. The QueryState and DRIFTAction objects were built to accommodate experimenting with different forms of reasoning chains. More to come soon..

j2whiting avatar Oct 11 '24 22:10 j2whiting