2022 年 10 月,LangChain 成为大型语言模型 (LLM) 应用框架领域的知名参与者。Harrison Chase 在 Robust Intelligence 工作期间开发了 LangChain,其愿景是创建一个框架来简化聊天机器人、文档摘要和代码分析等各种应用程序与 LLM 的交互。
由于其开源特性以及 GitHub 上开发人员的积极贡献,该框架迅速在技术社区中获得了关注。到 2023 年初,LangChain 的受欢迎程度已显著提升,这得益于社交媒体上的讨论、蓬勃发展的 Discord 社区以及 YouTube 等平台上的教育内容。
2023 年 4 月,LangChain 转型为一家初创公司,从 Sequoia Capital 和 Benchmark 等风险投资公司获得了超过 2000 万美元的资金。这笔资金支持凸显了人们对该框架的高度期望,尤其是在 ChatGPT 被广泛采用后,人们对生成式 AI 技术产生了浓厚兴趣的时期。
2023 年下半年,LangChain 推出了 LangChain 表达语言 (LCEL) 和 LangServe 等新功能,旨在增强开发人员的功能并简化应用程序部署。到年底,LangChain 已成为开发 AI 应用程序的工具,并成为不断发展的 AI 领域的重要参与者。
LangChain 最新更新
2024 年 5 月,LangChain 发布了 0.2 版本,引入了重大更新以解决早期的批评并改善用户体验。此版本包括重大更改和弃用,旨在简化功能并增强集成能力。
主要更新包括:
- 引入 LangChain 表达语言 (LCEL),使定义动作链采用更具声明性的风格
- 更新以
langchain-cli
简化旧链的迁移 - 增强安全措施并改进错误处理
- 推出 LangServe,一款用于将 LCEL 代码托管为可用于生产的 API 的部署工具
这些更新旨在保持 LangChain 在语言模型框架竞争格局中的相关性,并为开发人员提供更强大的 AI 驱动应用程序开发工具。
可用性和复杂性问题
尽管 LangChain 广受欢迎,但它的可用性和复杂性也受到了批评。许多开发人员表示,该框架的结构可能令人困惑,过多的抽象层次使得人们很难理解其实现的核心机制。
一些常见的投诉包括:
- 过度依赖“辅助”函数,这些函数通常只是包装了标准的 Python 功能
- 高度抽象导致意外行为和不一致
- 由于框架的层次复杂,定制化面临挑战
- 由于文档不清晰和隐藏的复杂性,导致故障排除困难
这些问题导致一些开发人员质疑 LangChain 是否是他们的项目的最佳工具,尤其是与更直接的替代方案相比时。
生产表现
LangChain 在实际应用中的表现引起了一些开发人员的担忧。有报告称其运行缓慢且资源消耗大,这可能会影响依赖该框架的应用程序的效率。
一些具体问题包括:
- 任务执行时间比预期的要长
- ConversationRetrievalChain 倾向于重新表述用户输入,有时会打乱对话流程
- 在精确术语至关重要的专业行业中适应性有限
虽然 LangChain 可能对学习和原型设计有用,但这些性能问题导致一些开发人员质疑其是否适用于生产环境,特别是在具有特定术语或高风险场景的行业。
文档和社区支持
LangChain 的文档一直是许多用户的争论点。与一些竞争框架相比,LangChain 的文档质量被批评为低于标准,有报道称:
- 指导不完整且解释不明确
- 过时的信息和损坏的链接
- 误导性的代码示例
这些文档问题可能会阻碍新用户有效地利用该平台,并可能阻碍在可靠资源至关重要的生产环境中更广泛地采用该平台。
虽然 LangChain 已经建立了一个支持和知识共享的社区,但这个社区的稳健性在一定程度上受到文档问题的阻碍。开发人员通常需要依靠社区论坛来填补官方文档留下的空白,这可能导致所获得的支持不一致。
LangChain 的替代解决方案
在考虑 LangChain 的替代方案时,值得探索其他可能提供不同方法或优势的库。其中一个替代方案是Kenny Vaneetvelde(没错,就是我!)开发的 Atomic Agents。
Atomic Agents 旨在解决 LangChain 和其他类似框架存在的一些缺陷。以下是 Atomic Agents 的一些主要功能和理念:
- 模块化和可扩展性:该框架建立在创建小型、单一用途组件的原则之上,类似于 UI 开发中的原子设计概念。这种方法旨在使框架更加灵活且更易于理解。
- 基于 Instructor 和 Pydantic 构建:Atomic Agents 利用 Instructor 的强大功能与语言模型进行交互,并利用 Pydantic 进行数据验证和序列化,为构建 AI 应用程序提供了坚实的基础。
- 模型兼容性:由于依赖于 Instructor,Atomic Agents 不仅与 OpenAI 兼容,还与各种 AI 模型兼容,包括 Cohere、Anthropic、Gemini 以及 Instructor 支持的其他模型。
- 易于使用:该框架设计得非常用户友好,注重清晰的文档和示例,帮助开发人员快速入门。
- 灵活性:Atomic Agents 可以通过 Ollama 或 LMStudio 等平台与本地模型协同工作,为喜欢或需要本地部署的开发人员提供选项。
通过关注这些方面,Atomic Agents 旨在为使用 AI 模型的开发人员提供更简化、更直观的体验,同时避免与 LangChain 相关的一些复杂性和可用性问题。
值得注意的是,作为 Atomic Agents 的创建者,我专门设计它来解决我在其他框架中观察到的局限性。但是,与任何工具一样,它的适用性将取决于您的特定项目要求和偏好。
结论
虽然 LangChain 已经获得了普及,并推出了更新来解决一些问题,但仍然存在一些可能影响其有效性的限制,特别是在生产环境中:
- 自然语言处理任务中存在的问题,例如 ConversationRetrievalChain 倾向于重新措辞输入问题,这可能会扰乱对话流程
- 由于缺乏标准化的可互操作数据类型而导致集成方面的挑战
- 在需要对上下文和术语有细致理解的专业领域中效果有限
- 对文档质量和易用性的持续担忧
这些因素表明,虽然 LangChain 可以成为有用的教育资源和原型设计工具,但随着更加专业化和用户友好的替代方案的出现,它可能会面临保持相关性的挑战。
RA/SD 衍生者AI训练营。发布者:chris,转载请注明出处:https://www.shxcj.com/archives/5654