[FEATURE] GraphRAG + Flowise
GraphRAG (https://github.com/microsoft/graphrag) shows great promise of a more improved and effective method of RAG beyond simple document chunking.
With the introduction of more cost effective models such as GPT-4o-mini and future generations the cost of a GraphRAG approach to indexing can be significantly reduced.
Request is to add a GraphRAG component to flowise that can accept a multi-document / multi-source input which on upsert runs the GraphRAG indexing, and then can be queried like any other Flowise RAG chatflow for use with standard chat bots, chains, and Agents.
Thank you!
+1
+1 gpt4omini is already in main branch, just wait for graphRag now.
+1
As the indexing seems very complex to build plus it requires a graph database I wonder if you have tried out indexing your data through the solution accelerator provided by MS?
@HenryHengZJ correct me if I'm wrong but the best way to tackle this would be to have an Azure AI Search (as they have for Langchain python now) Tool. At least we could then query that graph index.
I'll try playing around with this architecture this week. But as of now I think the indexing is too complex to be a out-of-the-box no-brainer for flowise.
Hope this helps https://js.langchain.com/v0.2/docs/tutorials/graph/
yeah we are still tinkering how to make it easy to do it on Flowise, as GraphRAG does involves much more technnical challenges
I cannot wait to see this feature for flowise Thank you all Devs
+1
+1
+1
+1
Just to keep you up to date: https://neo4j.com/developer-blog/global-graphrag-neo4j-langchain/
Check out this blog post which goes in detail into how to build a proper graph using langchain that's like MS Paper. It's expensive.. and somewhat complex. At least the indexing
FYI I've been testing graphRAG with GPT4-turbo and GPT4o-mini, switching from GPT4 to 4o-mini reduced cost from $50 indexing cost, down to ONLY $0.37 for same size indexing. Cost should no longer be a major factor in this type of approach, especially for static datasets.
I'm open to putting a bounty on this if anyone is interested.
+1
+1
GraphRAG (https://github.com/microsoft/graphrag) shows great promise of a more improved and effective method of RAG beyond simple document chunking.
With the introduction of more cost effective models such as GPT-4o-mini and future generations the cost of a GraphRAG approach to indexing can be significantly reduced.
Request is to add a GraphRAG component to flowise that can accept a multi-document / multi-source input which on upsert runs the GraphRAG indexing, and then can be queried like any other Flowise RAG chatflow for use with standard chat bots, chains, and Agents.
Thank you!
Yes PLEASE!
+1
+1
+1 I tried creating a custom JS function to query a Neo4j database but sadly that does not work either....
Thanks for the update 🫡
On Thu, 14 Nov 2024 at 17:54, TS-Eichhorn @.***> wrote:
+1 I tried creating a custom JS function to query a Neo4j database but sadly that does not work either....
— Reply to this email directly, view it on GitHub https://github.com/FlowiseAI/Flowise/issues/2837#issuecomment-2475890607, or unsubscribe https://github.com/notifications/unsubscribe-auth/AC4KSFUYUSDPSOITZSQXAL32ARXOLAVCNFSM6AAAAABLF34PFGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDINZVHA4TANRQG4 . You are receiving this because you commented.Message ID: @.***>
-- Kind Regards, Manie +61 416 824 559
@googlepoke
Update. I got a connection with neo4-j working on a local version of Flowise. I followed this tutorial: https://www.youtube.com/watch?v=vmKLAeyLXy8 to add neo4j-driver as an external dependency. This allowed me to create a custom tool that queried a neo4j database and retrieved graph information.
FYI: In my setup the creation and filling of the graph database is not done by LLMs due to having structured data, so I have not tested transforming documents into graphs using Flowise.
@TS-Eichhorn Thank you! I was looking for Neo4j support for Flowise! Will explore more and see if get transforming documents into graphs using Flowise
I just use graphlit to build the Graph and then use a flowise tool to query the GraphRAG. Pretty straightforward actually
@googlepoke
Update. I got a connection with neo4-j working on a local version of Flowise. I followed this tutorial: https://www.youtube.com/watch?v=vmKLAeyLXy8 to add neo4j-driver as an external dependency. This allowed me to create a custom tool that queried a neo4j database and retrieved graph information.
FYI: In my setup the creation and filling of the graph database is not done by LLMs due to having structured data, so I have not tested transforming documents into graphs using Flowise.
That is great. I am using LightRAG to populate neo4j. LightRAG can use ollama. So cost is not a concern any more. I will try your method to pull data from neo4j in using the flowise custom tool. will it be possible for you to share a brief explanation of your code. Thank you.
I just use graphlit to build the Graph and then use a flowise tool to query the GraphRAG. Pretty straightforward actually
Could you share some details on you did this 😊?
+1 any successes?
has this endeavor been abandoned?
No progress updates?