{"slug": "langchain", "name": "LangChain", "category": "ai", "category_name": "AI models and assistants", "description": "", "recommenders": 3, "commenters": 16, "warners": 6, "score": -0.808, "rising": 0.35, "first": "2025-11-12", "latest": "2026-09-23", "why": "Python has won for me: fastapi, pytorch, langchain, streamlit, and so on and on.", "why_is_quote": true, "has_verdict": false, "sentiment": {"recommend": 3, "neutral": 5, "compare": 2, "warn": 6}, "spark": [0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0], "listed": true, "loved": [], "caveat": "", "short_quote": "Python has won for me: fastapi, pytorch, langchain, streamlit, and so on and on.", "icon": true, "domain": null, "github_repo": null, "official_url": "https://www.langchain.com", "pricing": "", "aliases": ["LangChain"], "verdict": null, "praise": [{"label": "", "summary": "", "quotes": [{"id": 797074592, "item_id": 49817162, "url": "https://news.ycombinator.com/item?id=49817162", "by": "simlevesque", "date": "2026-09-23", "stance": "recommend", "quote": "I use Apache Burr but it's not as good as LangChain.", "excerpt": "There's like 1000 langchain alternatives and none are good, they're all vibe-coded unstable projects. I use Apache Burr but it's not as good as LangChain. I just don't want to use software whose website has a pricing page if it's not a SAAS.", "context": "", "use_case": "LLM application framework", "switched_from": "", "story": "Stripe's Knowledge AI Platform"}, {"id": 765331634, "item_id": 47833227, "url": "https://news.ycombinator.com/item?id=47833227", "by": "NarimanN2", "date": "2026-04-20", "stance": "recommend", "quote": "LangChain to communicate with the model", "excerpt": "In this video, we build Andrej Karpathy\u2019s idea of an LLM wiki and use AI to create a personal knowledge base, completely with local tools. This can be a strong alternative to RAG, where the LLM often has to rediscover knowledge from scratch on every question. The idea here is different. Instead of retrieving from raw documents at query time, the LLM incrementally builds and maintains a persistent wiki. This wiki is d", "context": "", "use_case": "communicating with the LLM", "switched_from": "", "story": null}, {"id": 742124899, "item_id": 46382806, "url": "https://news.ycombinator.com/item?id=46382806", "by": "RomanPushkin", "date": "2025-12-24", "stance": "recommend", "quote": "Python has won for me: fastapi, pytorch, langchain, streamlit, and so on and on.", "excerpt": "I'm happy to see v4.0, but 2025 was the year I switched from Ruby to Python after gradually drifting back to it more and more. The tipping point was when I had Claude Code automatically convert one of my Ruby projects to 100% Python - and after that, I just had no Ruby left. I spent over a decade enjoying Ruby and even wrote a book about it. At this point, though, Python has won for me: fastapi, pytorch, langchain, s", "context": "Ruby developer for over a decade, wrote a book on Ruby", "use_case": "", "switched_from": "", "story": "Ruby 4.0.0 Released"}]}], "caveats": [{"label": "", "summary": "", "quotes": [{"id": 794763137, "item_id": 49672696, "url": "https://news.ycombinator.com/item?id=49672696", "by": "santiagobasulto", "date": "2026-09-12", "stance": "warn", "quote": "LiteLLM and LangChain are AWFUL pieces of software and should be avoided at ALL costs.", "excerpt": "Cool project, I had to implement the same for my experimental AI Agent: https://github.com/quantized-ai/luca-py LiteLLM and LangChain are AWFUL pieces of software and should be avoided at ALL costs. Btw, you should update httpx to httpx2, and I think it's not much effort to remove openai's SDK compatibility. I'd love to have a provider-agnostic LLM router (almost) dependency free (aside from httpx2).", "context": "", "use_case": "LLM applications", "switched_from": "", "story": "Litelm: LiteLLM Without the Bloat"}, {"id": 755393073, "item_id": 47212067, "url": "https://news.ycombinator.com/item?id=47212067", "by": "borhensaidi", "date": "2026-03-01", "stance": "warn", "quote": "I got frustrated with LangChain being impossible to audit (500+ transitive dependencies, 100K+ LOC)", "excerpt": "I got frustrated with LangChain being impossible to audit (500+ transitive dependencies, 100K+ LOC), so I built picoagent \u2014 an AI agent framework with only numpy and websockets as external dependencies. The interesting technical decision: instead of prompting the LLM to pick a tool, I use Shannon Entropy (H(X) = -\u03a3p\u00b7log\u2082(p)) on the softmax score distribution over available tools. If entropy is above 1.5 bits, the age", "context": "", "use_case": "AI agent framework", "switched_from": "", "story": "AI agent with 2 deps that uses Shannon Entropy to decide when to act vs. ask"}, {"id": 753560788, "item_id": 47097549, "url": "https://news.ycombinator.com/item?id=47097549", "by": "Antaris", "date": "2026-02-20", "stance": "warn", "quote": "LangChain's buffer memory is retrieval-by-recency, not by query relevance.", "excerpt": "antaris-suite is six Python packages for the infrastructure layer of an agent turn. The core premise: memory, safety, and routing should run in-process with no external dependencies \u2014 no API keys, no Docker, no vector database. *The packages:* - antaris-memory: BM25 search over sharded JSONL, WAL, decay-weighted recall - antaris-guard: stateful policy engine (rate limits, PII, cost caps, escalation) - antaris-router:", "context": "", "use_case": "agent memory", "switched_from": "", "story": null}, {"id": 746530032, "item_id": 46658127, "url": "https://news.ycombinator.com/item?id=46658127", "by": "kankerlijer", "date": "2026-01-17", "stance": "warn", "quote": "my previous experience with LLM wrappers convinced me to stay away from them (Langchain, Llamaindex, Autogen, others)", "excerpt": "For those building applications with Langfuse and Clickhouse - do you like these products? I get the odd request to do an AI thing, and my previous experience with LLM wrappers convinced me to stay away from them (Langchain, Llamaindex, Autogen, others). In some cases they were poorly written, and in other ways the march of progress rendered their tooling irrelevant fairly quickly. Are these better?", "context": "", "use_case": "LLM application wrappers", "switched_from": "", "story": "ClickHouse Acquires Langfuse"}]}], "who": [{"by": "jabrotapu", "context": "freelancer building on-prem GPU clusters", "url": "https://news.ycombinator.com/item?id=49661006", "date": "2026-09-11"}, {"by": "RomanPushkin", "context": "Ruby developer for over a decade, wrote a book on Ruby", "url": "https://news.ycombinator.com/item?id=46382806", "date": "2025-12-24"}], "tags": [], "use_cases": ["llm applications", "agent framework", "llm application framework", "building agents", "llm orchestration", "communicating with the llm"], "compared": [{"slug": "llamaindex", "name": "LlamaIndex", "co": 2, "switched_from": 0, "switched_to": 0}, {"slug": "ollama", "name": "Ollama", "co": 2, "switched_from": 0, "switched_to": 0}, {"slug": "open-webui", "name": "Open WebUI", "co": 2, "switched_from": 0, "switched_to": 0}], "makers": [], "threads": [{"url": "https://news.ycombinator.com/item?id=49815982", "title": "Stripe's Knowledge AI Platform", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=49662767", "title": "Litelm: LiteLLM Without the Bloat", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=49522905", "title": "Ask HN: Freelancer? Seeking freelancer? (September 2026)", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=48088126", "title": "Ask HN: Which LLM are you using to evaluate your ideas?", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=47833226", "title": "item 47833226", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=47545837", "title": "OpenCode-LLM-proxy \u2013 use any OpenCode model via OpenAI/Anthropic/Gemini API", "mentions": 1}], "sentiment_by_month": {"2025-11": {"compare": 1}, "2025-12": {"warn": 2, "recommend": 1, "compare": 1}, "2026-01": {"neutral": 1, "warn": 1}, "2026-02": {"neutral": 1, "warn": 1}, "2026-03": {"warn": 1, "neutral": 1}, "2026-04": {"recommend": 1}, "2026-05": {"neutral": 1}, "2026-06": {}, "2026-07": {}, "2026-08": {}, "2026-09": {"neutral": 1, "warn": 1, "recommend": 1}, "2026-10": {}}, "quotes": [{"id": 797074592, "item_id": 49817162, "url": "https://news.ycombinator.com/item?id=49817162", "by": "simlevesque", "date": "2026-09-23", "stance": "recommend", "quote": "I use Apache Burr but it's not as good as LangChain.", "excerpt": "There's like 1000 langchain alternatives and none are good, they're all vibe-coded unstable projects. I use Apache Burr but it's not as good as LangChain. I just don't want to use software whose website has a pricing page if it's not a SAAS.", "context": "", "use_case": "LLM application framework", "switched_from": "", "story": "Stripe's Knowledge AI Platform"}, {"id": 794763137, "item_id": 49672696, "url": "https://news.ycombinator.com/item?id=49672696", "by": "santiagobasulto", "date": "2026-09-12", "stance": "warn", "quote": "LiteLLM and LangChain are AWFUL pieces of software and should be avoided at ALL costs.", "excerpt": "Cool project, I had to implement the same for my experimental AI Agent: https://github.com/quantized-ai/luca-py LiteLLM and LangChain are AWFUL pieces of software and should be avoided at ALL costs. Btw, you should update httpx to httpx2, and I think it's not much effort to remove openai's SDK compatibility. I'd love to have a provider-agnostic LLM router (almost) dependency free (aside from httpx2).", "context": "", "use_case": "LLM applications", "switched_from": "", "story": "Litelm: LiteLLM Without the Bloat"}, {"id": 794576110, "item_id": 49661006, "url": "https://news.ycombinator.com/item?id=49661006", "by": "jabrotapu", "date": "2026-09-11", "stance": "neutral", "quote": "Agents: LangGraph, LangChain", "excerpt": "SEEKING WORK | India, remote | Part-time | Overlap with US, UK, EU hours I build on-prem GPU clusters and private AI apps that run entirely on the client's own hardware, so their data never leaves the building. About 10 years full-stack, the last few on GPU infrastructure. Currently running a live production cluster: 700-800 users sharing a small physical GPU pool. GPU-backed JupyterHub, single sign-on, per-user quot", "context": "freelancer building on-prem GPU clusters", "use_case": "building agents", "switched_from": "", "story": "Ask HN: Freelancer? Seeking freelancer? (September 2026)"}, {"id": 769805106, "item_id": 48112819, "url": "https://news.ycombinator.com/item?id=48112819", "by": "2ero_wf", "date": "2026-05-12", "stance": "neutral", "quote": "langchain makes it easy to switch LLMs", "excerpt": "I use Claude for initial validation. Then move to deepseek my stack is langchain, complexity sucks, but once you setup the skills, claude.md, AI is ok dealing with it, langchain makes it easy to switch LLMs. some minor issues here and there, e.g. different models have different messaging format. so far so good.", "context": "", "use_case": "LLM orchestration", "switched_from": "", "story": "Ask HN: Which LLM are you using to evaluate your ideas?"}, {"id": 765331634, "item_id": 47833227, "url": "https://news.ycombinator.com/item?id=47833227", "by": "NarimanN2", "date": "2026-04-20", "stance": "recommend", "quote": "LangChain to communicate with the model", "excerpt": "In this video, we build Andrej Karpathy\u2019s idea of an LLM wiki and use AI to create a personal knowledge base, completely with local tools. This can be a strong alternative to RAG, where the LLM often has to rediscover knowledge from scratch on every question. The idea here is different. Instead of retrieving from raw documents at query time, the LLM incrementally builds and maintains a persistent wiki. This wiki is d", "context": "", "use_case": "communicating with the LLM", "switched_from": "", "story": null}, {"id": 760733491, "item_id": 47545843, "url": "https://news.ycombinator.com/item?id=47545843", "by": "kochc", "date": "2026-03-27", "stance": "neutral", "quote": "every other tool \u2014 Open WebUI, LangChain, my own scripts \u2014 needed the same models re-entered separately", "excerpt": "I use OpenCode which already has GitHub Copilot, Ollama, Anthropic, Gemini etc. configured. But every other tool \u2014 Open WebUI, LangChain, my own scripts \u2014 needed the same models re-entered separately. This plugin starts a local HTTP server on port 4010 that translates between OpenAI, Anthropic, and Gemini API formats and whichever model OpenCode has configured. So you point any tool at http://127.0.0.1:4010/v1 and it", "context": "", "use_case": "LLM framework", "switched_from": "", "story": "OpenCode-LLM-proxy \u2013 use any OpenCode model via OpenAI/Anthropic/Gemini API"}, {"id": 755393073, "item_id": 47212067, "url": "https://news.ycombinator.com/item?id=47212067", "by": "borhensaidi", "date": "2026-03-01", "stance": "warn", "quote": "I got frustrated with LangChain being impossible to audit (500+ transitive dependencies, 100K+ LOC)", "excerpt": "I got frustrated with LangChain being impossible to audit (500+ transitive dependencies, 100K+ LOC), so I built picoagent \u2014 an AI agent framework with only numpy and websockets as external dependencies. The interesting technical decision: instead of prompting the LLM to pick a tool, I use Shannon Entropy (H(X) = -\u03a3p\u00b7log\u2082(p)) on the softmax score distribution over available tools. If entropy is above 1.5 bits, the age", "context": "", "use_case": "AI agent framework", "switched_from": "", "story": "AI agent with 2 deps that uses Shannon Entropy to decide when to act vs. ask"}, {"id": 753560788, "item_id": 47097549, "url": "https://news.ycombinator.com/item?id=47097549", "by": "Antaris", "date": "2026-02-20", "stance": "warn", "quote": "LangChain's buffer memory is retrieval-by-recency, not by query relevance.", "excerpt": "antaris-suite is six Python packages for the infrastructure layer of an agent turn. The core premise: memory, safety, and routing should run in-process with no external dependencies \u2014 no API keys, no Docker, no vector database. *The packages:* - antaris-memory: BM25 search over sharded JSONL, WAL, decay-weighted recall - antaris-guard: stateful policy engine (rate limits, PII, cost caps, escalation) - antaris-router:", "context": "", "use_case": "agent memory", "switched_from": "", "story": null}, {"id": 753289649, "item_id": 47080603, "url": "https://news.ycombinator.com/item?id=47080603", "by": "Dollarland", "date": "2026-02-19", "stance": "neutral", "quote": "with a LangChain/OpenAI backend", "excerpt": "From my experience building Dollarland (dollar-land.vercel.app) with a LangChain/OpenAI backend, it usually depends on how the tool-calling schema is defined in the manifest. In most current implementations, plugins act as an abstraction boundary. The main agent usually sees the 'Plugin' as a single tool (a 'super-tool') and delegates the specific MCP calls to a sub-agent or a controller within that plugin. If you ex", "context": "", "use_case": "agent backend", "switched_from": "", "story": "Ask HN: In Cursor/agents, do plugins hide MCP tools from the main agent?"}, {"id": 746530032, "item_id": 46658127, "url": "https://news.ycombinator.com/item?id=46658127", "by": "kankerlijer", "date": "2026-01-17", "stance": "warn", "quote": "my previous experience with LLM wrappers convinced me to stay away from them (Langchain, Llamaindex, Autogen, others)", "excerpt": "For those building applications with Langfuse and Clickhouse - do you like these products? I get the odd request to do an AI thing, and my previous experience with LLM wrappers convinced me to stay away from them (Langchain, Llamaindex, Autogen, others). In some cases they were poorly written, and in other ways the march of progress rendered their tooling irrelevant fairly quickly. Are these better?", "context": "", "use_case": "LLM application wrappers", "switched_from": "", "story": "ClickHouse Acquires Langfuse"}, {"id": 743334416, "item_id": 46458401, "url": "https://news.ycombinator.com/item?id=46458401", "by": "mountainriver", "date": "2026-01-01", "stance": "neutral", "quote": "langchain itself has a method for it", "excerpt": "There are products that do this, langchain itself has a method for it", "context": "", "use_case": "calling humans as tools", "switched_from": "", "story": "Ask HN: When do we expose \"Humans as Tools\" so LLM agents can call us on demand?"}, {"id": 742429698, "item_id": 46401856, "url": "https://news.ycombinator.com/item?id=46401856", "by": "d4rkp4ttern", "date": "2025-12-27", "stance": "compare", "quote": "after having a look at LangChain in Apr 2023", "excerpt": "This resonates with how I\u2019ve been thinking about open source. I see the steps as: 1. Personally identify a pain in your own work, and it most likely will be a pain for many others. 2. Build a solution to solve for it. 3. Organically talk about it in forums \u2014 for me this is Reddit, HN lately and to some extent Bluesky. When people ask why I build open source, I say it\u2019s about signaling. As other comments have mentione", "context": "", "use_case": "LLM applications", "switched_from": "", "story": "Publishing your work increases your luck"}, {"id": 742124899, "item_id": 46382806, "url": "https://news.ycombinator.com/item?id=46382806", "by": "RomanPushkin", "date": "2025-12-24", "stance": "recommend", "quote": "Python has won for me: fastapi, pytorch, langchain, streamlit, and so on and on.", "excerpt": "I'm happy to see v4.0, but 2025 was the year I switched from Ruby to Python after gradually drifting back to it more and more. The tipping point was when I had Claude Code automatically convert one of my Ruby projects to 100% Python - and after that, I just had no Ruby left. I spent over a decade enjoying Ruby and even wrote a book about it. At this point, though, Python has won for me: fastapi, pytorch, langchain, s", "context": "Ruby developer for over a decade, wrote a book on Ruby", "use_case": "", "switched_from": "", "story": "Ruby 4.0.0 Released"}, {"id": 740636705, "item_id": 46289794, "url": "https://news.ycombinator.com/item?id=46289794", "by": "podperson", "date": "2025-12-16", "stance": "warn", "quote": "I'd already played with lang-chain and found it quite fiddly even for simple things", "excerpt": "While I was waiting for the night train to Oulu in Helsinki on Friday night, I pondered two problems I have been thinking about for years on the one hand, and for months on the other. 1. How can I build a simple *service-as-a-service* endpoint that pulls data, maybe does a little work on it (e.g. whittling it down, converting XML to JSON, etc.) caches it, and returns it? This seems to require *eval* to be really usef", "context": "", "use_case": "agent framework", "switched_from": "", "story": "Agent-99 \u2013 safe (no, really) eval() in the cloud"}, {"id": 737900753, "item_id": 46118797, "url": "https://news.ycombinator.com/item?id=46118797", "by": "NitpickLawyer", "date": "2025-12-01", "stance": "warn", "quote": "monstrosities like langchain that worked maybe once in a blue moon", "excerpt": "It's 100% the models. Terminal bench is a good indication for this. There the agents get \"just a terminal tool\", and yet they still can solve lots and lots of tasks. Last year you needed lots of glue, and two years ago you needed monstrosities like langchain that worked maybe once in a blue moon, if you didn't look funny at it. Check out the exercise from the swe-agent people who released a mini agent that's \"termina", "context": "", "use_case": "agent framework", "switched_from": "", "story": "AI agents find $4.6M in blockchain smart contract exploits"}, {"id": 734414769, "item_id": 45900923, "url": "https://news.ycombinator.com/item?id=45900923", "by": "incomingpain", "date": "2025-11-12", "stance": "compare", "quote": "even if you run the python version which is superior it doesnt impact using it as a service", "excerpt": "I dont expect ruby on rails to be a hinderance. You're probably accessing the framework via api regardless. Langchain does have a ruby port if you want, but even if you run the python version which is superior it doesnt impact using it as a service. Personally I'd go more llamaindex route. There are newer options, opendevin, autogen, crewai, smolagents. I dont know much about them tbh.", "context": "", "use_case": "agentic framework", "switched_from": "", "story": "Ask HN: What agentic framework do you use?"}]}