graphrag
graphrag copied to clipboard
[Feature Request]: Separate dependency groups for indexing vs querying
Do you need to file an issue?
- [ ] I have searched the existing issues and this feature is not already filed.
- [ ] My model is hosted on OpenAI or Azure. If not, please look at the "model providers" issue and don't file a new one here.
- [x] I believe this is a legitimate feature request, not just a question. If this is a question, please use the Discussions area.
Is your feature request related to a problem? Please describe.
Graphrag indexing depends on graspologic, which has a strict dependency on scipy 1.12 (released in jan 2024). This makes it incompatible with packages such as semantic-kernel>1.20. Besides, graphrag has a lot of dependencies making it pretty heavy.
Describe the solution you'd like
Use dependency groups in pyproject.toml so that users can pip install graprag[indexing] or graphrag[querying] separately. Indexing would only include packages used during indexing: graspologic, networkx, umap-learn etc.
Additional context
Seems related to:
- incompatibility with semantic kernel: https://github.com/microsoft/graphrag/issues/1807
- scipy version: https://github.com/microsoft/graphrag/issues/132