Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

LangChain itself blows my mind as one of the most useless libraries to exist. I hope this does not come off the wrong way but so many people told me they were using it so it was easy to move been models. I just did not understand it, these are simple API calls that felt like Web Dev 101 when starting a new product. Maybe its that so many new people were coming into the field using LLM but it surprised me as even what I thought were experienced people were struggling. Its like LLMs brought out the confusion in people.

It was interesting as a library at the very beginning to see how people were thinking about patterns but pretty useless in production.



It was the first pass at solving the common problems when building with LLMs. People jumped on it because it was trendy and popular.

But it quickly became obvious that LangChain would be better named LangSpaghetti.

That’s nothing against the authors. What are the chances the first attempt at solving a problem is successful? They should be commended for shipping quickly and raising money on top of it to keep iterating.

The mistake of LangChain is that they doubled down on the bad abstraction. They should have been iterating by exploring different approaches to solving the problem, not by adding even more complexity to their first attempt.


Langchain feels very much like shovelware that was created for the sole purpose of parting VCs of their money. At one point the codebase had a "prompt template" class that literally just called Python's f-string.


Good thing they didn't raise money to develop this piece of crap.

https://blog.langchain.dev/announcing-our-10m-seed-round-led...


Doesn't langchain provide useful functionality when it comes to RAG? Here it seems it does considerably more but being a mere shim abstraction?


Not really. It's pretty much the same for RAG as it is for everything else - just a thin additional abstraction on top of apis that are easy to call on their own.


Every time I approached LangChain, contrary to the attitude of my colleagues, I could never figure out what the point of it was other than to fetishize certain design patterns. Interacting with an LLM in a useful way requires literally none of what LangChain has to offer, yet for a time it was on its way to being the de facto way to do anything with LLMs. It reminds me a lot of the false promise of ORMs, which is that if you trust the patterns then you can swap out the underlying engine and everything will still just work, and is more or less a fantasy.


ORMs are useful though for a different reason. They let you creat typed objects then generate the schema from them and automatically create a lot of boilerplate SQL for you.

Admittedly for anything more than 1-2 joins you are better off hand crafting the SQL. But that is the exception not the rule.

Refactoring DB changes becomes easier, you have a history of migrations for free, DDL generation for free.

In the early 2000 I worked where people handcrafted SQL for every little query for 100 tables and yeah you end up with inconsistent APIs and bugs that are eliminated by code generation / meta programming done by ORMs.


Admittedly for anything more than 1-2 joins you are better off hand crafting the SQL. But that is the exception not the rule.

String disagree: if that’s true you likely don’t even need a proper RDBMS in the first place.

An ORM is not a replacement for knowing how SQL works, and it never will be.


> to fetishize certain design patterns

Yes; exactly. There's value in a Schelling Point[0], and in a pattern language[1].

> requires literally none

True, yes. There isn't infinite value in these things, and "duplication is far cheaper than the wrong abstraction"[2], but they can't be avoided; they occupy local maxima.

0. https://en.wikipedia.org/wiki/Focal_point_(game_theory)

1. https://en.wikipedia.org/wiki/Pattern_language

2. https://sandimetz.com/blog/2016/1/20/the-wrong-abstraction


This seems to be a universal sentiment.. we took a short look at langchain and determined it was doing really trivial string manipulation/string templating stuff but inside really rigid and unnecessary abstractions. It was all stuff that could be implemented by any competent programmer in hours in any language without all the crap, so that's what we did. shrug


Ah, the halcyon days of March 2023, we were a while loop away from AGI. I remember there was something that was It for like a month, to the point that whoever built the framework was treating a cocktail napkin on which they scribbled, whatever, "act, evaluate, decide next action, repeat", as if it was a historical talisman. And I wasn't sure! Maybe it was!


Yeah I thought the consensus against LangChain was formed a year ago, surprised to still be seeing these articles.


Just chit chatting, not a strong claim, more a hot take I turn over in my mind:

my guess is 40% of software engineers did a AI pivot the last 18 months, so there's a massive market for frameworks, and there's an inclination to go beyond REST requests, find something that just does it for you / can do all the cool patterns you'll find in research papers.

Incredible amount of bad info out there, whether its the 10th prompting framework that boils down to a while loop and just drives up token costs, the 400 LLM tokenizer library that can only do GPT-3.5/4.0, the Nth app that took XX ex-FAANG and $XX mil and a year to get another web app, or another iOS-only OpenAI client with background blur,m memory thats an array of strings injected into every call

It's at the point where I'm hoping for a cooling down even though I'm launching something*, and think it's hilarious people rant about it all just being hype and think people agree.

* TL;Dr consumer app with 'chain gui', just hand people an easy to use GUI like playground.openai.com / console.anthropic.com, instead of getting cute and being the Nth team to try to launch a full grade assistant on a monthly plan matching openai pricing, shoving 6000K+ prompts with each request and not showing them


This is true. Devs are looking for frameworks. See CrewAI who refuses to allow users to disable some pretty aggressive telemetry, yet they have a huge number of GH stars.

The abstractions are handy if you have no idea what you are doing but it's not groundbreaking tech.

https://github.com/joaomdmoura/crewAI/pull/402


Langchain seems to have been made just for the tutorial business on Udemy and Youtube.


I think it was great at first when llms were new and prompting required more strategy. Now the amount of of abstractions/ bloat they have for essentially string wrappers makes no sense


never understood the "chain" in langchain.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: