gusye1234 / nano-graphrag

A simple, easy-to-hack GraphRAG implementation
MIT License
1.7k stars 164 forks source link

[Feature Request] For a real world application #35

Open Ashes47 opened 2 months ago

Ashes47 commented 2 months ago

Must have for real world application:

1) To actually use this in any application we must be able to generate multiple independent Knowledge Graph for RAG for diffirent users this will be a must have for actual use. I didn't find any support to do so today happy to help if i can.

1.a) we probably should also have some mechanism to keep adding data to a specific knowledge graph for when it can make many.

2) I am really happy to see Neo4j or your roadmap as that would be a very practical integration as real world uses cases would probably use that. It also makes visualisation easier.

Good to have:

1) Sciphi Triplex would be a sick addition which is already on your roadmap.

2) Can we use Structured Output from OpenAI to ensure the response follows are data models and we don't have to retry multiple times. (saves cost and latency)

Thank you :)

gusye1234 commented 2 months ago

To actually use this in any application we must be able to generate multiple independent Knowledge Graph for RAG for diffirent users this will be a must have for actual use. I didn't find any support to do so today happy to help if i can help

For sure, I'm planning to open up a new project for this. Not sure this direction is necessary for nano-graphrag, since the primary purpose of this project is to offer a easy to learn/hack graphrag, not a big got-it-all project. But yeah, if you're interested in this, we should definitely talk about it, multi-user RAG is exciting and under-explored I think!

Sciphi Triplex would be a sick addition which is already on your roadmap.

Yeah... After playing around with Triplex, I don't think it will be integrated any time soon. Because the entities and relationship it extracts lack semantic information too much. Below is an example of Triplex output:

[1] PERSON: Elon Musk

However, in current process of GraphRAG, we're expecting something like:

Elon Reeve Musk, born June 28, 1971, is a businessman and investor known for his ...

Can we use Structured Output from OpenAI

For sure, but right now gpt-4o has never failed to follow the instructions to output JSON

Ashes47 commented 2 months ago

But yeah, if you're interested in this, we should definitely talk about it, multi-user RAG is exciting and under-explored I think!

Yeah i am happy to put something on your calendar if that works with you and happy to contribute. My painpoint with microsoft's graph RAG is it's not really a plug and play solution and the cost is too high.

I'm planning to open up a new project for this.

This would be very cool!!

For sure, but right now gpt-4o has never failed to follow the instructions to output JSON

I have been in situation where i had to implement a retry logic because it did fail. Structured output just keeps us from wondering if this could ever happen.

gusye1234 commented 2 months ago

I have been in situation where i had to implement a retry logic because it did fail. Structured output just keeps us from wondering if this could ever happen.

Got it. Will add strict mode later

Yeah i am happy to put something on your calendar if that works with you and happy to contribute.

Cool, maybe you can join our discord server and we can talk about this in details?

alexandergirardet commented 1 month ago

Hey how can I join the discord server to contribute?

rangehow commented 1 month ago
  1. Can we use Structured Output from OpenAI to ensure the response follows are data models and we don't have to retry multiple times. (saves cost and latency)

The "retry" mentioned here refers to which part? As far as I know, there is no retry behavior triggered in the project due to JSON parsing failure.

promentol commented 3 weeks ago

@gusye1234 for triplex, the problem is only in entity generation? To implement it we just need new extracting function?