4 ms·
Another question, which one is preferred, LlamaIndex or Langchain, for RAG? Thanks in advance for your insights.
by dfhg 3y ago
Another question, which one is preferred, LlamaIndex or Langchain, for RAG? Thanks in advance for your insights.
- isoprophlex 3y agoYou basically don't use langchain for anything besides 30 minute demos that you copied from someone else's github. It has a completely spaghettified API, is not performant, and forces you into excessive mental contortions to reason about otherwise simple tasks. LlamaIndex is pretty good.
- monkeydust 3y agoYea discovered this with Langchain last week. Was great for a demo then started to push it harder and spent ages trawling Reddit, discord, GitHub trying to find solutions to issues only to discover what was supposed to be supported was deprecated. Got a massive headache for what should have been a simple change. Moved on now.
- sophiabits 3y agoYeah +1 We originally started out building features with LangChain (loading chains from YAML sounded good—it felt like it would be easy to get non-engineers to help with prompt development) but in practice it’s just way too complicated. Nice idea, but the execution feels lacking. It also doesn’t help that LangChain is evolving so rapidly. When we first started using it a lot of code samples on the internet couldn’t be copy/pasted because of import paths changing, and at one point we had to bump by ~60 patch versions to get a bug fix, which was painful because it broke all kinds of stuff
- simonw 3y agoLlamaIndex is mainly focused on RAG. LangChain does a ton of other stuff too. I'd focus on LlamaIndex first.
- mathis-l 3y agoHaystack [1] is another good option. It‘s modular, doesn’t get in your way and is particularly strong at retrieval. People like the documentation too. Disclaimer: I work at deepset [1] https://github.com/deepset-ai/haystack https://github.com/deepset-ai/haystack
- d4rkp4ttern 3y agoEchoing others’ sentiments, I was frustrated with the bloat and obscurity of existing tools. This led me to start building Langroid with an agent-oriented paradigm 8 months ago https://github.com/langroid/langroid https://github.com/langroid/langroid We have companies using it in production for various use-cases. They especially like our RAG and multi-agent orchestration. See my other comment for details.
- wahnfrieden 3y agowhat's the "groid"? isn't that a slur?
- viksit 3y agolanguage android i imagine..
- d4rkp4ttern 3y agoYou got it
- averageRoyalty 3y agoIf you think that's bad, you're gonna hate Scunthorpe.
- wahnfrieden 3y agothat's not offensive
- giardini 3y agos'not?
- wahnfrieden 3y agos'not
- eskibars 3y agoBesides the other comments in this thread, I'd really recommending looking at least first to the (relatively new) "Managed index" in LlamaIndex: https://docs.llamaindex.ai/en/stable/community/integrations/managed_indices.html https://docs.llamaindex.ai/en/stable/community/integrations/... . These handle combining the retrieval with the generative side. I've seen a lot of users both get frustrated and get bad results by trying to write their own glue to string together various components of retrieval and generation and these are much easier to get started with